Kan ik via onderstaand script verschillende values gebruiken die vooraf op geef, voorbeeld

$value1 = hier mijn tekstje voor in een value1;
$value2 = ook hier een tekst2;
$value3 = nog een tekst;
...etc.

$nr = 0;
Ik zal even wat voorbeelden geven Joris:

$variabele[] maakt een array aan, de werking is als volgt:
<?
//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
?>
Bij de value staan de puntjes helemaa buitenaan, waar zijn die dan voor?
value="'.$variabele[$varnr].'"
Die zijn om te zorgen dat de variabele buiten quotes blijft. Als je nu naar je code kijkt zie je meteen dat daar een php variabele staat.
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.
Ik ben heeeel hard aan het denken!!
...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 " "
Ik zal het nog weer toelichten, ik zet nummers bij de quotes. Elk oneven getal is de "openingsquote" en elk even getal is de "sluitingsquote":
Enkele en dubbele quotes worden APART geteld

<?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);

?>
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:


<?php
echo '<td><input name="text';
echo $i;
echo '" type="text" value="';
echo $variabele[$varnr];
echo '" size="10"></td>';
?>

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.

Reageren