Bei der Arbeit mit Datenbanken in PHP ist es oft notwendig, MySQL-Code in PDO-Anweisungen (PHP Data Objects) zu konvertieren. PDO bietet eine konsistente und sichere Möglichkeit, mit Datenbanken zu interagieren, unabhängig vom zugrunde liegenden Treiber. Diese Anleitung zeigt Ihnen, wie Sie Ihren MySQL-Code in PDO-Anweisungen umwandeln.
Der erste Schritt besteht darin, mithilfe von PDO eine Verbindung zur Datenbank herzustellen. Hier ist ein Beispiel dafür:
$db_host = "127.0.0.1"; $db_name = "database_name"; $db_user = "username"; $db_pass = "password"; $pdo = new PDO("mysql:host=$db_host;dbname=$db_name", $db_user, $db_pass);
Sobald Sie eine PDO-Verbindung haben, können Sie mit der Konvertierung Ihres MySQL-Codes in PDO-Anweisungen beginnen.
Vorbereitete Anweisungen mit MySQLi und PDO
Vorbereitete Anweisungen sind eine sichere Möglichkeit, Abfragen auszuführen, die vom Benutzer bereitgestellte Daten enthalten. Sie verhindern die SQL-Injection, indem sie die Daten an die Abfrage binden, bevor sie ausgeführt wird.
Hier ist ein Beispiel einer vorbereiteten Anweisung in MySQLi:
$sql = "SELECT * FROM users WHERE username = ? AND password = ?"; $stmt = $mysqli->prepare($sql); $stmt->bind_param("ss", $username, $password); $stmt->execute(); $result = $stmt->get_result();
Hier ist die gleiche Abfrage in PDO:
$sql = "SELECT * FROM users WHERE username = ? AND password = ?"; $stmt = $pdo->prepare($sql); $stmt->bindParam(1, $username, PDO::PARAM_STR); $stmt->bindParam(2, $password, PDO::PARAM_STR); $stmt->execute(); $result = $stmt->fetchAll();
Aktualisierter Code
Hier ist ein Beispiel für die Konvertierung des MySQL-Codes aus der Frage in PDO-Anweisungen:
$id = $_SESSION['u_id'] ?? NULL; if ($id) { $sql = "SELECT email FROM users WHERE u_id = ?"; $stmt = $pdo->prepare($sql); $stmt->execute([$id]); $email = $stmt->fetchColumn(); } $email = $email ?? ""; $suggestions = selectAll($table); $optionOne = $_POST['optionOne'] ?? ""; $optionTwo = $_POST['optionTwo'] ?? ""; $newSuggestion = $_POST['new-suggestion'] ?? ""; if ($newSuggestion && $id && $email && $optionOne && $optionTwo) { $sql = "INSERT INTO suggestions (user_id, email, option_1, option_2) VALUES (?, ?, ?, ?)"; $stmt = $pdo->prepare($sql); $stmt->execute([$id, $email, $optionOne, $optionTwo]); } else { echo "All options must be entered"; }
Das Konvertieren von MySQL-Code in PDO-Anweisungen ist ein relativ einfacher Prozess. Wenn Sie die in dieser Anleitung beschriebenen Schritte befolgen, können Sie Ihren Code ganz einfach zu PDO migrieren und dessen Vorteile wie verbesserte Sicherheit und Leistung nutzen.
Das obige ist der detaillierte Inhalt vonWie konvertiere ich MySQL-Code in PDO-Anweisungen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!