だから私はここの人々と同じ問題を抱えています:
しかし、テキストを分割するために最初に投稿した男がハックした以外に、問題に対する真の解決策は見当たりませんでした。スクリプトはテスト済みで、テキストが少量の場合はデータベースに正常に保存されます。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を介して大きなデータチャンクを送信できる実際のソリューションはありますか?
ここにある「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を使用し、プリペアドステートメントを使用することをお勧めします。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加