所以我和这里的人遇到了同样的问题:
- Problem inserting a long text in database column MYSQL PHP
- Unable to save large text in mysql thru php
但是,除了第一个帖子中发布的用于拆分文本的黑客之外,我没有看到任何真正的问题解决方案。脚本已经过测试,当文本量较小时,可以很好地保存到数据库,并且 php 脚本也可以很好地将大文本保存到 txt 文件。所以问题出在数据库方面的某个地方。
编辑:我要发布到的字段已设置为 LONGTEXT
这是我的脚本:
post.php
<?php
$data=$_POST["SData"]; //Around 76kb of text
$rName=$_POST["regName"];
include_once './db_functions.php';
$db = new DB_Functions();
$db->insertText($rName, $data);
?>
db_functions.php
//Insert Text Data into DB
public function insertText($regId, $sdata) {
try {
mysql_query("UPDATE users SET textdata = '$sdata' WHERE id = '$regId'");
}
catch (PDOException $e) {
$output = 'Error performing update: ' . $e->getMessage();
}
}
我有以下问题:
我可以通过 PHP 发送到 MySQL 数据库的最大数据大小(字符数?)是多少?我尝试发布的所有文本都是不必要的,因此我可能会在发布之前对其进行限制。 (但是越多越好)
是否有一个实际的解决方案可以让我通过 PHP 发送大型数据 block ?
可能使用此处找到的“mysqli_stmt::send_long_data”:http://php.net/manual/en/mysqli-stmt.send-long-data.php ? 除了手册之外,还有其他使用示例吗?
任何帮助将不胜感激,谢谢!!
最佳答案
如果您使用的是过时的 mysql
扩展,则需要转义数据:
$sdata = mysql_real_escape_string($_POST['SData']);
最好使用 PDO 或 mysqli 并使用准备好的语句。
关于php - PHP 脚本可以发送到 MySQL TEXT 字段的最大数据量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23963504/