首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >行数与打印的行数不同

行数与打印的行数不同
EN

Stack Overflow用户
提问于 2017-10-06 04:16:15
回答 1查看 31关注 0票数 0

因此,我尝试将数据库中的所有行回显到一个文件中,问题是它丢失了大约2800行,并且到处都找不到它们。

我已经尝试了一个try-catch,不同的获取数据的方法,并且还制作了一个用于循环遍历结果并使用data_seek移动指针的手册……

下面是代码

代码语言:javascript
复制
$sql = 'SELECT connectedProducts,id,price,masterprice,cardprice,name,url,fullImage,categoryid1,categoryid2,categoryid3,sku,connectedCategory,connectedPrice,uniqueID 
        FROM sku_new 
        where name !="" and stock="in stock" and price != "" and masterprice != "%No%" 
        and fullimage != "http:" AND price != "No disponible" 
        and masterprice !="No disponible" and cardprice != "No disponible"';
$result=mysqli_query($con,$sql);


while ($row = mysqli_fetch_array($result, MYSQLI_ASSOC)) {
    echo $row['sku']."\r\n";
}

这将打印38854行数据。然而,当我这样做的时候:

代码语言:javascript
复制
$sql = 'SELECT connectedProducts,id,price,masterprice,cardprice,name,url,fullImage,categoryid1,categoryid2,categoryid3,sku,connectedCategory,connectedPrice,uniqueID 
        FROM sku_new 
        where name !="" and stock="in stock" and price != "" and masterprice != "%No%" 
        and fullimage != "http:" AND price != "No disponible" 
        and masterprice !="No disponible" and cardprice != "No disponible"';
$result=mysqli_query($con,$sql);

$row_cnt = $result->num_rows;
echo $row_cnt;

我得到41695 ..。所以我不知道其余的行发生了什么,它们似乎消失了,我尝试了不同的方法来获取它们,但似乎都不起作用。但是,如果我直接在DB上对DB可视化工具进行查询,我会正确显示41695行...我在这件事上伤透了脑筋,这没有任何意义..我做错了什么?

===== EDIT=========如果我从以下位置修改查询:

代码语言:javascript
复制
$sql = 'SELECT connectedProducts,id,price,masterprice,cardprice,name,url,fullImage,categoryid1,categoryid2,categoryid3,sku,connectedCategory,connectedPrice,uniqueID 
            FROM sku_new 
            where name !="" and stock="in stock" and price != "" and masterprice != "%No%" 
            and fullimage != "http:" AND price != "No disponible" 
            and masterprice !="No disponible" and cardprice != "No disponible"';

至:

代码语言:javascript
复制
$sql = 'SELECT id,price,masterprice,cardprice,name,url,fullImage,categoryid1,categoryid2,categoryid3,sku,connectedCategory,connectedPrice,uniqueID 
            FROM sku_new 
            where name !="" and stock="in stock" and price != "" and masterprice != "%No%" 
            and fullimage != "http:" AND price != "No disponible" 
            and masterprice !="No disponible" and cardprice != "No disponible"';

我得到了全部41695行!这没有任何意义,我没有修改WHERE指令!

EN

回答 1

Stack Overflow用户

发布于 2017-10-06 04:31:34

我认为对于某些记录,$row['sku']可以是空的。尝试此代码,然后检查总计数。

代码语言:javascript
复制
$i = 1;
while ($row = mysqli_fetch_array($result, MYSQLI_ASSOC)) {
    echo $i." - ".$row['sku']."\r\n";
    $i++;

}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46594101

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档