Verschillende values in een geloopt tekstveld
$value1 = hier mijn tekstje voor in een value1;
$value2 = ook hier een tekst2;
$value3 = nog een tekst;
...etc.
$nr = 0;
fkes wachten
while ($ab < $colls)
{
$nr++;
$test = "$testvar$nr";
echo "<td><input name='text$nr' type='text' value='????' size='10'></td>";
}
Nobody ??
$value. = "nog iets";
$value. = "enz";
echo '<td><input name="text$nr" type="text" value="'.$value'"';
ik krijg een:
Parse error: parse error, unexpected '=' in /home/pappers/www/loop/admin.php on line 35
line 35 staat:
$value. = "iets";
In je while lus wordt $ab niet opgehoogd, en $colls veranderd ook niets aan, dus dat werkt niet.. het is beter te doen op zo'n manier:
Code (php)
Dan moet je wel even deze regel: $colls=4; verwijderen, want anders werkt die niet zoals het moet.
Hier heb ik de hele dag op zitten blokken! Naja, eens komt er een dag...
Als je zin hebt, waar kan ik vinden/wat doet:
1) [] in $variabele[]=
2) wat zijn dat voor punten in bv ..name="text'.$i.'" typ.. of ...'.$variabele[$varnr].'...
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?
$colls = file_get_contents("quantitycolls.txt");
$plus = $colls + 1;
$min = $colls - 1;
echo "
<form action='fwritecolls.php' method='post'>
<input name='submit' type='submit' value='+'><br>
<input name='colls' type='hidden' value='$plus' size='10'>
</form>
<form action='fwritecolls.php' method='post'>
<input name='submit' type='submit' value='-'><br>
<input name='colls' type='hidden' value='$min' size='10'>
</form>";
$colls = file_get_contents("quantitycolls.txt");
$plus = $colls + 1;
$min = $colls - 1;
echo "
<form action='fwritecolls.php' method='post'>
<input name='submit' type='submit' value='+'><br>
<input name='colls' type='hidden' value='$plus' size='10'>
</form>
<form action='fwritecolls.php' method='post'>
<input name='submit' type='submit' value='-'><br>
<input name='colls' type='hidden' value='$min' size='10'>
</form>";
$variabele[] maakt een array aan, de werking is als volgt:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?
//de [] tekens in het script:
$var[]="var1";// op te halen door echo $var[0]
$var[]="var2";// op te halen door echo $var[1]
$var[]="var3";// op te halen door echo $var[2]
/*Hierbij valt het op dat een array bij 0 begint te tellen, vandaar ook het regeltje $varnr=$i-1;*/
// de punten
/* worden gebruikt om verschillende variabelen en/ of strings (tekst tussen "") aan elkaar te koppelen: bijvoorbeeld */
$tekst1="Achter deze tekst";
$tekst2=", wordt deze tekst geplakt";
echo $tekst1.$tekst2;
// geeft: Achter deze tekst, wordt deze tekst geplakt
echo "Achter deze tekst".$tekst2;
// geeft ook: Achter deze tekst, wordt deze tekst geplakt
?>
//de [] tekens in het script:
$var[]="var1";// op te halen door echo $var[0]
$var[]="var2";// op te halen door echo $var[1]
$var[]="var3";// op te halen door echo $var[2]
/*Hierbij valt het op dat een array bij 0 begint te tellen, vandaar ook het regeltje $varnr=$i-1;*/
// de punten
/* worden gebruikt om verschillende variabelen en/ of strings (tekst tussen "") aan elkaar te koppelen: bijvoorbeeld */
$tekst1="Achter deze tekst";
$tekst2=", wordt deze tekst geplakt";
echo $tekst1.$tekst2;
// geeft: Achter deze tekst, wordt deze tekst geplakt
echo "Achter deze tekst".$tekst2;
// geeft ook: Achter deze tekst, wordt deze tekst geplakt
?>
value="'.$variabele[$varnr].'"
Veel voorkomende fouten worden met variabelen gemaakt, en zo kan je ze sneller terugvinden. (kijk maar eens naar de kleuropmaak van de code) Het is niet verplicht, maar het kan bij debuggen heel handig zijn. Probeer het je dus wel aan te leren.
...de variabele buiten quotes...
"'.$variabele[$varnr].'"
De variabele staan toch binnen de quotes of pis ik nu helemaal lang de pot?
een variabel begint met $ en deze staan buiten de " "
Enkele en dubbele quotes worden APART geteld
Code (php)
1
2
3
4
5
2
3
4
5
<?php
echo '(1)<td><input name="(1)text'(2).$i.'(3)"(2) type="(3)text"(4) value="(5)'(4).$variabele[$varnr].'(5)"(6) size="(7)10"(8)></td>'(6);
?>
echo '(1)<td><input name="(1)text'(2).$i.'(3)"(2) type="(3)text"(4) value="(5)'(4).$variabele[$varnr].'(5)"(6) size="(7)10"(8)></td>'(6);
?>
Enkele quotes:
1) de echo wordt gestart
2) de echo wordt gesloten, en daar komt onze variabele
3) de echo wordt weer geopend
4) weer wordt de echo gesloten, komt weer een variabele
5) weer wordt de echo geopend
6) en tenslotte voor de laatste keer gesloten.
Dubbele quotes:
Staan er leuk bij, is alleen voor het genereren van HTML zoals het hoort, ze hebben verder geen functie voor het functioneren. Je zou ze ook weg kunnen laten.
Om het iets te verduidelijken, heb ik het hieronder nog eens gedaan, maar dan heb ik alles uit elkaar getrokken:
Code (php)
Zoals je kan zien staan de variabelen keurig buiten de ' omdat die na elke regel waarin dus geen variabele staat wordt afgesloten.
Alles wat tussen enkele quotes staat, wordt verder niet geparsed, dus als je echo '$var' doet, krijg je ook $var te zien op je scherm.
Dat van het parsen geldt ook als je dubbele quotes (") tussen de enkele zet, die worden niet geparsed, maar zo meegegeven.