Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Wie verwende ich eine benutzerdefinierte MySQL-Funktion in PHP?

1 und 2 sind nahe beieinander, aber $result enthält nicht das Ergebnis des Funktionsaufrufs. Stattdessen enthält es das Ergebnis-Cookie aus der Abfrage. Sie können dieses Cookie verwenden, um die eigentlichen Daten mit mysql_fetch_row() abzurufen . Der Funktionsaufruf gibt nur einen Wert für die select-Anweisung zurück, genauso wie "SELECT 42" oder "SELECT a FROM MyTable". Um das Ergebnis zu erhalten, verwenden Sie also denselben Mechanismus wie bei jeder anderen SQL-Abfrage, die Ergebnisse zurückgibt. das heißt, verwenden Sie das Cookie und rufen Sie mysql_fetch_row() auf . Ihr endgültiger Code sieht also so aus:

$result = mysql_query("select functionName($id)");
$row = mysql_fetch_row($result, $link);
$returnValue = $row[0];

Beachten Sie, dass Sie Variablen nicht direkt in eine SQL-Zeichenfolge interpolieren möchten (das kann ein Vektor für Angriffe sein). Ich gehe aber davon aus, dass dieser Code nur Beispielzwecken dient.