SQL查询没有返回任何内容

时间:2012-07-20 23:40:31

标签: php mysql sql

您好我正在尝试运行以下查询但似乎没有返回任何内容 我想要的是从我的作业表中返回选择的job_type的job_discription。

任何帮助都会很棒,因为我花了好几个小时试图解决它。

谢谢

阿兰

<input type="hidden" name="JOB_TYPE" value="<?php print $_POST['JOB_TYPE'];?>"/>

<?php
$Query = " (SELECT JOB_TYPE, JOB_DISCRIPTION FROM jobs  " .
"WHERE jobs.JOB_TYPE ='$_POST[JOB_TYPE]' " .
"AND jobs.JOB_DISCRIPTION = 'JOB_DISCRIPTION')";

$Result = mysqli_query($DB, $Query);  
?>

<?php  
$Result = mysqli_query($DB,$Query)or die(mysqli_error($DB));

while ($Row = mysqli_fetch_assoc($Result))  // Now we go through the data displaying 
{

print  $Row ['JOB_DISCRIPTION']  ;  

}
?>

3 个答案:

答案 0 :(得分:2)

首先,代码很容易被sql注入:你不应该直接使用$ _POST数据。如果您想要特定类型的描述,请先删除最后一个条件。

答案 1 :(得分:1)

从最后删除AND语句:

AND jobs.JOB_DISCRIPTION = 'JOB_DISCRIPTION'

同时从查询语句周围删除括号( )

答案 2 :(得分:0)

" -- quotation marks are only required at the start and end
SELECT JOB_TYPE
     , JOB_DISCRIPTION -- some people spell description with an 'e'
  FROM jobs  
 WHERE jobs.JOB_TYPE =$_POST['JOB_TYPE']    -- escape data (using modern methods) to prevent injection and note 
   AND jobs.JOB_DISCRIPTION = 'JOB_DISCRIPTION'; -- This is really strange
"