Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/257.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_Php_Mysql - Fatal编程技术网

基于数组的查询php

基于数组的查询php,php,mysql,Php,Mysql,我不想一次在mysql数据库中搜索一个变量,而是要搜索多个变量,并将其放入初始查询字符串中 所以不是 $query="SELECT * FROM table1 WHERE state = 'CA' OR state = 'CO' OR state = 'TX'"; 我想要 $states = ("CA,CO,TX"); $query="SELECT * FROM table1 WHERE state = $states"; 我试过了 <? include("connect.php");

我不想一次在mysql数据库中搜索一个变量,而是要搜索多个变量,并将其放入初始查询字符串中

所以不是

$query="SELECT * FROM table1 WHERE state = 'CA' OR state = 'CO' OR state = 'TX'";
我想要

$states = ("CA,CO,TX");
$query="SELECT * FROM table1 WHERE state = $states";
我试过了

<?
include("connect.php"); // file to connect to db
$states = array(CA,TX);
$states_str = implode(",", $states);


$query="SELECT * FROM table1 WHERE state IN ($states_str)";

$result=mysql_query ($query);
while($row = mysql_fetch_array($result)) {
echo $row['state'];
}

?>
这是11号线

while($row = mysql_fetch_array($result)) {
然而,如果我使用这段代码,我会得到一个结果,结果表明,当我切换回旧的常规查询时,它可以工作

<?
include("connect.php"); // file to connect to db
$states = array(CA,TX);
$states_str = implode(",", $states);


$query="SELECT * FROM table1 WHERE state = 'CA'";

$result=mysql_query ($query);
while($row = mysql_fetch_array($result)) {
echo $row['state'];
}

?>


但是我绕过了introde()这个东西,我在其他地方找到了它,但是它对我不起作用。显然,查询失败了,因为字符串值没有被引用

尝试:


请不要在新应用程序中使用
mysql\u query
。它已被弃用,如果使用不当会很危险,并且将从PHP的未来版本中删除。一个现代的替代品。像这样的导游会帮助你避免犯这样的错误。。。想象一下当“某人”决定他们不喜欢语法时所涉及的工作。。。在re-PHP中,我最大的缺点之一就是潜入数不清的代码行,在一切正常的情况下重新编写代码。前一天起作用的东西第二天就消失了,你不知道为什么,当你发现你必须重写很多代码。确实令人讨厌。
mysql\u query
已经被弃用了一段时间,并且被广泛认为已经过时至少五年了。记住“工作出色”是一件主观的事情。如果你的代码充满了SQL注入错误,那就真的不好了
<?
include("connect.php"); // file to connect to db
$states = array(CA,TX);
$states_str = implode(",", $states);


$query="SELECT * FROM table1 WHERE state = 'CA'";

$result=mysql_query ($query);
while($row = mysql_fetch_array($result)) {
echo $row['state'];
}

?>
$states = array('CA','TX');
$states_str = implode("','", $states);
$query="SELECT * FROM table1 WHERE state IN ('$states_str')";
<?
include("connect.php"); // file to connect to db
$states = array('CA','TX');
$states_str = implode("','", $states);
$states_str = rtrim($states_str,",'");


$query="SELECT * FROM table1 WHERE state IN ('$states_str')";

$result=mysql_query ($query);
if($result){
while($row = mysql_fetch_array($result)) {
echo $row['state'];
}
}
?>
 <?php
 include('../testi.inc');

 $states = array('CA','TX');
 $states_str = implode("','", $states);

 $query = "SELECT * FROM states WHERE state IN ('$states_str')";

 $result=mysqli_query ($db,$query) or die(mysql_error());
 while($row = mysqli_fetch_assoc($result)) {
 echo $row['state'];
 }

 ?>