0

我对此还是很陌生,并且遇到了一个问题,我一直在浏览很多教程,但无法找到解决问题的方法。

我有一个选择查询从我的 sql 数据库中获取数据但是我需要为每个访问它的用户自定义数据,所以需要添加一个进一步的查询,我有一个 cookie 读入用户值'$user'和数据库中有一个列未放入表中,但是需要检查列“privacy”的值是否设置为“1”并且 $user 不是该行的调查者丢弃并且不放入桌子。但是填充所有未设置为privacy='1'或设置为privacy=1且调查员='$user'的数据

$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 语句添加更多内容,还是有办法在将数据放入表之前查询数组以删除数据?

任何帮助,将不胜感激!

4

1 回答 1

0

看来您可以轻松地将 sql 修改为:

$sql="SELECT * FROM user WHERE $evidencevariable='$evidencespecifiy' AND (Privacy=0 or (Privacy=1 AND investigator='$user'))";
于 2013-03-29T13:41:16.430 回答