从2表中选择数据

时间:2011-06-25 05:23:20

标签: php mysql sql

$sql="SELECT * 
            FROM jobs 
      INNER JOIN job_resp ON jobs.job_id = job_resp.job_id 
           WHERE jobs.job_id = $job_id";

此查询是否正确?

3 个答案:

答案 0 :(得分:0)

尝试使用以下查询:

$sql="SELECT j.*, jr.*
            FROM jobs as j
      INNER JOIN job_resp as jr ON j.job_id = jr.job_id 
           WHERE j.job_id ='".$job_id."'";

但你应该避免*,尝试使用字段名称作为j.id,j.job_titel等。

答案 1 :(得分:0)

mysql_query()将在出错时返回FALSE。 看看http://php.net/manual/en/function.mysql-query.php

我认为在您的情况下,返回的结果不一定是错误。 因此,您可以看到没有数据显示加上“成功”通知。

答案 2 :(得分:0)

首先,您的代码容易受到SQL注入攻击

$job_id=$_GET['job_id'];

// should be
$job_id=(int)$_GET['job_id'];
// or
$job_id=mysql_real_escape_string($_GET['job_id']);

取决于jobid的数据类型。

此外,您在声明行之前回显行,因此它无法正常工作。它似乎应该在while循环中

<?php

echo "<ul>";
while($rows=mysql_fetch_array($result))
{
    echo "<li>".$rows['job_res']."</li>";
}
echo "</ul>";