my mysql 서버 테이블 필드에서 $ _SESSION [ "mypermissions"] 세션 변수와 동일한 값을 설정하려고했습니다. 내가 시도하는 것은 무엇이든 공백이되거나 값이 0이된다. 나는 이것이 어리석은 질문이고 간단한 해결책이 있지만 아무 것도 작동하지 않는 것 같아. 여기까지 내 코드가 문제의 SQL 쿼리에 대한 하단 근처에 봐.SQL 쿼리가 값을 반환하지 않음, 세션 변수로 설정
<?php
$host="localhost"; // Host name
$username="root"; // Mysql username
$password=""; // Mysql password
$db_name="comproject"; // Database name
$tbl_name="members"; // Table name
// Connect to server and select databse.
mysql_connect("$host", "$username", "$password")or die("cannot connect");
mysql_select_db("$db_name")or die("cannot select DB");
// username and password sent from form
$myusername=$_POST['myusername'];
$mypassword=$_POST['mypassword'];
// To protect MySQL injection
$myusername = stripslashes($myusername);
$mypassword = stripslashes($mypassword);
$myusername = mysql_real_escape_string($myusername);
$mypassword = mysql_real_escape_string($mypassword);
$sql="SELECT * FROM $tbl_name WHERE username='$myusername' and password='$mypassword'";
$result=mysql_query($sql);
// Mysql_num_row is counting table row
$count=mysql_num_rows($result);
// If result matched $myusername and $mypassword, table row must be 1 row
if($count==1){
session_start();
$_SESSION["myusername"] = $myusername;
$sql = "SELECT permissions FROM $tbl_name WHERE username='$myusername' and password='$mypassword'";
$_SESSION["mypermissions"] = mysql_query($sql);
header("location:login_success.php");
}
else {
echo "Wrong Username or Password";
}
?>
문제는 '$ _SESSION [ "mypermissions"] =는 mysql_query ($의 SQL)이다 그러면 이런 결과 설정된 세션 변수에 기초하여 결과를 가져올 수있다 . 대신 쿼리에서 결과를 얻고 싶습니다. – Jon
왜 같은 것을 두 번 선택 하시겠습니까? 먼저'SELECT *'와'SELECT permissions'를하지만,'WHERE' 조건은 같습니다. 첫 번째 쿼리의 결과에서 사용 권한을 추출 할 수 있습니다. – TiiJ7