2

.pdf ファイルをデータベースにアップロードするための php コードを作成しました。コードは、サイズが 1 mb未満のすべての pdf に対して完全に機能しています。

注:: 次の変更で php.ini を変更しました

post_max_size=128M
upload_max_filesize=128M
memory_limit = 128M
max_execution_time = 300
max_input_time = 300

しかし、それは私の問題を解決していません.問題は同じままです.「アップロードに失敗し、mysqlサーバーが消えたというエラーをスローしています. 私のPHPコードは::

if(isset( $_POST['save']) and $_POST['save'] == "save")
{
  ini_set('default_socket_timeout', 1500);
  include_once $_SERVER['DOCUMENT_ROOT'].'/include/db.inc.php' ;
  if (!is_uploaded_file($_FILES['upload']['tmp_name']))
  {
    echo 'There was no file uploaded!';
    exit();
  }
  /*NOW I HAVE WRITTEN THE PHP CODE TO INSERT THE FILE INTO MY DATABASE.WHAT I CAN
  ASSURE YOU THIS PART IS PERFECT BECAUSE THE CODE IS SUCESSFUL ALL OTHER CASES
  WHICH ARE LESS THAN 1 MB IN SIZE*/

注::クエリの送信中に再接続も使用しました。したがって、接続の問題はありません

編集max_allowed_packetmy.ini の ようなものはありません

4

2 に答える 2

8

MySQL サーバー (Windows では my.ini) も構成する必要があると思います。

[mysqld]
    max_allowed_packet=16M

そこに - または十分に高い数

ここで解決された同じ問題にも注意してください:最大許容パケットサイズを変更する方法

于 2013-03-15T14:08:18.853 に答える
0

これを引き起こす可能性のあるものがかなりあります。ここで概要を確認できます: http://dev.mysql.com/doc/refman/5.1/en/gone-away.html

これを試すことから始めることができます:

ini_set('mysql.connect_timeout', 300);
ini_set('default_socket_timeout', 300);
于 2013-03-15T14:09:50.413 に答える