#1 11-04-2008 11:40:43

Julie
Membre discret
Inscrit le : 11-01-2008
Messages : 18
 Erreurs dans les csv


Bonjour,

Pour info, j'ai remarqué deux erreurs dans les catalogues csv :
1) l'article 12602 n'existe pas dans la boutique, mais est présent dans le csv "lingerie sexy"
2) il manque les séparation de champs "|" pour les articles 11212, 11211, 11210 et 11209 dans le csv "Bien-être & fun".

Pouvez-vous régler ces petits problèmes afin que nous n'ayons plus d'erreur d'affichage dans nos boutiques perso ?

Merci par avance,

Julie



Hors ligne

 

#2 11-04-2008 14:46:45

zig
Membre +
Inscrit le : 26-08-2007
Messages : 577
  Re: Erreurs dans les csv


Salut,

Quand tu n'as pas le bon nombre de champ dans une ligne csv

Comptes le nombre de champs de la ligne et si il ne correspond pas, n'ajoute pas la ligne dans ta base de données

ça évite d'avoir des infos erronées sur le site



Faire une Rencontre Msn avec webcam et photo
Annuaire des meilleurs sites utilisant le système de micro-paiement  sur annuaire allopass
Achat de rosebuds en toute simplicité


Hors ligne

 

#3 11-04-2008 16:06:28

Julie
Membre discret
Inscrit le : 11-01-2008
Messages : 18
  Re: Erreurs dans les csv


pas bête big_smile affiliation

mais on fait comment pour compter le nombre de champs d'une ligne ?

(ça serait quand même bien d'avoir des csv justes whistling affiliation)



Hors ligne

 

#4 11-04-2008 16:18:39

zig
Membre +
Inscrit le : 26-08-2007
Messages : 577
  Re: Erreurs dans les csv


Tout dépend de quelle manière tu lis le fichier

Si par exemple tu utilises cette méthode :

Code:
while($data = fgetcsv($url, 10000, "|"))
{

   $nombre=count($data);
}

si $nombre ne te retourne pas le bon nombre de champs tu n'ajoutes pas la ligne



Faire une Rencontre Msn avec webcam et photo
Annuaire des meilleurs sites utilisant le système de micro-paiement  sur annuaire allopass
Achat de rosebuds en toute simplicité


Hors ligne

 

#5 11-04-2008 17:04:05

Julie
Membre discret
Inscrit le : 11-01-2008
Messages : 18
  Re: Erreurs dans les csv


j'utilise la méthode qui avait été exposée sur le forum il y a quelques temps... à savoir

Code:
while (($data = fgetcsv($handle, 5000, "|")) !== FALSE) {
$num = count($data);
$row++;
$query = "INSERT INTO import_cadeau 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]) ."','". addslashes($data[13]) ."','". addslashes($data[14]) ."','". addslashes($data[15]) ."','". addslashes($data[16]) ."','". addslashes($data[17]) ."','". addslashes($data[18]) ."','". addslashes($data[19]) ."','". addslashes($data[20]) ."','". addslashes($data[21]) ."');";
mysql_query($query);
}

il faudrait que je fasse...

Code:
while (($data = fgetcsv($handle, 5000, "|")) !== FALSE) {
$num = count($data);
$row++;
if ($num==21){
$query = "INSERT INTO import_cadeau 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]) ."','". addslashes($data[13]) ."','". addslashes($data[14]) ."','". addslashes($data[15]) ."','". addslashes($data[16]) ."','". addslashes($data[17]) ."','". addslashes($data[18]) ."','". addslashes($data[19]) ."','". addslashes($data[20]) ."','". addslashes($data[21]) ."');";
mysql_query($query);
}
}

c'est juste ?



Hors ligne

 

#6 11-04-2008 17:07:21

zig
Membre +
Inscrit le : 26-08-2007
Messages : 577
  Re: Erreurs dans les csv


La méthode que tu indiques est la bonne sauf qu'il me semble qu'il y a 22 champs par ligne et pas 21

En fait, ça va de $data[0] à $data[21] donc il y a 22 champs (avec le 0)

donc il faudrait mettre :

Code:
while (($data = fgetcsv($handle, 5000, "|")) !== FALSE) {
$num = count($data);
$row++;
if ($num==22){
$query = "INSERT INTO import_cadeau 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]) ."','". addslashes($data[13]) ."','". addslashes($data[14]) ."','". addslashes($data[15]) ."','". addslashes($data[16]) ."','". addslashes($data[17]) ."','". addslashes($data[18]) ."','". addslashes($data[19]) ."','". addslashes($data[20]) ."','". addslashes($data[21]) ."');";
mysql_query($query);
}
}


Faire une Rencontre Msn avec webcam et photo
Annuaire des meilleurs sites utilisant le système de micro-paiement  sur annuaire allopass
Achat de rosebuds en toute simplicité


Hors ligne

 

#7 11-04-2008 17:10:26

Julie
Membre discret
Inscrit le : 11-01-2008
Messages : 18
  Re: Erreurs dans les csv


ok merci beaucoup zig !!! big_smile affiliation



Hors ligne

 

#8 11-04-2008 18:46:33

Césario
Membre
Inscrit le : 10-08-2007
Messages : 42
  Re: Erreurs dans les csv


Salut Julie,

Je t'ai envoyé un petit MP.



Hors ligne

 

Pied de page des forums

Propulsé par Anderson
Modifications & Add ons par Charlie
Magic rewrite by Rottman


Menu rapide

  Marque blanche
  Dreamstore
  Easyflirt

  Plateforme
  Publicidées
  Effiliation
  Affilinet
  CJ
  Zanox
  Tradedoubler
  Netaffiliation


Inscrivez vous au Forum et rejoignez le Forum privé réservé aux membres !