RSET_HEADER数据包

问题描述 投票:0回答:1

<?php error_reporting(E_ALL); ini_set('display_errors', 1); $host = '10.150.150.75'; $user = 'usr'; $pass = 'teste'; $dbname = 'api'; $port = 6450; $conn = new mysqli($host, $user, $pass, $dbname, $port); if ($conn->connect_error) { die("connection error: " . $conn->connect_error); } $conn->set_charset("utf8mb4"); $conn->query("SET SESSION sql_mode = ''"); $sql = "CREATE TABLE IF NOT EXISTS test ( id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(100) )"; if (!$conn->query($sql)) { die("Error: " . $conn->error); } if (!$conn->query("INSERT INTO test (name) VALUES ('Teste')")) { die("Error: " . $conn->error); } $last_id = $conn->insert_id; // Pega o ID inserido $sql_update = "UPDATE test SET name = 'Atualizado' WHERE id = $last_id"; if (!$conn->query($sql_update)) { die("Error on UPDATE: " . $conn->error); } else { echo "Success!<br>"; } while ($conn->more_results()) { $conn->next_result(); } $result = $conn->query("SELECT * FROM test"); if ($result) { while ($row = $result->fetch_assoc()) { echo "ID: " . $row['id'] . " - Nome: " . $row['name'] . "<br>"; } } else { die("Error: " . $conn->error); } if (!$conn->query("DROP TABLE IF EXISTS test")) { die("Error: " . $conn->error); } $conn->close(); ?>

我对使用mysqli有限制,因为这是我无法更改的旧系统。 enter image description here 最有可能造成此错误的原因是max_allowed_packet在您的MySQL Server上的设置太小,无法适应查询结果的大小。

您可能会尝试使用PHP增加它,以查看它是否有帮助:
$mysqli->set_opt(MYSQLI_OPT_MAX_ALLOWED_PACKET, 16777216);

如果PHP测试成功,则增加mysql conf中的max_allowed_packet值。
php mysql mysqli
1个回答
0
投票
https://github.com/migliori/power-lite-pdo

(我是作者,它是免费&开源的)。

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.