Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/278.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/60.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 即使数据库中存在数据,MySQL查询也不返回任何结果_Php_Mysql - Fatal编程技术网

Php 即使数据库中存在数据,MySQL查询也不返回任何结果

Php 即使数据库中存在数据,MySQL查询也不返回任何结果,php,mysql,Php,Mysql,为什么此查询不显示多个数据。即使我有10/12的数据,但这行只显示1。检查我已将其限制为3,但它仅显示1 $getAds = mysql_query("SELECT * FROM advertises WHERE status='RUNNING' AND adult='0' AND (country LIKE '%$test%' OR country='ALL') AND (device LIKE '%$pabu%' OR device

为什么此查询不显示多个数据。即使我有10/12的数据,但这行只显示1。检查我已将其限制为3,但它仅显示1

$getAds = mysql_query("SELECT * 
     FROM advertises 
     WHERE status='RUNNING' 
     AND adult='0' 
     AND (country LIKE '%$test%' OR country='ALL') 
     AND (device LIKE '%$pabu%' OR device='ALL') 
     ORDER BY rand() 
     LIMIT 0,3");
我的数据库结构

广告的表结构--

--------转储表
广告的数据


状态是mysql中的一个关键字。所以试试这个

$getAds=mysql_query("SELECT * FROM advertises WHERE `status`='RUNNING' AND adult='0' AND (country LIKE '%test%' OR country='ALL') AND (device LIKE '%pabu%' OR device='ALL') ORDER BY rand() LIMIT 0,3");

您是否尝试对mysql\u查询返回的结果使用mysql\u fetch\u assoc? 请参阅特定示例#2

mysql_query()
已被弃用,您可以改用PDO

试试下面

<?php
    $dbcon = new PDO("mysql:host=localhost;dbname=test", 'root', '');

    $test = 'All';
    $pabu = 'All';
    $qry = "SELECT * 
     FROM advertises 
     WHERE status='RUNNING' 
     AND adult='0' 
     AND (country LIKE '%$test%' OR country='ALL') 
     AND (device LIKE '%$pabu%' OR device='ALL') 
     ORDER BY rand() 
     LIMIT 0,3";

     $rq = $dbcon->query($qry);
     $op = ( $rq ) ? $rq->fetchAll(PDO::FETCH_ASSOC) : '';
     echo '<pre>'; print_r($op);
?>


您确定,您有更多符合这些条件的数据吗?是的,我确定。我存储了40多个数据\n为什么你不能删除你的条件,在phpmyadmin上手动运行任务,并检查你是否获得了更多记录这也是同样的结果兄弟,我不这么认为,这是因为条件你可以发布你的表结构和记录请提供你的mysql表结构和示例数据我是新手。您需要哪种类型的结构MySQL表及其使用的列和数据类型。--Wap PhpMyAdmin 211--生成时间:2016-01-06 05:24--MySQL服务器版本:5.5.47-MariaDB--PHP版本:5.4.45--数据库:
adquicom\u d
---------------------------------------表的表结构
广告
——创建表
广告
id
int(11)非空自动增量,
userid
int(11)非空,
name
varchar(5000)非空,
url
varchar(5000)非空,
type
varchar(500)非空,
device
varchar(500)非空,
varchar(500)不为空,
time
varchar(500)不为空,
status
varchar(500)NOT NU--Wap PhpMyAdmin 211--生成时间:2016-01-06 05:24--MySQL服务器版本:5.5.47-MariaDB--PHP版本:5.4.45--数据库:
adquicom\u d
----------------------------------------------------------------表
广告的表结构
--创建表
广告
id
int(11) 非空自动递增,
userid
int(11)非空,
name
varchar(5000)非空,
url
varchar(5000)非空,
type
varchar(500)非空,
device
varchar(500)非空,
country
varchar(500)非空,
time
varchar(500)非空,
status
varchar(500)不需要,因为
mysql\u查询
的结果不是来自查询的实际数据。顺便说一句,尝试使用PDO,因为
mysql\u*
函数已被弃用。任何示例请检查我在回答中提供的链接,然后查看示例#2@user5742387你可以找到PDO的例子,但我需要mysql instea我对pdo没有任何想法
$getAds=mysql_query("SELECT * FROM advertises WHERE `status`='RUNNING' AND adult='0' AND (country LIKE '%test%' OR country='ALL') AND (device LIKE '%pabu%' OR device='ALL') ORDER BY rand() LIMIT 0,3");
<?php
    $dbcon = new PDO("mysql:host=localhost;dbname=test", 'root', '');

    $test = 'All';
    $pabu = 'All';
    $qry = "SELECT * 
     FROM advertises 
     WHERE status='RUNNING' 
     AND adult='0' 
     AND (country LIKE '%$test%' OR country='ALL') 
     AND (device LIKE '%$pabu%' OR device='ALL') 
     ORDER BY rand() 
     LIMIT 0,3";

     $rq = $dbcon->query($qry);
     $op = ( $rq ) ? $rq->fetchAll(PDO::FETCH_ASSOC) : '';
     echo '<pre>'; print_r($op);
?>