Mysql查询不返回任何行

时间:2011-04-22 03:26:37

标签: php mysql

我有一个非常简单的脚本从mysql数据库中提取数据,但是当我运行它时没有输出,我将get请求设置为与该行相关的正确值,当我在PHPmyadmin中运行SQL查询时它按预期运行。

我的代码;     

session_start();
require_once 'includes/sessions.inc.php';
require_once 'includes/config.inc.php';

if(!isLoggedIn())
{
   echo "not logged in";
}
else
{
//Connect to DB
$conn = mysql_connect($dbhost, $dbuser, $dbpass);
mysql_select_db($dbname);

$id = $_SESSION['userid'];
$contactid = $_GET['contactid'];

//Get Data from DB
$query = "SELECT id, First_name, Last_name, email_addres, phone_number, photo, owner FROM tbl_contcats where id = '$contactid';";
$result = mysql_query($query) or die(mysql_error());

echo '<img src="./contacts/'.$result['photo'].'"/><br>';
echo 'First name:'.$result['First_name'].'<br>';
echo 'Second name:'.$result['First_name'].'<br>';
echo 'Email Address:'.$result['First_name'].'<br>';
echo 'phone_number'.$result['First_name'].'<br>';


}

?>

PS;任何关于如何改进我的代码/清理它的反馈都是精心的

1 个答案:

答案 0 :(得分:5)

如果你想以你的方式访问变量,你首先需要获取结果的关联数组:

$rows = mysql_fetch_assoc($result);

然后您将通过

访问条目
while ($row = mysql_fetch_assoc($result)) {
    echo '<img src="./contacts/'.$row['photo'].'"/><br />';
    echo 'First name:'.$row['First_name'].'<br />';
    echo 'Second name:'.$row['First_name'].'<br />';
    echo 'Email Address:'.$row['First_name'].'<br />';
    echo 'phone_number'.$row['First_name'].'<br />';
}

您现在正在尝试从查询返回的MySQL资源中访问变量。 mysql_query本身不返回原始结果集。 ;)