简体   繁体   English

使用PHP将HTML表单数据插入MySQL数据库

[英]insert HTML form data to a MySQL database with PHP

I have a problem with this piece of code because it does't work but it seems to be semantically correct. 我对这段代码有问题,因为它不起作用,但似乎在语义上是正确的。 It arrive up to " die("Errore nella query: $query."); " but I can't understand why. 它到达“ die("Errore nella query: $query."); ”但我无法理解为什么。 Help me please: 请帮帮我:

<?php
// Connessione al DB Server
$conn = mysqli_connect("localhost","root","","mydb");
// Controllo
if (!$conn){
  echo "connessione database fallita";
  exit();
}
$nome = $_POST["nm"];
$cognome = $_POST["cgn"];
$email = $_POST["ml"];
$username = $_POST["nkn"];
$password = md5($_POST["psw1"]);

$nome = mysqli_real_escape_string($conn,trim($nome));
$cognome = mysqli_real_escape_string($conn,trim($cognome));
$email = mysqli_real_escape_string($conn,trim($email));
$username = mysqli_real_escape_string($conn,trim($username));
$password = mysqli_real_escape_string($conn,trim($password));

$query = "SELECT username FROM utenti WHERE username = '".$username."'";
$risultato = mysqli_query($conn,$query);
if (!$result) {
    die("Errore nella query: $query.");
}
$riga = mysqli_fetch_array($risultato,MYSQLI_NUM);
$n = mysqli_affected_rows($conn);
if($n >= 1){
    echo "Username non disponibile";
}else{
    $inserisci = "INSERT INTO utenti (nome,cognome,email,username,password) VALUES ('$nome','$cognome','$email','$username','$password')";
    mysqli_query($conn,$inserisci);
?>
<p>Utente: <?php echo $username ?> registrato con successo.</p>
<?php
}
mysqli_close($conn);
?>

You check for the $result variable, but the SQL Data is stored in $risultato. 您检查$ result变量,但SQL数据存储在$ treultato中。 Rename your variables right 正确地重命名变量

$risultato = mysqli_query($conn,$query);
if (!$result) {
    die("Errore nella query: $query.");
}

It looks like you're checking the wrong variable. 看起来你正在检查错误的变量。 Try this: 尝试这个:

if (!$risultato) {

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM