gpt4 book ai didi

PHP MySQL 选择长度错误

转载 作者:行者123 更新时间:2023-11-29 03:17:49 25 4
gpt4 key购买 nike

MySQL 数据库包含 11,000 多行和 3 个分配的列:价格、UPC 代码和描述。在同一台机器(Ubuntu 18.04)上运行 LAMP,我使用 PHP 在页面加载时获取数据库的每一列,并将其回显到 javascript 数组中,然后用户在文本框中搜索这些数组。唯一的问题是我的查询只允许我选择 644 个项目,然后才加载任何内容。这是一个问题,因为没有显示 10,356 多行。

php文件:

<?php
session_start();
$conn = new mysqli($servername, $username, $password, $dbname);
$sql = "SELECT * FROM sys.pds limit 644;";
$result = $conn->query($sql);
if (!$result) {
printf("Errormessage: %s\n", mysqli_error($conn));
}
if ($result->num_rows > 0) {
// output data of each row
while($row = $result->fetch_assoc()) {
$pds_code[] = $row["Code"];
$pds_desc[] = $row['Description'];
$pds_prce[] = $row["Price"];
}
}
$sqlDesc = json_encode($pds_desc);
$sqlPrice = json_encode($pds_prce);
$sqlCode = json_encode($pds_code);
echo "pds_descs = ". $sqlDesc . ";\n";
echo "pds_codes = ". $sqlCode . ";\n";
echo "pds_Prices = ". $sqlPrice . ";\n";

?>

返回(从 Chrome 控制台):

pds_descs = ["desc1","desc2","etc..."];
pds_codes = ["code1","code2","etc..."];
pds_Prices = ["price1","price2","etc..."];

当限制设置为 645(或移除)时,数组变为:

pds_descs = ; <--What triggers the error in the console
pds_codes = ["code1","code2","etc..."];
pds_Prices = ["price1","price2","etc..."];

它变得更有趣了 因为“描述”列是唯一没有收到任何东西的列,我尝试用数字而不是名称来引用该列,替换

$pds_desc[] =  $row['Description'];

$pds_desc[] =  $row[0];

*0 是“描述”的正确行。不是抛出相同的输出,而是填充一个用 null 填充的小数组(20-30 行):

pds_descs = [null,null,null,...];
pds_codes = ["code1","code2","etc..."];
pds_Prices = ["price1","price2","etc..."];

我如何修复以在 js 中将完整的 11,000+ 数据库加载到其数组中以消除 644 的限制?我读过有关使用 Ajax 搜索客户端--> 服务器而不是在加载时将数据库旁加载到客户端的信息,但我从未使用过它,感觉这仍然是一个值得探索的途径。我还阅读了有关增加 MySQL/PHP 内存的信息,但经过大量努力并修改 php.ini 和 my.cnf 仍然没有任何反应。

最佳答案

错误是条目 645 包含破坏 json_encode() 的非 ASCII 字母;陈述。为了解决这个问题,我在 MYSQL 中运行了一个查询:

SELECT *
FROM sys.pds
WHERE Description <> CONVERT(Description USING ASCII);

这带来了一个不符合 ASCII 的条目列表(我有 8 个条目),我修改了元素普通字母数字字符并应用了这些条目。刷新 chrome 网页后,所有 11,745 行都可以加载!

关于PHP MySQL 选择长度错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51792074/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com