如何编写一个php规则,其中一个mysql字段可以等于多个php变量?

时间:2014-01-22 20:51:38

标签: php mysql sql

我已经尝试了所有这些方法而且它不起作用......

if ($row['dropdate1'] == "".$datemon."" || $row['dropdate1'] == "".$datetue."" || $row['dropdate1'] == "".$datewed."" || $row['dropdate1'] == "".$datethu."" || $row['dropdate1'] == "".$datefri."") {}

if ($row['dropdate1'] == ".$datemon." || $row['dropdate1'] == ".$datetue." || $row['dropdate1'] == ".$datewed." || $row['dropdate1'] == ".$datethu." || $row['dropdate1'] == ".$datefri.") {}

if ($row['dropdate1'] == "$datemon" || $row['dropdate1'] == "$datetue" || $row['dropdate1'] == "$datewed" || $row['dropdate1'] == "$datethu" || $row['dropdate1'] == "$datefri") {}

if ($row['dropdate1'] == $datemon || $row['dropdate1'] == $datetue || $row['dropdate1'] == $datewed || $row['dropdate1'] == $datethu || $row['dropdate1'] == $datefri) {}

更新:

这个问题不是关于数据库查询,而是让它引入正确的记录。正确的记录已经显示。这是关于记录如何在html表中的html / php页面上显示。

如果记录有1个dropdate,则只显示一行。

如果记录有2个丢弃日期,那么它将在表格中显示为2行。

如果记录有6个丢弃日期,则最多可达6行。

所以,如果只有一个下拉日期等于我上面提到的一个php变量,我只想显示该行,而是显示该记录的所有下拉日期行。

所以让我们说$ datethu = 01-23-2014,这个日期是在任何一个dropdate字段下的记录之一,让我们说dropdate4。

表格将显示如下:

drop  id    company  jobname    dropdate     bunch-of-other-columns
1     260   abc      whatever   01-02-2014   ...
2     260   abc      whatever   01-09-2014   ...
3     260   abc      whatever   01-16-2014   ...
4     260   abc      whatever   01-23-2014   ...
5     260   abc      whatever   01-30-2014   ...
6     260   abc      whatever   02-06-2014   ...

如果所有的dropdates都是php变量之一,那么上述内容将是准确的。但由于只有一个dropdates包含一个php varibales,因此该表应该如下所示:

drop  id    company  jobname    dropdate     bunch-of-other-columns
4     260   abc      whatever   01-23-2014   ...

2 个答案:

答案 0 :(得分:1)

将所有可能的值放在数组中,然后使用in_array()

$values = array($datemon, $datetue, $datewed, $datethu, $datefri);
if (in_array($row['dropdate1'], $values)) {
    // we have a match
}

答案 1 :(得分:1)

你不应该在php中做出选择。尝试这样的事情:

 $qouery = "SELECT * FROM yourTable WHERE yourColumn IN ('".$datemon."', '".$datetue."', '".$datewed."')";

然后执行查询并使用结果。

亲切的问候