webForumDet fria alternativet

Array

PHPur PHP

4 svar · 196 visningar · startad av mhedda

Medlem sedan feb. 2000385 inlägg
Frågan#1

Hej!
Jag har ett litet problem.
Jag hämtar info från ett formulär med fält som skall in i en databas. Fälten skall jag loopa igenom ett fält heter vara[]
loopen ser ut så här förkortad.

while($i<=2)
{
$vara=$vara[$i]  
INSERT INTO...
++$i
}

Error meddelandet blir Uninitilized String Offset 1
Uninitialized String Offset 2
Men nollan alltså första fältet visas.
ByBy mhedda

Medlem sedan maj 2002647 inlägg
#2

Ska det inte vara
$i++?

Medlem sedan juli 2000449 inlägg
#3

Du kan använda funktionen foreach() när du skall lista värden från arrayer. Den kanske inte passar dig i detta fallet.

http://se.php.net/manual/en/control-structures.foreach.php

Medlem sedan aug. 20002 975 inlägg
#4

När du kör den här kodraden första varvet:

$vara=$vara[$i] ;

så ersätter du arrayen $vara med den sträng som $vara[0] innehåller. Nästa gång du kommer dit i slingan så finns det ingen array $vara, därav felmeddelandet.

Prova istället med att spara i en annan variabel:

$tempvara=$vara[$i];
Medlem sedan feb. 2000385 inlägg
#5

Man Tackar

Tack för svaren det funkar nu, med Mattes lösning

$tempvara=$vara[$i];

Attans bra
ByBy mhedda

128 ms totalt · 3 externa anrop · v20260731065814-full.4bcf49fe
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
125 ms — hämta tråd, inlägg och bilagor (db)