我有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
应该以html格式从php文件中输出打印输出
<h3> Your First ClassPeriod is<?php echo $row['Classperiod1']?></h3>
我已经测试了这个并使用具有特定用户名的文件(ex.John,Andrew等)并且它将打印出课程期间罚款。由于某种原因尝试将WHERE
与SESSION
变量一起使用会阻止其打印。它甚至没有显示任何错误消息。
对代码中的任何错误表示道歉,或者这是一个非常愚蠢的问题。我几乎是一个关于PHP和MySQL的绝对初学者
答案 0 :(得分:0)
您可能想要从您的问题中删除您的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());