2016-12-16 90 views
1

如何使用具有多个条件的PDO语句填充我的数组?PHP PDO多重选择,多重条件

$stmt = $conn->prepare("SELECT * 
         FROM the_table 
         WHERE stmt1 = '$value1' 
          AND stmt2 = '$value2' 
         ORDER BY sent_date"); 
$stmt->execute(); 
$row = $stmt->fetchAll(); 

所以,这个工作,但我需要我的表中的表数据,因为我只会得到第一个语句值。我的意思是?如果我的第一个值(如$ value1)超出了对第二个语句值的选择更改(如$ value2)。我会得到我所有的表格数据,其中存在$ value1和$ value2 我需要像$ row这样的数组值数值

对不起,对于这个组合:D。 在此先感谢。

+0

这不是你如何使用预处理语句..我也不知道你的问题是什么。 – chris85

+0

欢迎来到SO。 请阅读[我可以问哪些主题](http://stackoverflow.com/help/on-topic) 和[如何提出一个好问题](http://stackoverflow.com/help/how-to - 问) 和[完美的问题](http://codeblog.jonskeet.uk/2010/08/29/writing-the-perfect-question/) 以及如何创建[最小,完整和可验证的例子] (http://stackoverflow.com/help/mcve) – RiggsFolly

+0

你不明白什么? – Chraze

回答

0

基本上,你会准备好您的查询像

<?php 

/* insert code for database connexion here */ 

$value1 = 'something'; 
$value2 = 'whatever'; 

/* The query itself */ 
$query = $connexion->prepare('SELECT * FROM the_table WHERE stmt1 = :first AND stmt2 = :second ORDER BY sent_date'); 

/* Now we add the wanted values to our query */ 
$query->execute([ 
    'first' => $value1, 
    'second' => $value2 
]); 

$result = $query->fetchAll(); 

不要忘记检查,如果结果是你所期望的。