"login"
및 "valid_stuid"(valid student id)
이라는 데이터베이스에 두 개의 테이블이 있습니다. "valid stuid"
이 "stu_id"
및 "status"
을 두 행이,의는 "status"
행에서 "stu_id"
행에서 "123"
및 "open"
을있는 지금 1 열이 테이블 "valid stuid"
에서 사용할 수 있습니다 말할 수 있습니다. 나는 학생 ID, 사용자 이름, 비밀 번호, 이름과 성으로 사용자를 등록하는 PHP 스크립트를 만들었습니다. 지금까지 성공적으로 데이터베이스에 입력했지만 valid_stuid
테이블에서 상태를 선택하는 데 어려움을 겪고 있습니다. 나는 내가 $stuidcheck
의 값을 비교에 비참하게 실패하고 다른 언어에서이 같은 비교의 아이디어를 가지고 생각PHP에서 가져온 값을 어떻게 비교합니까?
if(isset($_POST["submit"])){
if(!empty($_POST['stuid']) && !empty($_POST['user']) && !empty($_POST['pass']) && !empty($_POST['fname']) && !empty($_POST['lname'])) {
$stuid=$_POST['stuid'];
$user=$_POST['user'];
$pass=$_POST['pass'];
$fname=$_POST['fname'];
$lname=$_POST['lname'];
$con=mysql_connect('localhost','root','') or die(mysql_error());
mysql_select_db('user_registration') or die("cannot select DB");
$stuidcheck="SELECT status FROM valid_stuid WHERE id='".$stuid."'";
if($stuidcheck == "used")
{
echo "Student ID is registered to another account!";
}
else{
$sql1="INSERT INTO login(stu_id,username,password,first_name,last_name) VALUES('$stuid','$user','$pass','$fname','$lname')";
mysql_query($sql1);
$sql2="INSERT INTO valid_stuid(stu_id,status) VALUES('$stuid','used')";
mysql_query($sql2);
}
} else {
echo "Please fill up all fields";
}
}
?>
:
내 코드는 같은 간다. 또한 수정을 사용하여 "open"
에서 "used"
으로 상태를 변경하려고 계획하지만이 작업을 마친 후에 시도 할 것입니다.
'$ stuidcheck'는 문자열입니다. 먼저'$ stuidcheck' 쿼리를 실행하십시오. –
배열을 $ stuidcheck 문자열 대신에 '$ stuidcheck' 대신'stuidcheck'를 사용하는 것으로 보입니다 – AVM
@u_mulder, 실제로 select를 쿼리하는 방법을 모르므로 insert로부터 쿼리가 작동한다고 생각했지만 저는 어쨌든 작동하지 않으므로 제거했습니다. select 문을 올바르게 쿼리하는 방법을 연구하려고합니다. 감사합니다 –