Heim > Artikel > Backend-Entwicklung > Warum erhalte ich in meinem PDO-Code den Fehler „Aufruf einer Mitgliedsfunktion Prepare() für ein Nicht-Objekt'?
Beim Versuch, Benutzereingaben mithilfe von PDO zu validieren, tritt ein Fehler auf, der darauf hinweist, dass die Vorbereitung ()-Methode wird für ein Nicht-Objekt aufgerufen. Dieser Fehler tritt speziell in Zeile 42 des bereitgestellten Codes auf.
Um dieses Problem zu beheben, überprüfen Sie den Code, um sicherzustellen, dass das $pdo-Objekt ordnungsgemäß definiert und innerhalb der Funktion repetirDados() zugänglich ist. Der Fehler deutet darauf hin, dass $pdo im aktuellen Bereich nicht verfügbar ist.
Bestätigen Sie, ob $pdo als Argument an die Funktion übergeben wird oder ob es als globale Variable definiert ist. Wenn keines dieser Szenarios zutrifft, können Sie $pdo im globalen Namespace definieren und das globale Schlüsselwort innerhalb der Funktion verwenden, um darauf zuzugreifen:
global $pdo;
Alternativ können Sie $pdo als Argument an übergeben repetirDados()-Funktion, um sicherzustellen, dass sie innerhalb des Funktionsumfangs verfügbar ist.
Das Äquivalent von mysql_num_rows in PDO ist rowCount(). Es gibt die Anzahl der Zeilen zurück, die von der letzten Abfrageausführung betroffen waren. In diesem Fall können Sie rowCount() verwenden, um zu überprüfen, ob von der Abfrage Zeilen zurückgegeben wurden:
if ($stmt->rowCount() == 0) { // No results found } else { // Results found }
Das obige ist der detaillierte Inhalt vonWarum erhalte ich in meinem PDO-Code den Fehler „Aufruf einer Mitgliedsfunktion Prepare() für ein Nicht-Objekt'?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!