#1 27-11-2005 19:40:00

christophe
Survivors
Date d'inscription: 30-07-2005
Messages: 1553

RE - Parser un fichier txt

Bonsoir,
J'ai récupéré le fichier .txt de Mixad pour la boutique sexy :
http://www.sous-vetement.net/lingerie.txt

Je m'inspire de ce que nous avait enseigné Sid pour Bebloom, donc je créais ma Table 'lingerie'

Code:

CREATE TABLE lingerie (
   id varchar(255) NOT NULL,
   ref varchar(255) NOT NULL,
   prodname varchar(255) NOT NULL,
   price varchar(255) NOT NULL,
   options varchar(255) NOT NULL,
  [b]description[/b] varchar(255) NOT NULL,
   proplist varchar(255) NOT NULL,
   shop varchar(255) NOT NULL,
   cat varchar(255) NOT NULL,
subcat varchar(255) NOT NULL,
img_min varchar(255) NOT NULL,
img_big varchar(255) NOT NULL,
url varchar(255) NOT NULL,
   PRIMARY KEY (id),
   UNIQUE id (ref)
);

Premièrement, je ne peux pas utiliser desc car visiblement c'est une commande SQL.
Donc je l'ai remplacé par Description même si ça ne remplira pas ma table.

Ensuite, j'essaye de remplir ma table avec ce fichier :

Code:

<?php
$row = 1;
$handle = fopen("http://www.sous-vetement.net/lingerie.txt", "r");
while (($data = fgetcsv($handle, 5000, ";")) !== FALSE) {
    $num = count($data);
    //echo "<p> $num fields in line $row: <br /></p>\n";
    $row++;
     //for ($c=0; $c < $num; $c++) {
        include ("sql.php");
        
        $query = "INSERT INTO `lingerie` VALUES ('" . addslashes($data[0]) ."','". addslashes($data[1]) ."','". addslashes($data[2]) ."','". addslashes($data[3]) ."','". addslashes($data[4]) ."','". addslashes($data[5]) ."','". addslashes($data[6]) ."','". addslashes($data[7]) ."');";
    //if($p = @mysql_query($query,$c)){
    //print_r($data);
    echo $query;
    mysql_query($query);
    }
    
    //}
        fclose($handle);
//}
    // fermeture bdd
    @mysql_close($c);

?>

Mais voilà, ça ne fonctionne pas, ma table reste desespérement vide.
J'ai également essayé en mettant 13 addslashes mais rien n'y fait alors que pour bebloom avec le même script ça avait fonctionné dessuite ?

Merci de votre aide.
chris !


Le L'annuaire gratuit est dans son coffre fort pas loin de Twikeo ??? avec son chat

Hors ligne

 

#2 27-11-2005 19:58:29

Americas
Survivors
Lieu: Argentine
Date d'inscription: 04-07-2005
Messages: 4603
Site web

Re: RE - Parser un fichier txt

Avec phpmyadmin c'est très simple :

Tu vas dans base tu cherches ta table lingerie et sur cette table tu vas tout en bas... tu devrais trouver un lien "Insérer des données provenant d'un fichier texte dans la table".

Tu cliques dessus et tu indiques où se trouve ton fichier txt sur ton ordi.

Puis dans "Champs terminés par" tu mets |
Tu appuies sur le bouton executer et si ta table est correcte tous les champs seront remplis. wink

Hors ligne

 

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/tgarchive/forum/include/parser.php on line 414

#3 27-11-2005 20:02:21

Siddartha
Administrateur
Lieu: Paris et #66valley ☼
Date d'inscription: 20-06-2005
Messages: 2988
Site web

Re: RE - Parser un fichier txt

Plop smile

Dans cette ligne :

Code:

$query = "INSERT INTO `lingerie` VALUES ('" . addslashes($data[0]) ."','". addslashes($data[1]) ."','". addslashes($data[2]) ."','". addslashes($data[3]) ."','". addslashes($data[4]) ."','". addslashes($data[5]) ."','". addslashes($data[6]) ."','". addslashes($data[7]) ."');";

Tu ne récupéres que les 8 premières infos de chaque colonne, hors d'aprés ce que je vois, tu as 13 champs en tout, donc il faut que tu personnalises mon script en rajoutant les données des colonnes supplémentaires de cet affilieur, soit :

Code:

$query = "INSERT INTO `lingerie` VALUES ('" . addslashes($data[0]) ."','". addslashes($data[1]) ."','". addslashes($data[2]) ."','". addslashes($data[3]) ."','". addslashes($data[4]) ."','". addslashes($data[5]) ."','". addslashes($data[6]) ."','". addslashes($data[7]) ."','". addslashes($data[8]) ."','". addslashes($data[9]) ."','". addslashes($data[10]) ."','". addslashes($data[11]) ."','". addslashes($data[12]) ."');";

On finit bien par le data[12] puisqu'on compte 1 à partir de 0 (haha super clair ca lol)

Enjoy wink

Hors ligne

 

#4 27-11-2005 20:07:35

christophe
Survivors
Date d'inscription: 30-07-2005
Messages: 1553

Re: RE - Parser un fichier txt

Merci beaucoup de cette Astuce, c'est trés pratique.
Me reste plus qu'à bidouiller le probleme avec DESC, je pense que je vais faire un STR_replace


Le L'annuaire gratuit est dans son coffre fort pas loin de Twikeo ??? avec son chat

Hors ligne

 

#5 27-11-2005 20:13:22

Americas
Survivors
Lieu: Argentine
Date d'inscription: 04-07-2005
Messages: 4603
Site web

Re: RE - Parser un fichier txt

Que ton champs s'appelle description, presentation ou bidulemachinchouette... c'est pas un problème.
Tu peux appeler les champs comme tu veux dans la mesure où tu indiques correctement dans ton script le nom que tu as donné au champs. wink

Hors ligne

 

Pied de page des forums

Propulsé par PunBB
© Copyright 2002–2005 R. Andersson