Aller au contenu
WebFrance

Rejoignez WebFrance (Cadeau : Le Guide 2018 pour rentabiliser un site)

Rejoindre WebFrance

Connexion  
Julie

Erreurs dans les csv

Messages recommandés

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

Modifié par Julie

Partager ce message


Lien à poster
Partager sur d’autres sites
Partagez cette page :

>> Nouveau : Découvrez la marketplace d'Achat / Vente de Sites !

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

Partager ce message


Lien à poster
Partager sur d’autres sites
Partagez cette page :

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

Si par exemple tu utilises cette méthode :

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

Partager ce message


Lien à poster
Partager sur d’autres sites
Partagez cette page :

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

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...
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 ?

Partager ce message


Lien à poster
Partager sur d’autres sites
Partagez cette page :

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 :

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);

}

}

Modifié par zig

Partager ce message


Lien à poster
Partager sur d’autres sites
Partagez cette page :

Ajouter un commentaire :

-

Créer un compte

en 3 secondes

INSCRIPTION

Se connecter

ici

CONNEXION

Connexion  

Partagez cette page :



© WebFrance 2017 - Contact - Annonceurs - Conditions générales

×

Nouveau : Marketplace WebFrance

2.png

Vente de sites internet, domaines, applications...