2012-07-20 70 views
0

我試圖運行下面的查詢,但它似乎沒有正常工作,一個錯誤回來了:SQL查詢似乎不工作

Warning: mysqli_fetch_row() expects parameter 1 to be mysqli_result, boolean given in C:\wamp\www\VACANCY\pages\search\booking2.php on line 83 

這是同時:

$row = mysqli_fetch_row($Result) 

我想要從我的jobs表中返回所選的JOB_TITLELOCATION。任何幫助都會很棒,因爲我花了幾個小時試圖解決它。

<?php 
    $Query = "(SELECT FROM jobs " . 
     "WHERE jobs.JOB_TITLE ='$_POST[JOB_TITLE]' " . 
     "AND jobs.LOCATION = '$_POST[LOCATION]')"; 
    $Result = mysqli_query($DB, $Query); 
    while ($row = mysqli_fetch_row($Result)) 
    { 
     echo $row['JOB_TITLE'] . " " . $row['LOCATION']; 
     echo "<br />"; 
    } 
?> 
+4

你沒有選擇任何東西。你需要類似'SELECT Job_title,Location FROM jobs where ...' – GarethD 2012-07-20 15:41:48

+1

@GarethD我正要發佈相同的回覆= p – Spacemancraig 2012-07-20 15:42:46

+0

我曾發佈過:)但你清楚地打敗了我 – javajavajava 2012-07-20 15:43:15

回答

4

您需要在SELECT之後添加一些內容。例如,SELECT JOB_TITLE,LOCATION FROM ...

2

您的語句是「SELECT FROM」,因此您不會指出要選擇的內容。如果您查詢「SELECT * FROM」,則將選擇所有字段並且查詢將工作。

但請注意,您的代碼非常不安全。來自搜索表單的POST值可以被攻擊者操縱,並且查詢可以被使用,例如,截斷整個表格。閱讀更多在http://www.tizag.com/mysqlTutorial/mysql-php-sql-injection.php

+0

+1對於[SQL注入](http://bobby-tables.com/)的額外引用** – GarethD 2012-07-20 15:52:52