Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/238.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
上传具有gif格式php的图片_Php_Jquery_Html_Mysql - Fatal编程技术网

上传具有gif格式php的图片

上传具有gif格式php的图片,php,jquery,html,mysql,Php,Jquery,Html,Mysql,我尝试上传图片,其中有jpg格式,然后成功,但当我尝试上传gif格式的结果给黑色空白图片。我想我必须在代码中添加gif格式的脚本,但我不知道应该添加什么。 下面是blog.php中的代码 <form method=POST action=$aksi?module=blog&act=input class='form-horizontal' enctype='multipart/form-data'> <div class='form-group'> <la

我尝试上传图片,其中有jpg格式,然后成功,但当我尝试上传gif格式的结果给黑色空白图片。我想我必须在代码中添加gif格式的脚本,但我不知道应该添加什么。 下面是blog.php中的代码

<form method=POST action=$aksi?module=blog&act=input class='form-horizontal' enctype='multipart/form-data'>
<div class='form-group'>
 <label for='produkImageUpload'>Image *:</label>
  <div class='input-group'>
   <input type='file' multiple='' name='fupload'>
  </div>
<button type='submit' class='btn btn-success'><i class='fa fa-floppy-o'></i>&nbsp;Save</button>
</div>
</form>

请帮我解决这个问题。谢谢

线索是
imagecreatefromjpeg
,它从jpeg创建图像

您应该使用
[getImageSize()][1]
查找格式,如果需要,可以使用
[imagecreatefromgif][2]
。或者使用
[imagecreatefromstring][3]
,这两种方法都可以


这还有一个优点,即如果“getimagesize”失败,您知道它不是有效的图像。

线索是
imagecreatefromjpeg
,它从jpeg创建图像

您应该使用
[getImageSize()][1]
查找格式,如果需要,可以使用
[imagecreatefromgif][2]
。或者使用
[imagecreatefromstring][3]
,这两种方法都可以


这还有一个好处,即如果“getimagesize”失败,您就知道它不是有效的图像。

那么您做了一些错误的事情,但是在不知道您到底更改了什么的情况下,无法确切地说出更改的内容。但应该有足够的信息让你调试它…好吧,你做了一些错误的事情,但不知道你到底改变了什么,不能确切地说什么。但是应该有足够的信息让你调试它。。。
include "../../config/upload.php";

    $ukuran_maksimal        = 3000000;
    $acak                   = rand(0000,9999);
    $lebar                  = 800;
    $tinggi                 = 534;

    $id_kategori            = $_POST['id_kategori_blog'];
    $folder                 = "images/blog/$id_kategori/";
    $lokasi_file            = $_FILES['fupload']['tmp_name'];
    $tipe_file              = $_FILES['fupload']['type'];
    $nama_file              = $_FILES['fupload']['name'];
    $ukuran_file            = $_FILES['fupload']['size'];
    $nama_file              = str_replace(' ', '_', $nama_file);
    $nama_file              = $acak.$nama_file;

                upload_blog($nama_file,$folder,$lokasi_file,$lebar,$tinggi);
                mysql_query("INSERT INTO blog(id_kategori_blog,
                                                gambar
                                                ) 
                                         VALUES(
                                                '$_POST[id_kategori_blog]',
                                                '$nama_file'
                                                )");
                echo "<script>window.alert('Upload image succes');
                window.location=('../../main.php?module=blog')</script>";
function upload_blog($nama_file,$folder,$lokasi_file,$lebar,$tinggi){
$nama_folder = "../../../$folder/";
list($lebar_asli, $tinggi_asli, $source_type) = getimagesize($lokasi_file);
$gambar_asli = imagecreatefromjpeg($lokasi_file);
$ukuran_asli = $lebar_asli / $tinggi_asli;
$ukuran = $lebar / $tinggi;
if ($ukuran_asli > $ukuran) {
    $tinggi_sementara = $tinggi;
    $lebar_sementara = ( int ) ($tinggi * $ukuran_asli);
} else {
    /*jika gambar sama atau lebih tinggi*/
    $lebar_sementara = $lebar;
    $tinggi_sementara = ( int ) ($lebar / $ukuran_asli);
}
/*rubah ukuran gambar ke ukuran sementara*/
$gambar_sementara = imagecreatetruecolor($lebar_sementara, $tinggi_sementara);
imagecopyresampled($gambar_sementara,$gambar_asli,0, 0,0, 0,$lebar_sementara, $tinggi_sementara,$lebar_asli, $tinggi_asli);
/*Copy cropped region from temporary image into the desired GD image*/
$x_absis = ($lebar_sementara - $lebar) / 2;
$y_absis = ($tinggi_sementara - $tinggi) / 2;
$gambar_akhir = imagecreatetruecolor($lebar, $tinggi);
imagecopy($gambar_akhir,$gambar_sementara,0, 0,$x_absis, $y_absis,$lebar, $tinggi);
imagejpeg($gambar_akhir,$nama_folder.$nama_file);
imagedestroy($gambar_akhir);
}