Rumah > Soal Jawab > teks badan
P粉2001385102023-08-17 10:39:22
Daripada menggunakan while
循环,只需一次捕获fetch_object()
,并使用if
untuk menguji sama ada anda mendapat hasil yang benar.
Anda juga harus menggunakan pernyataan yang disediakan, saya tunjukkan cara melakukannya di bawah.
Anda tidak boleh menyimpan kata laluan teks yang jelas, anda harus menggunakan password_hash()
和password_verify()
. Saya tidak menunjukkan kod itu di bawah (ia memerlukan perubahan yang sepadan dengan skrip pendaftaran anda).
$username = $_POST["username"]; if ($username != "") { $password = $_POST["password"]; $accountLevel = $_POST["accountLevel"]; $content = $_POST["content"]; $sql = "SELECT password, accountLevel FROM `accounts1` WHERE username=?"; $stmt = $conn->prepare($sql); $stmt->bind_param("s", $username); $stmt->execute(); $result = $stmt->get_result(); $post = $result->fetch_object(); if ($post) { if ($post->password != $password) { echo "Usuario o Contraseña incorrecta"; }else if ($post->accountLevel != $accountLevel) { echo "Error: No se pudo Publicar. Error de nivel de cuenta."; }else{ $sql = "INSERT INTO `blogposts`(`title`, `contentHTML`, `publishDate`, `commentSection`, `likes`, `dislikes`, `publisher`, `selector`) VALUES ('',?,?,'',0,0,?,'')"; $stmt = $conn->prepare($sql); $stmt->bind_param("sss", $content, $_POST['publishDate'], $username); $stmt->execute(); echo "Enviado"; } } else { echo "Usuario o Contraseña incorrecta"; } }else{ echo "Usuario no indicado"; }