$\u post无法使用php(无错误)

w46czmvw  于 2021-06-20  发布在  Mysql
关注(0)|答案(1)|浏览(338)

这个问题在这里已经有答案了

php中单引号字符串和双引号字符串的区别是什么(12个答案)
mysqli_fetch_assoc()需要参数/调用成员函数bind_param()时出错。如何获得实际的mysql错误并修复它(1个答案)
如何防止php中的sql注入(28个答案)
两年前关门了。
我需要一些php方面的帮助$_post在php中不起作用。我正在mac上使用mamp。
我没有返回任何错误,数据库中没有存储任何数据。
我的db用户名和密码没有切换,因为我将密码设置为“root”。

<?php
$conn = mysqli_connect('localhost', 'juicysoft', 'root', 'PublicFiles');
$uname = $_POST['uname'];
$pword = $_POST['pword'];
$email = $_POST['email'];
$sql = 'INSERT INTO users (uname, pword, email) VALUES ($uname, $pword, 
$email)';
mysqli_query($conn, $sql);
if (mysqli_connect_errno()) {
    echo mysqli_connect_error();
} else {
echo "Success!";
}

?>

<!-- The form that I need to post -->

<!DOCTYPE html>
<html>
<head>
	<title>PublicFiles - Register</title>
</head>
<body>
<h1>Register</h1>
<form action="process.php" method="post">
	<input type="text" name="uname" placeholder="Screen Name..."><br>
	<input type="password" name="pword" placeholder="Password..."><br>
	<input type="email" name="email" placeholder="Email..."><br>
	<input type="submit" value="Sign Up">
</form>
</body>
</html>
vuktfyat

vuktfyat1#

你的 $sql 写得不正确,
改变

$sql = 'INSERT INTO users (uname, pword, email) VALUES ($uname, $pword, 
$email)';

$sql = "INSERT INTO users (uname, pword, email) VALUES ('".$uname."','".$pword."','".$email."')";

注意:将参数直接设置到sql中可能会导致sql注入,最好使用prepared语句

相关问题