Essayez ceci en utilisant mysqli_query
pour exécuter réellement la requête. Lorsque vous définissez $sql
tout ce qui a été fait a été de définir une variable nommée $sql
à la requête. Notez également que vous avez défini la variable $userrname
dans la requête alors qu'il devrait être $username
comme défini à partir du $_POST
directement au-dessus. Ma version ajustée de votre code ci-dessous :
$dbhost = 'localhost';
$dbuser = 'root';
$dbpass = '';
$mysql_database = "21st";
$conn = mysqli_connect($dbhost, $dbuser, $dbpass) or die("Could not connect database");
mysqli_select_db($conn, $mysql_database) or die("Could not select database");
$username = $_POST['username'];
$email = $_POST['email'];
$password = $_POST['password'];
$password2 = $_POST['password2'];
if ($password === $password2) {
// Set the query.
$sql = "INSERT INTO members (username, email, password)"
. " VALUES (?, ?, ?)"
;
// Bind the values to the query.
mysqli_stmt_bind_param($sql, 'sss', $username, $email, $password);
// Run the query.
mysqli_query($conn, $sql);
// Free the result set.
mysqli_free_result($sql);
// Close the connection.
mysqli_close($conn);
}
else {
echo "Your passwords must match";
}