[ad_1]
皆さんこんにちは! 自分のデータを自分のデータベースに送信するときに自分のシステムに問題があり、その理由がわかりません。 ところで、私のクエリはパラメータ化されたものに変更する必要があります (エラーは私の質問にあります)
これは私のコードです(エラーは最後の行にあります):
<?php include ("conex.php"); //logeo session_start(); include("conex.php"); if(isset($_POST['ingre'])){ $name = $_POST["name"]; $password = $_POST["pass"]; $sql = "SELECT COUNT(*) as contar FROM usuario WHERE name ='$name' AND pass ='$password'"; $consult=mysqli_query($conn,$sql); $arreglo=mysqli_fetch_array($consult); if($arreglo['contar']> 0) { $_SESSION['usuario']=$name; echo "<script>alert('Bienvenido: $name'); window.location='home.php'</script>"; }else{ echo "<script>alert('Los datos estan mal'); window.location='login.php'</script>"; } //Registrar $name = $_POST["name"]; $apellido = $_POST["apec"]; $dad = $_POST["namep"]; $mom = $_POST["namem"]; $tipeCI = $_POST["tipeid"]; $ci = $_POST["ci"]; $phone = $_POST["te"]; $correo = $_POST["email"]; $add = $_POST["dirre"]; $day = $_POST["diana"]; $gradoI = $_POST["gradoin"]; $esC = $_POST["estado"]; $sex = $_POST["sex"]; $pass = $_POST["pass"]; if(isset($_POST["butt"])) { $sqlgrabar = "INSERT INTO usuario(name,last,nameDad,nameMom,tipoIdentificacion,identificacion,telefono,email,address ,born,rango,estadoC,sex,pass) values ('$name','$apellido','$dad','$mom','$tipeCI','$ci','$phone','$correo','$add','$day','$gradoI','$esC', '$sex','$pass')"; //EVITAR REPETIDO $veri_correo=mysqli_query($conn,"SELECT * FROM usuario WHERE email='$correo'"); $veri_pass=mysqli_query($conn,"SELECT * FROM usuario WHERE pass='$pass'"); if(mysqli_num_rows($veri_correo) > 0){ echo '<script>window.location="dise/errorEgistro.php";</script>'; exit(); } if(mysqli_num_rows($veri_pass) > 0){ echo '<script>window.location="dise/errorEgistro.php";</script>'; exit(); } if(mysqli_query($conn,$sqlgrabar)) { echo "<script> alert('Felicidades el usuario fue registrado con exito: $name'); window.location='login.php' </script>"; }else { echo "Error: ".$sqlgrabar."<br>".mysqli_error($conn); } } ?>
私が試したこと:
私は何かを試しましたが、何もしませんでした。私は少しNOOBであり、エラーが発生した理由はわかりません
解決策 1
これは、同じコードで同じ質問をするのは 2 回目です。「すべてを整理」してプレートに「作業コード」を渡さないという理由だけで、答えは変わりません…
前回言ったように、エラーはどこかでブラケットが一致していないことが原因であり、システムは、コードの最後に到達して、一致する「閉じ中かっこ」よりも「開いた中かっこ」を 1 つ追加したことを検出したときにのみ通知できます。 そして、それがどこにあるべきだったのかわからないので、「あなたのためにそれを入れる」ことはできません-そして私たちもできません!
コード内の「{」の数を数えると、8 になります。
コード内の「}」の数を数えると、7 になります。
ほとんどの人はそれを高く評価できます。 ほとんどの人は、7 と 8 が異なる数であることがわかります。
あなたのインデントは一貫していないので、あなたが何を書こうとしているのかさえわかりません.
あなたがそのコードを書いたのなら、物事がどこにあるべきかをよく知っているはずです。 そのため、コードを書いたときに意図したものと一致するように一貫してそのコードをインデントしてください。不足しているブラケットがどこにあるべきかは明らかです。
そして、そのコード、そしておそらくあなたのアプリ全体は、まだSQLインジェクションに対して広く開かれています…
解決策 2
Parse error: syntax error, unexpected token ";" in C:\xampp\htdocs\login\login.php on line 8
[ad_2]
コメント