Php 为什么不能添加其他用户?只允许一个用户注册
这是编码,它只允许一个用户添加到数据库,它不能存储更多的用户。如果我尝试插入另一个用户,它不会添加到数据库中。有什么解决办法吗?更新:仍然不工作,手动将用户添加到数据库的用户表中。更新:修复了问题使用引号作为键:并始终尝试在mysql中捕获错误,这将帮助您进行调试Php 为什么不能添加其他用户?只允许一个用户注册,php,Php,这是编码,它只允许一个用户添加到数据库,它不能存储更多的用户。如果我尝试插入另一个用户,它不会添加到数据库中。有什么解决办法吗?更新:仍然不工作,手动将用户添加到数据库的用户表中。更新:修复了问题使用引号作为键:并始终尝试在mysql中捕获错误,这将帮助您进行调试 error_reporting(0); if ($_SERVER["REQUEST_METHOD"] == "POST") { $dbhost = "127.0.0.1"; $dbuser = ""; $d
error_reporting(0);
if ($_SERVER["REQUEST_METHOD"] == "POST") {
$dbhost = "127.0.0.1";
$dbuser = "";
$dbpass = "";
$dbname = "";
$connection=mysqli_connect("$dbhost","$dbuser","$dbpass","$dbname");
if (mysqli_connect_errno()) {
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$module_ID=mysqli_query($connection,"SELECT Module_ID FROM Module WHERE Module_Name = '".$_POST['Module_Name']."'");
$query = mysqli_fetch_assoc($module_ID);
$result=mysqli_query($connection,"INSERT INTO Attendance (Username, Module_ID, Module_Name, Date, isHere, isLate)
VALUES ('$_POST[Username]','$query[Module_ID]','$_POST[Module_Name]','$_SERVER[REQUEST_TIME]','Y','N')");
if (!mysqli_query($connection ,$result)) {
//die('Error: ' . mysqli_error($connection));
}
echo $_POST[Module_Name];
echo "<br /><br /><br /><br /><br />";
echo $query['Module_ID'];
mysqli_close($connection);
}
我这样做是因为所有的引文都会被引用,而且会让事情变得更加混乱 一个完美的例子是@Suchit的答案
$result=mysqli_query($connection,"INSERT INTO Attendance (Username, Module_ID, Module_Name, Date, isHere, isLate)
VALUES ('".$_POST['Username']."'","'".$query['Module_ID']."'","'".$_POST['Module_Name']."'","'".$_SERVER['REQUEST_TIME']."','Y','N')");
请不要在SQL语句中使用原始POST变量。使用准备好的语句保护自己免受SQL注入攻击。请提供表定义。请参考以下链接并将其应用于代码。这对你没有帮助,顺便说一句,错误报告0;尝试在phpmyadmin中的数据库中手动添加用户,如果在数据库中添加失败,则您的代码没有问题。这是否实际产生了与OP已有的不同的内容?仍然尝试修复它将不会添加用户,即使我在数据库中手动添加了一个,这是否真的产生了与OP已有的不同的东西?@JonStirling是的,我猜OP正在使用的那些键会给他未定义的@JonStirling尝试使用此选项并查看:echo$_POST[Username]@JonStirling在示例的第18行确实有语法错误。
$username = $_POST['Username'];
$module_id = $query['Module_ID'];
$module_name = $_POST['Module_Name'];
$time = $_SERVER['REQUEST_TIME'];
$result=mysqli_query($connection,"INSERT INTO Attendance (Username, Module_ID, Module_Name, Date, isHere, isLate)
VALUES ('$username','$module_id','$module_name','$time','Y','N')");