我有两个适用于这个问题的文件,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> 我已经对此进行了测试,并使用具有特定用户名的两个文件(ex.John、Andrew等)。它会很好地打印出上课时间。当由于某种原因试图将WHERE与SESSION变量一起使用时,会停止打印。它甚至没有显示任何错误消息。对于代码中的任何错误,或者这是一个非常愚蠢的问题,我深表歉意。对于PHP和MySQL,我几乎是一个完全的初学者。
发布于 2011-07-11 06:05:10
您可能想从您的问题中删除您的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()); https://stackoverflow.com/questions/6643846
复制相似问题