PHP,SQL资源ID#10。我怎样才能获得价值?

时间:2015-01-16 11:19:13

标签: php mysql sql

我想从此查询中获取值,而是获得资源ID#10

echo$result = mysql_query("SELECT car.currentkm FROM car INNER JOIN details ON car.id= ".$_REQUEST['cartype']." AND details.cartype = ".$_REQUEST['cartype']."");
if (mysql_num_rows($result)) {
    $old = mysql_fetch_assoc($result);
   echo$old['oldkm'];
}
else {
    echo 1;
}

1 个答案:

答案 0 :(得分:2)

为什么在echo之前使用$result= ???这是显示ResourceId的内容。

试试这个:

$result = mysql_query("SELECT car.currentkm FROM car INNER JOIN details ON car.id= ".$_REQUEST['cartype']." AND details.cartype = ".$_REQUEST['cartype']."");
if (mysql_num_rows($result)) {
    $old = mysql_fetch_assoc($result);
    echo $old['currentkm'];
}
else {
    echo 1;
}

<强> N.B:

1-直接在您正在进行的查询中使用$_REQUEST会使您的代码WIDE打开以进行sql注入。在查询中使用它们之前,需要清理变量。

2- mysql_ *函数已弃用,将在以后的php版本中删除,您应该开始使用PDOmysqli,另外在其中一个驱动程序中使用预处理语句将保护您的代码免受SQL攻击注射时无需清理变量。