Pb Undefined index avec ouverture de fichier

Signaler
Messages postés
85
Date d'inscription
jeudi 10 juin 2004
Statut
Membre
Dernière intervention
4 juillet 2006
-
Messages postés
10839
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
-
bonjour a tous,



j'ai une erreur lors de la compilation de mon code, j'ouvre un fichier ( un .csv) et je souhaite recueillir les informations de ce fichiers. ces dernières se trouve a la 7 colonne de mon fichier. il me dit " undefined index 6" alors que je vous jure qu'il exoste bien :blink:


$num_colonne vaut 6 dans ce cas.
la casse est la virgule


$fp = fopen(escstr($chemin_courant), "r");
while (!feof($fp))
{

$ligne = fgets($fp,4096);
$liste = explode(",",$ligne);

natcasesort($liste);


if ( $_SESSION['produit'] == 'pain' )
{
$subs = ereg_replace('"','',Addslashes($liste[$num_colonne]));
...
}

}



exemple d'une ligne de mon .CSV


1,7.28739976882935,"BB ",0.101330868899822,7281.86572265625,0.632771166293083,"x1"



merci d'avance :)

5 réponses

Messages postés
10839
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
23
hello,



bah s'il te le dit, c'est bien qu'il n'existe pas au moment ou tu y fais appel.



Fais un print_r de $liste.
Messages postés
85
Date d'inscription
jeudi 10 juin 2004
Statut
Membre
Dernière intervention
4 juillet 2006

ce qui menerve ce que il est defini partout je peu meme faire un print_r la ligne davant et ce sera bon ....
revoila mon code modifié :

if ( $_SESSION['produit'] == 'pain' )
{

je peux faire un print_r ici il me sort la liste entiere avec celui que je recherche... (non je ne me suis pas trompé d'indice)

echo(" on est dans pain");
for ($i=0; $i<20 ;$i++)
{
$surfaces[$i] = round($liste[$num_colonne],2);
// echo($surfaces[$i]);
}

}

aidez mo sil vous plait je devient fou
Messages postés
10839
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
23
Copie ici ce que t'affiche ce code :
$ligne = fgets($fp,4096);
$liste = explode(",",$ligne);

natcasesort($liste);

print_r ($liste);
Messages postés
85
Date d'inscription
jeudi 10 juin 2004
Statut
Membre
Dernière intervention
4 juillet 2006

Array ( [2] => "BB " [6] => "x1" [3] => 0.101330868899822 [5] => 0.632771166293083 [0] => 1 [1] => 7.28739976882935 [4] => 7281.86572265625 ) Array ( [2] => "BB " [6] => "x3" [3] => 0.100237548351288 [5] => 0.593926027213051 [0] => 2 [1] => 8.13801097869873 [4] => 6834.83984375 ) Array ( [2] => "VB " [6] => "x6" [3] => 0.108388796448708 [5] => 2.05071737148337 [0] => 3 [1] => 11.8106832504272 [4] => 23599.4453125 ) Array ( [2] => "BV " [6] => "x7" [3] => 0.104522548615932 [0] => 4 [1] => 12.3348503112793 [5] => 17.6057138152299 [4] => 202604.75 ) Array ( [2] => "VB " [6] => "x8" [3] => 0.0998149439692497 [5] => 1.74091908268865 [0] => 5 [1] => 12.8429231643677 [4] => 20034.318359375 ) Array ( [2] => "BB " [6] => "x9" [3] => 0.0895283445715904 [0] => 6 [1] => 14.0696868896484 [5] => 21.1304114739465 [4] => 243166.609375 ) Array ( [2] => "VV " [6] => "x11" [3] => 0.0734755620360374 [5] => 1.28678903580128 [0] => 7 [1] => 15.8932504653931 [4] => 14808.236328125 ) Array ( [2] => "BB " [6] => "x12" [3] => 0.0681217983365059 [5] => 3.41704706213711 [0] => 8 [1] => 17.4205074310303 [4] => 39323.02734375 ) Array ( [2] => "BB " [6] => "x13" [3] => 0.0645827054977417 [5] => 0.368983272547179 [0] => 9 [1] => 18.0284194946289 [4] => 4246.2216796875 ) Array ( [2] => "BV " [6] => "x14" [3] => 0.0606342926621437 [5] => 1.68960343999632 [0] => 10 [1] => 18.4832344055176 [4] => 19443.783203125 ) Array ( [6] => "?" [2] => "VB " [3] => 0.0614156574010849 [5] => 0.650696441223842 [0] => 11 [1] => 18.6195907592773 [4] => 7488.14794921875 ) Array ( [2] => "BB " [6] => "x15" [3] => 0.0597154535353184 [5] => 1.56775335563034 [0] => 12 [1] => 19.0127925872803 [4] => 18041.544921875 ) Array ( [2] => "BV " [6] => "x16" [3] => 0.050927747040987 [5] => 3.70758734653745 [0] => 13 [1] => 20.2814235687256 [4] => 42666.53515625 ) Array ( [6] => "?" [2] => "BV " [3] => 0.0501119345426559 [5] => 0.468378414149935 [0] => 14 [1] => 21.5692081451416 [4] => 5390.05078125 ) Array ( [6] => "?" [2] => "VV " [3] => 0.0509957559406757 [5] => 0.392817830035308 [0] => 15 [1] => 21.6375827789307 [4] => 4520.50732421875 ) Array ( [2] => "BB " [6] => "x17" [3] => 0.0519967488944531 [0] => 16 [1] => 23.363317489624 [5] => 37.6679525951634 [4] => 433478.9375 ) Array ( [6] => "?" [2] => "BB " [3] => 0.0399577356874943 [5] => 1.09749537287871 [0] => 17 [1] => 27.2614269256592 [4] => 12629.8642578125 ) Array ( [6] => "?" [2] => "BB " [3] => 0.0475900657474995 [5] => 3.56631344094349 [0] => 18 [1] => 27.5139656066895 [4] => 41040.76953125 ) Array ( [6] => "?" [2] => "BB " [3] => 0.0465652644634247 [5] => 0.364128123412096 [0] => 19 [1] => 28.2433223724365 [4] => 4190.34912109375 ) Array ( [0] => )

voila:) dsl pour le spam ...
je vois pas pkoi tu fait un natcaseort
Messages postés
10839
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
23
C toi qui le fait dans ton code, pas moi lol.
Je decortique.