首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >只有在使用限制时才会显示php和mysql查询结果

只有在使用限制时才会显示php和mysql查询结果
EN

Stack Overflow用户
提问于 2015-01-29 18:55:43
回答 2查看 336关注 0票数 0

为了学习更多的php、mysql & json,我从:http://www.mysqltutorial.org/wp-content/uploads/downloads/2013/05/mysqlsampledatabase1.zip下载了一个演示数据库。

我想用编辑和删除按钮以html表格格式显示所有客户。

我的SQL语句是

代码语言:javascript
复制
"SELECT * FROM customers" 

它不返回结果,也不返回错误。但是,如果我将SQL语句更改为

代码语言:javascript
复制
"SELECT * FROM customers LIMIT 11" 

返回122行中的前11行。使用1-11的限制将返回结果,而任何12或更多的返回都会注意到。

有人能帮我弄清楚这件事吗?

更新:协助代码。

代码语言:javascript
复制
<?php
	$servername = "localhost";
	$username = "root";
	$password = "root";
	$dbname = "classicmodels";
	$dbh = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password) or die(mysql_error());
	$sql = 'SELECT * FROM customers LIMIT 12' or die(mysql_error());
	$stmt = $dbh->prepare($sql);
	$stmt->execute();
	$result = $stmt->fetchAll(PDO::FETCH_ASSOC);
	echo json_encode($result);
    die();
?>

提前谢谢你,

Bg

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-01-29 19:13:56

问题不在SQL代码中。如果

SELECT * FROM customers LIMIT 11

工作正常,所以

SELECT * FROM customers LIMIT 12

因此,您的php代码可能有错误。它要么无法正确处理检索到的第12条记录,要么由于其他原因无法处理12+限制。你能用相关的php代码来扩展这个问题吗?

编辑

若要正确显示特殊字符,如“Lule”(您的第12条记录),必须匹配数据库设置、数据库连接和输出中的字符集。

例如,如果数据库排序规则为UTF-8,则在脚本SET NAMES 'utf8'中进行第一个查询。然后,在打印json之前,向浏览器发送一个头(我假设您要输出到浏览器):header('Content-Type: text/json; charset=utf-8');

通过正确配置数据库,集合名称就会过时。

我发现一些有用的指南更详细地解释了这一点:

票数 1
EN

Stack Overflow用户

发布于 2015-01-29 19:05:05

由于要从表中选择所有内容,因此可能需要将语法更改为:

从客户中选择*(而不是@)

极限x

其中x是你的数字,这应该允许超过12的数字。

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

https://stackoverflow.com/questions/28222406

复制
相关文章

相似问题

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