Crew PHP |
|
undefined index houd in dat je een key gebruikt die niet bestaat, voorbeeldje gaat denk duidelijker zijn:
$array = array();
$array['voorbeeldKey'] = 1;
$array['andereKey'] = 2;
echo $array['voorbeeldKey']// Zal ' 1 ' laten zien
echo $array['BESTAAT NIET']// Zal niets laten zien, en je undefined index melding geven.
$array['voorbeeldKey'] = 1; $array['andereKey'] = 2; echo $array['voorbeeldKey']// Zal ' 1 ' laten zien echo $array['BESTAAT NIET']// Zal niets laten zien, en je undefined index melding geven.
Is in principe een melding waar je niets aan te doen hoeft, voor de netheid zou je m kunnen defineren voordat je er dingen mee gaat doen, maar is niet echt nodig. Alleen in high performance situaties ga je dit soort dingetjes denk pas merken
Nog een edit: Wat je doet is dit:
$_POST['$ab']. Er staat single quotes om heen, dit geeft je probleem. Single quotes zorgen dat de letterlijke waarde genomen wordt, dus niet de waarde van de variabel $ab, maar de tekst "$ab".
Oplossing: Quotes weghalen. Variabelen hoeven niet met quotes (beter van niet) als key. Als je perse quotes er omheen wilt, moet je doublequotes gebruiken:
$_POST[ $variabel ]; // Deze is de beste!
$_POST['$variabel']; // Deze zal naar een key zoeken die letterlijk '$variabel'heet
$_POST["$variabel"]; // Doet hetzelfde als de eerste, maar 'slordiger'
$_POST[ $variabel.'ExtraTekst'];// voor als je er een pre- of suffix voor hebt
$_POST[ $variabel ]; // Deze is de beste! $_POST['$variabel']; // Deze zal naar een key zoeken die letterlijk '$variabel'heet $_POST["$variabel"]; // Doet hetzelfde als de eerste, maar 'slordiger' $_POST[ $variabel.'ExtraTekst'];// voor als je er een pre- of suffix voor hebt
|