Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/66.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 使用IN()运算符向数组中添加多个结果_Php_Mysql_Pdo - Fatal编程技术网

Php 使用IN()运算符向数组中添加多个结果

Php 使用IN()运算符向数组中添加多个结果,php,mysql,pdo,Php,Mysql,Pdo,我使用IN()操作符在一个查询中从MySQL获取多个数据。但是我在将结果添加到数组中时遇到问题 $sql = "SELECT employeeName, sum(emID) as count1 FROM people WHERE dept IN (:department1,:department2,:department3)"; $stmt = $connnect->prepare($sql); $stmt->execute(array(':department1'=>"des

我使用IN()操作符在一个查询中从MySQL获取多个数据。但是我在将结果添加到数组中时遇到问题

$sql = "SELECT employeeName, sum(emID) as count1 FROM people WHERE dept IN (:department1,:department2,:department3)";
$stmt = $connnect->prepare($sql);
$stmt->execute(array(':department1'=>"design", ':department2=>"web", ':department3=>"copywriting"));
$rslts = $stmt->fetchAll(PDO::FETCH_ASSOC);
$cont = $rslts[0]['count1']

if($cont > 0){
    $myArry['em1'] = $rslts[0]["employeeName"];
    $myArry['em2'] = $rslts[1]["employeeName"];
    $myArry['em3'] = $rslts[2]["employeeName"];
 }
编辑:


有个打字错误。我现在已经修好了<代码>如果(cont>0){好的,我会把它放在这里贝基

你没有叫$connnect的东西

编辑:

那位是你的朋友

返回值

成功时返回TRUE,失败时返回FALSE


问题是什么?聚合函数没有
groupby
?@Blaatpraat谢谢。我的
$rslts[1][“employeeName”];
$rslts[2][“employeeName”];
也会抛出一个未定义的偏移量错误。祝你好运,因为你错过了$if($cont>0){在这一行中?为什么不呢?我知道。
connnect=new-PDO('mysql:host=localhost;dbname=blah;charset=utf8','root','');
很抱歉,我认为你的拼写在其他方面是完美的。
未定义的偏移量:1
是什么意思?它指向这一行
myArry['em2']=$rslts[1][“employeeName”]
?这是一个快速阅读,直接跳到答案。随时。谢谢分享。可能会发布10行作为新答案,以便其他人可以受益
if (!$stmt->execute( [what u have] )) 
  throw new Exception('[' . $stmt->errorCode() . ']: ' . $stmt->errorInfo());