Вывести ячейку из mysql, используя переменную сеанса where и php - PullRequest
1 голос
/ 11 июля 2011

У меня есть 2 файла, которые относятся к этому вопросу, myaccount.php и test5.php. test5 подключается к базе данных MySQL, и она должна получить содержимое одной ячейки и распечатать его.

<?php

mysql_connect("mysql8.000webhost.com", "a5470121_tahahn5", "travis2") or
   die(mysql_error());
mysql_select_db("a5470121_rhs3") or die(mysql_error());


$result = mysql_query(
  "SELECT `user_name`,`Classperiod1` FROM users
   WHERE user_name ='" . $_SESSION['user_name'] . "'"
) or die(mysql_error());  


 $row = mysql_fetch_array( $result );
 echo   $row['user_name'];

?>

второй файл myaccount.php должен положить распечатку из php-файла в html-форму

<h3> Your First ClassPeriod is<?php echo $row['Classperiod1']?></h3>  

Я проверил это и использовал оба файла с определенным именем пользователя (например, Джон, Эндрю и т. Д.), И он отлично распечатает период занятий. При попытке использовать WHERE с переменной SESSION по какой-то причине останавливает его печать. Он даже не показывает никаких сообщений об ошибках. Извиняюсь за любые ошибки в коде, или если это действительно глупый вопрос. Я почти абсолютный новичок в том, что касается PHP и MySQL

1 Ответ

0 голосов
/ 11 июля 2011

Возможно, вы захотите удалить детали mysql из своего вопроса!

Вы начинаете сеанс с помощью функции session_start()?http://php.net/manual/en/function.session-start.php

Я также не вижу, где вы устанавливаете $_SESSION['user_name']

Вы можете попробовать повторить созданный вами запрос mysql, чтобы увидеть, что он содержит, это может помочь найтииз того, что не так, я бы предположил, что переменная сеанса будет пустой.

Например:

$sql = "SELECT user_name,Classperiod1 FROM users WHERE  user_name ='" . $_SESSION['user_name'] . "'";
echo $sql;
$result = mysql_query($sql) or die(mysql_error());  
...