2013-10-29 61 views
0

我想要做的是提取一個數組的元素,並運行與數組元素作爲條件的SQL查詢。我面臨的問題是查詢不返回任何內容。代碼如下:與數組元素運行SQL查詢

//extracting the array elements 
     foreach ($t as $value) { 
     extract($value); 

    } 
$sql = "SELECT * FROM daily_log where employee_log_id='$employee_log_id' AND log_date='$value'</br>"; 
      $result = mysql_query($sql); 
      $row = mysql_fetch_array($result); 
     echo $row['in_time']; 
     echo $row['out_time']; 

echo $ row ['in_time']和echo $ row ['out_time'];沒有顯示任何東西。

有誰能幫我弄清楚問題是什麼 在此先感謝。

回答

0

問題是您的sql查詢代碼在foreach循環之外。該範圍中不存在$value變量。
試試這個:

foreach ($t as $value) { 
    extract($value); 
    $sql = "SELECT * FROM daily_log where employee_log_id='$employee_log_id' AND log_date='$value'</br>"; 
    $result = mysql_query($sql); 
    $row = mysql_fetch_array($result); 
    echo $row['in_time']; 
    echo $row['out_time']; 
} 

編輯:
但是我不明白你正在嘗試做的。我認爲你需要extract()函數或foreach循環。另外,爲什麼在你的sql查詢字符串中有一個</br> html標記?
你想要這樣的東西嗎?

foreach ($t as $key -> $value) { 
    $sql = "SELECT * FROM daily_log where employee_log_id='$key' AND log_date='$value'"; 
    $result = mysql_query($sql); 
    $row = mysql_fetch_array($result); 
    echo $row['in_time']; 
    echo $row['out_time']; 
}