我的作业大约要在两周的时间内到期,而且没有任何反应。
我一直在通过沼泽测试它,它将起作用。我需要另一双眼睛,甚至两只,因为对于我的一生,我看不出怎么了。
我没有得到任何错误输出,只是崩溃了。
<?php
if(isset($_POST['register_user']))
{
//capture the variable from the form and store in php variables
$title=$_POST['title'];
$fullname=$_POST['fullname'];
$lastname=$_POST['lastname'];
$screenname=$_POST['screenname'];
$email=$_POST['email'];
$gender=$_POST['gender'];
$address=$_POST['address'];
$mypwd=$_POST['mypwd'];
//connecting to the server
include'$db_server.php';
$conn = mysqli_connect($db_host,$db_username,$db_password) or die (mysqli_connect_error());
//select the database you want to query
mysqli_select_db($conn, 'national_wonders') or die (mysqli_error($conn));
$sql = "SELECT * FROM members WHERE screenname='$screenname'";
$result = mysqli_query($conn, $sql) or die ("ERROR:" .mysqli_error());
$rowcount = mysqli_num_rows($result);
if($rowcount >= 1)
{
"<\script type\"text/javascript\";
alert('screenname already exist');
window.location=\"popup.html\";
</script>";
}
else
{
//insert data into table
$sql = "INSERT INTO members(title, fullname, lastname, screenname, email, gender, mypwd)
VALUES('$title', '$fullname', '$lastname', '$screenname', '$address', '$email', '$gender', 'md5('$mypwd))";
if(mysqli_query($conn,$sql))
{
"<script type=\"text/javascript\">
alert(Welcome);
window.location=\"login.php\";
</script>";
}
else
{
echo "Error inseting data into the table";
}
}
?>
答案 0 :(得分:0)
对我来说,它看起来像是主/包含if语句尚未以结尾结尾的}
if(isset($ _ POST ['register_user'])) { / 其余代码在这里 / }
答案 1 :(得分:0)
您应该重新考虑其中的大部分内容。...
这是从ajax形式调用的吗?还是只是常规形式?
不要这样做。...
"<\script type\"text/javascript\";
alert('screenname already exist');
window.location=\"popup.html\";
</script>";
如果这是常规格式,则应使用php将用户重定向到popup.html
header('Location: popup.html');
如果它是ajax格式(我怀疑基于您到目前为止的内容),则发送回数据,例如
json_encode(["message"=>"Some message", "newUrl"=>$myurl]);
并使用ajax函数处理返回的数据。
也不要这样做。...
$sql = "INSERT INTO members(title, fullname, lastname, screenname, email, gender, mypwd)
VALUES('$title', '$fullname', '$lastname', '$screenname', '$address', '$email', '$gender', 'md5('$mypwd))";
每个老师都应带头告诉你这个... How can I prevent SQL injection in PHP?
正如评论中提到的那样,美元符号可能不正确...
'$db_server.php';
除非您在文件开头使用美元符号命名。
此外,您可以添加
error_reporting(E_ERROR | E_WARNING | E_PARSE | E_NOTICE);
如果需要帮助调试,请在脚本顶部获取最积极的错误报告。