私は画像をアップロードするためにアップロードフォームを使用します。 < 4メガバイトのような小さなイメージが動作します。 5.7MBのようなファイルサイズの画像をアップロードしても何もしません。ファイルをアップロードするだけではありません。私はたくさんの検索をしましたが、わかりませんでした。私はこの問題は、このコードで対処する必要があると思う:Verot class.upload.php大きなファイルをアップロード
case 'png':
if (!function_exists('imagecreatefrompng')) {
$this->processed = false;
$this->error = $this->translate('no_create_support', array('PNG'));
} else {
echo $this->file_src_pathname;
echo $this->log;
echo $this->error;
echo $image_src = @imagecreatefrompng($this->file_src_pathname);
if (!$image_src) {
$this->processed = false;
$this->error = $this->translate('create_error', array('PNG'));
} else {
$this->log .= '- source image is PNG<br />';
}
}
break;
@imagecreatefrompng(の$ this - > file_src_pathname)関数は、コードところ私のコードブレークのその部分です。私はそれをコメントアウトする以外は、そのコードの後には何も出力しません。私は既にメモリ制限を256Mに変更し、ファイルを64Mにアップロードしました。ファイル名が設定されています。大きなファイルに対処する必要があるときに、なぜ私のコードが壊れるか分かりません。皆さんのアイデアはありますか?
ファイルアップロードページ上のコードは次のとおり
//フォーム処理
は( '../は/ class.upload.php' を含む)が挙げられます。
$files = array();
foreach ($_FILES['my_field'] as $k => $l) {
foreach ($l as $i => $v) {
if (!array_key_exists($i, $files))
$files[$i] = array();
$files[$i][$k] = $v;
}
}
foreach ($files as $file) {
if(!empty($file)){
$handle = new Upload($file, 'nl_NL');
if (!file_exists("../classified_images/$adid"))
mkdir("../classified_images/$adid", 0777);
$tag_code_p = generatePassword(25);
if ($handle->uploaded) {
$oriname = $handle->file_src_name;
$handle->mime_magic_check = true;
$handle->allowed = array('image/*');
$handle->image_convert = 'jpg';
$newname = $adid."_big_".$tag_code_p;
$handle->file_new_name_body = $newname;
$handle->image_resize = true;
$handle->image_ratio_fill = true;
$handle->image_y = 600;
$handle->image_x = 800;
$handle->image_background_color = '#FFFFFF';
//ここで、アップロードのプロセスを開始します。つまり、アップロードされたファイル //を一時的な場所から希望の場所にコピーする // // $ handle-> Process( '/ home/www/my_uploads /'); $ handle->プロセス( "../ classified_images /");
// we check if everything went OK
if ($handle->processed) {
$handle->image_convert = 'jpg';
$newnamesmall =$adid."_small_".$tag_code_p;
$handle->file_new_name_body = $newnamesmall;
$handle->image_resize = true;
$handle->image_ratio_fill = true;
$handle->image_y = 94;
$handle->image_x = 125;
$handle->image_background_color = '#FFFFFF';
// now, we start the upload 'process'. That is, to copy the uploaded file
// from its temporary location to the wanted location
// It could be something like $handle->Process('/home/www/my_uploads/');
$handle->Process("../classified_images/");
$handle->clean();
//inserten in database
$sql_foto_insert = "insert into photos
(adid, photosmall, photo)
values
('$adid', '$newnamesmall.jpg','$newname.jpg')";
$foto_result = mysql_query($sql_foto_insert);
// everything was fine !
//$msg .= $oriname.' '.LANG_FOTOS_SAVED.'<br />';
$allok = 1;
} else {
// one error occured
$msg .= $handle->error . '<br />';
}
}
などがあります。自分のマシンでシステムファイルを変更した場合は、後ですべてのサービスを再起動しましたか?または、イメージをBLOBとして保存しようとしている場合、MEDIUMBLOBまたはLONGBLOBを試してみると小さすぎるかもしれません。 http://php.net/manual/en/function.error-reporting.phpとhttp://php.net/manual/en/function.mysql-error.php –