[PHP] Kein Eintrag einer Funktion
Hallo,
ich habe mir mal eine Funktion zusammen gebastelt, und das Ergebnis dieser Funktion soll dann eingetragen werden.
function random(){
$a = array('a','b','c','d','e','f','g','h','i','j','k', 'l','m','n','o','p','q','r','s','t','u','v','w','x ','y','z','1','2','3','4','5','6','7','8','9');
$lol = rand(7,10);
for($i=0;$i<$lol;++$i){
echo $a[rand(0,34)];
}
} (Mit PHP Tags bugt das Teil)
Der Query funktioniert super, bis auf Column "ref", denn das Ergebnis wird nicht eingetragen.
INSERT INTO user(ref)VALUES(".random().")
Ich verstehe nicht, was daran falsch ist...?!
Gruß
AW: [PHP] Kein Eintrag einer Funktion
Was soll denn das echo da in der Funktion?
Mein Vorschlag:
Code:
function random() {
return substr(str_shuffle(join('',array_merge(range('a','z'),range('0','9')))),0,rand(7,10));
}
(Die Länge und das Charset sollte man natürlich besser als Parameter übergeben)
AW: [PHP] Kein Eintrag einer Funktion
Vielen Dank, aber ich würde jetzt gerne schon noch wissen, wieso meine Funktion nicht funktioniert hat?
Habe ich etwas falsch gemacht? Wenn ja, was?
AW: [PHP] Kein Eintrag einer Funktion
Dein Fehler ist, dass Deine Funktion zwar eine Ausgabe erzeugt, aber keinen definierten Wert zurückliefert (NULL).
Wenn Du der Spalte ref in der DB ein NOT NULL verpasst hättest, wäre beim Einfügen auch eine Fehlermeldung gekommen.
AW: [PHP] Kein Eintrag einer Funktion
nächstes mal reicht auch ein return $var[$i]=$a[rand(0,34)]; in der schleife,und am ende der funktion ein return $var. somit kannst du das jeweilige $var mit ner for-schleife durchrattern.