2015-07-11 5 views
0

Я использую таблицу mySQL, называемую пользователями, которая включает в себя такие поля, как «userID, имя пользователя и пароль».
При входе пользователя форма передает записи «имя пользователя» и «пароль» в файл authentication.php, который затем выполняет
SELECT * FROM $tbl_name WHERE username='$myusername' and password='$mypassword.Создать переменную из данных, полученных из базы данных

Я хочу запустить PHP-запрос для создания новой переменной, равной «userID» в таблице, где «username» равно переменной с именем $ username. Затем создается новая переменная, такая как
$_SESSION["userID"] = $userID

Как создать другую переменную из полученных данных userID.

линии сценария ниже, когда его проверки имени пользователя и пароля, а затем создать сессионные переменные из них:

$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){ 
echo "Welcome back "; 
echo $myusername; 
echo "!"; 

// Create session vars $myusername, $mypassword and redirect to file "success.php" 
$_SESSION["myusername"] = $myusername; 
$_SESSION["mypassword"] = $mypassword; 
} 
else { 
echo "Wrong Username or Password"; 
} 

ответ

1

Для этого вам нужно перебирать ваш результат в время цикла. mysql_fetch_array сделает это. Следующий код создаст объект сеанса.

$result = mysql_query($sql); 
    while ($row = mysql_fetch_array($result)) { 
     echo $row['userid']; 
    } 
+0

Когда я использую это, я получаю эту ошибку 'mysql_fetch_array() ожидает, что параметр 1 будет ресурсом, строка задана'. – rctfan1999

+1

Извините, я не заметил, что $ sql была строкой. Вам нужно преобразовать это в объект db. mysql_query сделает это – Partha

+0

Это сработало. Благодаря! – rctfan1999

Смежные вопросы