Erreur Undefined offset: 2 [PHP]
Résolu/Fermé
A voir également:
- Undefined offset: 2
- 2 ecran pc - Guide
- Word numéro de page 1/2 - Guide
- France 2 uhd - Accueil - TV & Vidéo
- Whatsapp avec 2 cartes sim - Guide
- Jdownloader 2 - Télécharger - Téléchargement & Transfert
4 réponses
jordane45
Messages postés
38347
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
24 décembre 2024
4 719
21 janv. 2022 à 11:18
21 janv. 2022 à 11:18
Bonjour
Tu as certainement des retours à la ligne dans ton csv (dans les commentaires)
Ce qui fausse la lecture du csv dans ta boucle.
Tu as certainement des retours à la ligne dans ton csv (dans les commentaires)
Ce qui fausse la lecture du csv dans ta boucle.
Si c'était le cas les retours à la ligne fausserait la lecture aussi quand je fais un print_r de ma variable $getData ? Parce que en l'occurrence quand je l'affiche tout est bon...
J'ai vu qu'on pouvait échapper certains caractères dans le fgetcsv,
Tu penses que c'est possible d'échapper les retours à la ligne pour faire un test ?
J'ai vu qu'on pouvait échapper certains caractères dans le fgetcsv,
Tu penses que c'est possible d'échapper les retours à la ligne pour faire un test ?
jordane45
Messages postés
38347
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
24 décembre 2024
4 719
21 janv. 2022 à 13:14
21 janv. 2022 à 13:14
Il existe différents types de caractères de retours à la ligne... \n \r\n ... qui sont des caractères "invisibles" et qui ne sont pas interprétés par le html ... et donc par le print_r
J'ai rajouté :
9 requêtes sur 96 sont bien passée, mais les autres refusent toujours....
$order = array("\r\n", "\n", "\r");
$replace = '<br />';
$newstr = str_replace($order, $replace, $getData[1]);
9 requêtes sur 96 sont bien passée, mais les autres refusent toujours....
jordane45
Messages postés
38347
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
24 décembre 2024
4 719
21 janv. 2022 à 15:35
21 janv. 2022 à 15:35
Ce n'est pas au moment de lire les $getData qu'il faut le faire ... mais AVANT de lire le csv.
En gros, il faut ouvrir le csv (depuis ton script php bien sûr)
1- remplacer les \r\n par un autre caractère ( par exemple µ )
2- remplacer ensuite les \n par un espace
3- Remplacer le µ par des \r\n
Ainsi tu conserves les retours à la ligne de fin de ligne .. mais tu supprimes ceux qui se trouveraient dans les champs de ton csv..
Et une fois que ça sera fait, tu pourras alors utiliser ton script actuel pour parser le csv correctement.
.
En gros, il faut ouvrir le csv (depuis ton script php bien sûr)
1- remplacer les \r\n par un autre caractère ( par exemple µ )
2- remplacer ensuite les \n par un espace
3- Remplacer le µ par des \r\n
Ainsi tu conserves les retours à la ligne de fin de ligne .. mais tu supprimes ceux qui se trouveraient dans les champs de ton csv..
Et une fois que ça sera fait, tu pourras alors utiliser ton script actuel pour parser le csv correctement.
.