Prova:
<?php
$image1="bildA";
$image2="bildB";
for($i=1;$i<=2;$i++){
echo ${"image".$i};
echo "\n";
}
?>
/nicclas - www.nyhetsrubriker.com
18 svar · 349 visningar · startad av visslaren
jag har ett problem med en loop.
jag har en variabel som hämtar sitt värde från en formulärruta som man laddar upp filer igenom. det är totalt tio såna. namnet är image1, image2 osv.
nu är frågan hur jag får in en varibel vid namn i som är en räknare i loopen. jag provade $image$i men det fungerade icke. nån som har nån aning om vad jag menar? kanske inte är så bra förklarat :)
------------------
Naturligtvis var det många som upptäckte Amerika innan Columbus. Men de lyckades alltid tysta ner det hela. - Oscar Wilde
www.spelbasen.net
visslaren a.k.a. noijja
Prova:
<?php
$image1="bildA";
$image2="bildB";
for($i=1;$i<=2;$i++){
echo ${"image".$i};
echo "\n";
}
?>
/nicclas - www.nyhetsrubriker.com
Om du vill skapa variabler dynamiskt som heter $image1 osv
for ( $i = 0; $i <= 10; $i++ ) {
${"image" . (string)$i} = "Value";
Jag vet inte om jag har förstått rätt.
red: Glömmer alltid $ i variabelnamn, c/java influenserna sitter i.
------------------
essentitia preter non sans multiplicandum
[Redigerat av LarsG den 01 nov 2001]
hehe börjar väl bli en vana att ni två hjälper mig snart :)
jag testade båda era exempel men inget fungerade för mig :l
det skrivs inte ut någonting alls.
------------------
Naturligtvis var det många som upptäckte Amerika innan Columbus. Men de lyckades alltid tysta ner det hela. - Oscar Wilde
www.spelbasen.net
visslaren a.k.a. noijja
Jag förstår nog inte riktigt vad du vill åstadkomma. Kan du visa lite kod?
------------------
essentitia preter non sans multiplicandum
jag har som sagt ett par fält som heter image osv. de ska ladda upp filer på en server. jag kör en loop som loppas det det antal man väljer. alltså beroende på hur många filer som ska laddas upp.
number är den som antalet hämtas från.
när 1 är lika med 1 så ska image1 laddas upp och när i är 2 så ska image2 laddas upp.
på nåt sätt måste man ju kunna sätta dit $i där 1 eller 2 eller vad det nu kan vara för siffra i namnet imageX
detta är den kod jag kör för att testa om det fungerar.
$i=0;
while($i<$number) {
$i++;
echo ${"image" .$i} ;
echo "<br>";
}
------------------
Naturligtvis var det många som upptäckte Amerika innan Columbus. Men de lyckades alltid tysta ner det hela. - Oscar Wilde
www.spelbasen.net
visslaren a.k.a. noijja
Bortse från detta inlägg
------------------
essentitia preter non sans multiplicandum
red: trött
[Redigerat av LarsG den 01 nov 2001]
jag testade båda era exempel men inget fungerade för mig
Prova "koden" jag skrev tidigare. DEN FUNGERAR! (Lars har dock missat lite dollartecken i sin ;) Ja, i sitt första inlägg alltså)
[Redigerat av nicclas den 01 nov 2001]
nicclas: testade din kod med. fungerade inte för mig iaf. $number är en variabel som hämtas från en dropdownmeny föratt avgöra hur många filer som ska ladda upp.
Larsg: din senaste kod fungerade inte heller. allt som skrivs ut är 1, 2, 3 osv
------------------
Naturligtvis var det många som upptäckte Amerika innan Columbus. Men de lyckades alltid tysta ner det hela. - Oscar Wilde
www.spelbasen.net
visslaren a.k.a. noijja
nicclas: testade din kod med. fungerade inte för mig iaf
Que, vadå. Vad menar du med att den inte fungerar? Inget händer?
Att det inte fungerar som du tänkt dig är en annan sak, du är nämligen inte så bra på att förklara vad det är du vill att din kod skall göra ;)
hmm. den skriver inte ut något alls.
svårt att förklara.
jag håller på med en fileuploader. det är inget bestämt antal filer som ska kunnas laddas upp. man kan välja antalet i en dropdownmeny.
sen ska det köras en lopp så många gånger som man valt i dropdownmenyn.
först ska $image1 laddas upp sen $image2 osv. problemet är att jag måste få siffran i $image ändras varje gång loopen körs. det är därför som jag försöker få dit $i. alltså för varje gång som den tuggare igenom loopen tills $i=$number så ska image1 stiga med ett hela tiden.
------------------
Naturligtvis var det många som upptäckte Amerika innan Columbus. Men de lyckades alltid tysta ner det hela. - Oscar Wilde
www.spelbasen.net
visslaren a.k.a. noijja
Fattar fortfarande inte :q
Har du problem när du skall skapa formuläret? Är "drop down" menyn på samma sida som det okända antalet <input>-rutor? Visa koden!
[Redigerat av nicclas den 02 nov 2001]
det är inte ett okänt antal input fält. men man kan välja hur många det ska vara.
problemet ligger på sidan som ska ladda upp sakerna. där ska jag köra en loop som kör igenom de fält som är ifyllda.
jag har för tillfället inte mer kod än detta:
$i=0;
while($i<$number) {
$i++;
echo ${"image" .$i} ; <---koden jag fick av dig, nicclas. fungerar inte.
echo "<br>";
}
jag vill att detta:
${"image" .$i}
ska bli tex
$image1 eller vad nu värdet av $i är.
$i är siffran i namnet. $image1 är ett variabelnamn. loopen ska första ladda upp $image1, nästa gång ska den ladda upp $image2. jag måste ju på nåt sätt få siffran i $image att ändras för varje gång loopen går igenom koden.
formulärsidan är inget speciellt med. den har 10 såna här:
<input type="file" name="image" class="file">
plus en <select>
------------------
Naturligtvis var det många som upptäckte Amerika innan Columbus. Men de lyckades alltid tysta ner det hela. - Oscar Wilde
www.spelbasen.net
visslaren a.k.a. noijja
[Redigerat av visslaren den 02 nov 2001]
Tyvärr, orkar inte reda ut detta. Hoppas på någon annan :)
Tror att du skulle prova med en array istället. Så får du variabler typ $image[$i]
------------------
Gratis hemsideadress och email => http://www.has.it
Är det ett vanligt uploadscript som skall loopa igenom filerna man angivit i ett formulär du försöker få till?
Om du vill ha det kan du kontakta mig på mathias@niklasson.net
------------------
http://www.niklasson.net/
Jag hade en liknadende fråga här: http://cgi.webforum.nu/wf/Forum12/HTML/001767.html
Nicclas kod funkade perfekt för mig. :q
------------------
/Tor
www.tor.nu
niklasson: du träffar rätt där :)
web-tor: fick det att fungera nu. men det borde väl fungera så här med: ${"image".$i."_name"} med? måste ju göra likadant när jag fångar namnet på filen.
------------------
Naturligtvis var det många som upptäckte Amerika innan Columbus. Men de lyckades alltid tysta ner det hela. - Oscar Wilde
www.spelbasen.net
visslaren a.k.a. noijja
tack för hjälpen fick allt att fungera nu :)
------------------
Naturligtvis var det många som upptäckte Amerika innan Columbus. Men de lyckades alltid tysta ner det hela. - Oscar Wilde
www.spelbasen.net
visslaren a.k.a. noijja