Cause: The application did not define output variables forquote:Op dinsdag 8 november 2011 11:00 schreef Cue_ het volgende:
Oke nieuw vraagje
Mijn code:
[ code verwijderd ]
Hierna komt nog een tweede lus binnen de while loop die ook weer zo'n zelfde qry met while loop uitvoert.
Nu roep ik via Putty een .sh script aan die deze qry moet uitvoeren. Maar dan krijg ik deze foutmelding:
[..]
En verwijst dan naar deze regel:
[ code verwijderd ]
Maar snap niet echt wat ik dan moet veranderen. Iemand ideeen?
1 2 3 4 5 6 7 8 | <?php for ($i=1;$i==true;$i++){ $naam=$_POST["$i"]; echo " $naam "; } ?> |
Die for loop gaat door zolang $i true is, je zal hem dus ergens op false moeten zetten als je wil dat hij stopt. Maar wat een rare constructie trouwensquote:Op woensdag 9 november 2011 12:42 schreef vlam12 het volgende:
Ik zit weer vast
[ code verwijderd ]
Ik wil dat hij stopt met echoën als $naam=$_POST["$i"] een foutcode geeft, maar ik heb geen idee hoe ik dat moet oplossen.
1 2 3 4 5 6 7 8 | <?php $i = 0; while(! empty($_POST[$i])) { $naam=$_POST[$i]; echo " $naam "; $i++; } ?> |
1 2 3 | <?php echo " $naam "; ?> |
Ach, als je spaties voor en naam de variabele wil hebben kan je ookquote:Op woensdag 9 november 2011 13:04 schreef Sitethief het volgende:
[ code verwijderd ]
Ik zou dat nooit zo doen, altijd zonder "". Wat voor een nut heeft het om er " om heen te zetten? Als je simpelweg een variabele wil laten zien kan dat prima zonder "
1 2 3 | <?php echo (" ".$naam." "); ?> |
quote:Echo with commas, not periods. If you use periods, PHP has to concatenate the string before it outputs. If you use commas, it just outputs them in order with no extra processing.
1 2 3 4 5 6 7 | <?php <form method="POST" action="ontvangen3.php"> <input type="text" name="velden" size="20" maxlength="30" > <br> <input type="submit" name=keuzen value="Verzenden" action="ontvangen3.php"> </form> ?> |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | <?php $waarde=$_POST['velden']; echo '<form method="POST" action="tabel.php">'; for ($iets=1; $iets<=$waarde; $iets++){ $tabel=' <input type="text" name="'.$iets.'" size="20" maxlength="30"> <br> '; echo $tabel; } echo' <p> <input type="hidden" name="'.$iets.'" value="'.$iets.'" action="tabel.php"> <input type="submit" name="namen" value="verzenden" action="tabel.php"> </form> '; ?> |
Hoeft niet persee name="voornaam_$index" zou voldoende kunnen zijn om ze later weer uit te lezen.quote:
Een foreach zou toch hetzelfde doen zonder dat je $i hoeft te gebruiken?quote:Op woensdag 9 november 2011 12:47 schreef GlowMouse het volgende:
je zult wel zoiets zoeken
[ code verwijderd ]
Waarom zou je in hemelsnaam spaties voor en achter een string willen hardcoden?quote:Op woensdag 9 november 2011 13:05 schreef GI het volgende:
[..]
Ach, als je spaties voor en naam de variabele wil hebben kan je ook
[ code verwijderd ]
doen maar dan vind ik dit beter leesbaar.
tot een user met vijf invulvakjes alleen de eerste drie invult wel jaquote:Op woensdag 9 november 2011 13:21 schreef KomtTijd... het volgende:
[..]
Een foreach zou toch hetzelfde doen zonder dat je $i hoeft te gebruiken?
Dit ja!quote:
1 2 3 4 5 | <?php for($iets = 1; $iets <= $waarde; $i++) { echo "<input type='text' name='names[]' size='20' maxlength='30'>"; } ?> |
Maar dan weet je nog niet hoeveel het er zijn. Moet je gaan exploden op "voornaam_". Dan is de input name met [] veel makkelijker, omdat je dan gewoon een array terugkrijgtquote:Op woensdag 9 november 2011 13:21 schreef Pakspul het volgende:
[..]
Hoeft niet persee name="voornaam_$index" zou voldoende kunnen zijn om ze later weer uit te lezen.
Ohja idd dat zou je dan in de loop nog moeten checken...quote:Op woensdag 9 november 2011 13:22 schreef GlowMouse het volgende:
[..]
tot een user met vijf invulvakjes alleen de eerste drie invult wel ja
het echte probleem is dat je met foreach alle postvelden krijgt; als je names[] gebruikt dan zou ik juist wel foreach gebruikenquote:Op woensdag 9 november 2011 13:24 schreef KomtTijd... het volgende:
[..]
Ohja idd dat zou je dan in de loop nog moeten checken...
Als je tien rijen bouwt dan krijg je met veldnaam[] er tien terug en voornaam_$index ook tien. En je hoeft niet te exploden want je kunt gewoon checken met $currentfield = "voornaam_" . $i; empty($currentfield); ....quote:Op woensdag 9 november 2011 13:24 schreef remi1986 het volgende:
[..]
Maar dan weet je nog niet hoeveel het er zijn. Moet je gaan exploden op "voornaam_". Dan is de input name met [] veel makkelijker, omdat je dan gewoon een array terugkrijgt
Arrays & loopsquote:Op woensdag 9 november 2011 13:33 schreef Pakspul het volgende:
[..]
Als je tien rijen bouwt dan krijg je met veldnaam[] er tien terug en voornaam_$index ook tien. En je hoeft niet te exploden want je kunt gewoon checken met $currentfield = "voornaam_" . $i; empty($currentfield); ....
hear, hearquote:Op woensdag 9 november 2011 13:36 schreef Scorpie het volgende:
[..]
Arrays & loops
Concatenatie en empty() checks
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |