2013-03-29 46 views
0

對於這個問題還是比較新的,並且遇到了一個問題,我一直在尋找很多教程,並且無法找到解決問題的方法。sql根據字段值從數組中刪除數據

我有一個選擇查詢從我的sql數據庫中獲取數據,但是我需要爲訪問它的每個用戶定製數據,所以需要添加一個進一步的查詢,我有一個cookie讀入用戶值' $ user',並且數據庫中有一個未放入表中的列,但需要檢查如果列'privacy'的值設置爲'1',並且$ user不是該行的調查員,則丟棄並執行不放在桌子上。然而,與未設置爲隱私的所有數據填充=「1」,或者設置爲隱私= 1和研究者=「$用戶」

$sql="SELECT * FROM evidence WHERE $evidencevariable = '".$evidencespecify."'"; 

$result = mysql_query($sql); 

if($result === FALSE) { 
    die(mysql_error());} 

echo "<table class='sortable' border='1' id='table'> 
<thead><tr> 
<th>Id</th> 
<th>Case Id</th> 
<th>Investigator</th> 
<th>Evidence Type</th> 
<th>Created</th> 
<th>Modified</th> 
<th>LS</th> 
<th>PS</th> 
<th>Length</th> 
<th>Importance</th> 
<th>Information</th> 
</tr></thead><tbody>"; 

while($row = mysql_fetch_array($result)) 
    { 
    echo "<tr>"; 
    echo "<td>" . $row['Id'] . "</td>"; 
    echo "<td>" . $row['Case_ID'] . "</td>"; 
    echo "<td>" . $row['Investigator'] . "</td>"; 
    echo "<td>" . $row['Evidence_Type'] . "</td>"; 
    echo "<td>" . $row['Created'] . "</td>"; 
    echo "<td>" . $row['Modified'] . "</td>"; 
    echo "<td>" . $row['LS'] . "</td>"; 
    echo "<td>" . $row['PS'] . "</td>"; 
    echo "<td>" . $row['Length'] . "</td>"; 
    echo "<td>" . $row['Importance'] . "</td>"; 
    echo "<td>" . $row['Information'] . "</td>"; 
    echo "</tr>"; 
    } 
echo "</tbody></table>"; 

我怎樣才能解決這個問題,讓我需要添加更多的是在開始處的select語句,還是有一種查詢數組的方式來在數據放入表之前刪除數據?

任何幫助,將不勝感激!

回答

0

看來你可以很容易地修改SQL喜歡的東西:

$sql="SELECT * FROM user WHERE $evidencevariable='$evidencespecifiy' AND (Privacy=0 or (Privacy=1 AND investigator='$user'))"; 
+0

對不起這不是問題的最好的解釋: 所以我需要SELECT * WHERE $證據變量= $證據SPECIFY 只顯示該數據如果(隱私= 0或隱私= 1調查員= $用戶) 顯示結果..我希望解釋它好一點!!! – James

+0

SELECT * FROM'user' WHERE $ evidencevariable = $ evidencespecifiy AND ONLY選擇該數據IF 'Privacy' = 0或('Privacy' = 1 AND'Investigator' = $用戶) DISPLAY DATA – James

+0

我修改查詢並根據您的意見更新了我的答案。 – bubba