我正在为我的网站创建一个注册页面,但无论我做什么,我都会遇到语法错误。如果我删除整个声明,它会让我一个人呆着,但我不能做我想做的事。这是代码:
<?php
$user=$pass=$mail=$name="";
$registered=true;
$user = $_GET["user"];
$file = fopen("sparkapps_files/users.dat","r+") or fopen ("sparkapps_files/users.dat","x+");
if (strlen($user)< "4") {
echo "Username too short! Must be at least 4 chars long!<br>";
$registered = false;
}
$pass = $_GET["pass"];
if (strlen($pass)<"8") {
echo "Password too short! Must be at least 8 chars long!<br>";
$registered=false;
}
$str = "";
do {
$str = fgets(substr($file , strpos(fgets($file)," ")));
} while (!feof($file) &$ $str != $user); // error right here
if ($str == $user) {
$registered = false;
echo "Input username has already been taken!<br>";
}
$mail = $_GET["mail"];
$name = $_GET["name"];
if ($registered == true) {
fwrite ($file , $user . " " . $pass . " " . $mail . " " . $name . "<br>");
echo "Welcome, " . $user . "<br>";
echo "You have been registered.<br>";
$_SESSION["user"] = $user;
echo "<a href=\"http://www.sparkprogrammers.net\">Go to home page</a>";
}
if ($registered == false) {
echo "<a href=\"register.php\">Return to register page</a>";
}
?>
我本地计算机上的 IDE 没有发现错误,但服务器发现了错误。是我,还是我的服务器?