Ich habe gerade angefangen, in PHP PDO zu suchen und haben sich mit MySQL-Datenbank verbunden und führte eine einfache SELECT
Anweisung. Ich habe eine gespeicherte Funktion, die ich vor der Verwendung von PDO erstellt habe. Muss ich tatsächlich gespeicherte Funktionen/Prozeduren verwenden, während ich PDO verwende?PHP PDO und gespeicherte Funktion
BEGIN
DECLARE new_username VARCHAR(32);
SELECT `username`
INTO new_username
FROM `users`
WHERE `userID` = ID;
RETURN COALESCE(new_username, 'Invalid ID');
END
Gibt es einen Punkt die obige Funktion bei der Verwendung, wenn ich dies mit PDO mache? Die Funktion wird für andere Selects usw. erweitert. Ich habe auch ein Problem beim Aufruf der Funktion mit PDO.
include ('connection.php');
$userID = 0;
$stmt = $db->prepare("SELECT username(:user_id)");
$stmt->bindParam(':user_id', $userID, PDO::PARAM_INT);
$stmt->execute();
$result = $stmt->fetch(PDO::FETCH_OBJ);
echo $result->new_username;
Irgendwelche Beratung?
'PDO :: PARAM_INT' sollte" 1 "' zu '1' machen, indem man type casting fyi verwendet. – RobertPitt
opps Ich habe vergessen, meine userID zu ändern. Es tut mir leid, dass es ein Int war, der obige Code ist eine Funktion, da er den Benutzernamen zurückgibt. Ich habe noch Prozeduren verwendet, aber ich habe das in meine Frage gestellt, wenn ich sie tatsächlich benutze. Danke, versuchen Sie es. – Elliott
PHP druckt "Prozedur zurückgegeben" aber nichts danach? Danke – Elliott