Obwohl Sie die Benutzertabelle in MySQL erstellt und die Dateien dbConfig und Index.php definiert haben, müssen Sie Es tritt ein Problem auf, bei dem Daten nicht in die Datenbank eingefügt werden, wenn auf die Schaltfläche „Speichern“ geklickt wird.
Der bereitgestellte Code ruft Werte aus dem Formular mit $_POST ab, deklariert jedoch nur eine INSERT-Abfragezeichenfolge in der folgenden Zeile:
$sql = "INSERT INTO users (username, password, email) VALUES ('".$_POST["username"]."','".$_POST["password"]."','".$_POST["email"]."')";
Dieser Code führt die Abfrage nicht wirklich aus. Um MySQL-Abfragen auszuführen, können Sie die Funktion mysqli_query verwenden:
mysqli_query($mysqli, $sql);
Dieser Ansatz ist jedoch anfällig für SQL-Injection-Angriffe. Es ist wichtig, bei der Verarbeitung von Benutzereingaben vorbereitete Anweisungen zu verwenden, um böswillige Datenmanipulationen zu verhindern.
Hier ist ein Beispiel für die Verwendung vorbereiteter Anweisungen:
$sql = "INSERT INTO users (username, password, email) VALUES (?,?,?)"; $stmt = $mysqli->prepare($sql); $stmt->bind_param("sss", $_POST['username'], $_POST['password'], $_POST['email']); $stmt->execute();
Das obige ist der detaillierte Inhalt vonWarum werden meine PHP-Formulardaten nicht in MySQL eingefügt?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!