【发布时间】:2014-01-03 16:43:03
【问题描述】:
这是我的代码:
if(isset($_FILES["image"])){
$upload_dir = "files/images/user/profile/";
$ext = end(explode(".", $_FILES["image"]["name"]));
$config['upload_path'] = $upload_dir."original/";
$config['allowed_types'] = 'gif|jpg|png|jpeg';
$config['max_size'] = "2048";
$config['encrypt_name'] = TRUE;
// $config['file_name'] = $this->session->userdata("username").time().".".$ext;
$this->load->library("upload", $config);
if($this->upload->do_upload("image")){
$image = $this->upload->data();
$conf_res["image_library"] = "gd2";
$conf_res["source_img"] = realpath($upload_dir."original/".$image["file_name"]);
$conf_res["new_image"] = $upload_dir."200x200/".$image["file_name"];
$conf_res["create_thumb"] = TRUE;
$conf_res["maintain_ratio"] = TRUE;
$conf_res["width"] = 200;
$conf_res["height"] = 200;
$this->load->library("image_lib", $conf_res);
if($this->image_lib->resize()){
echo "done."; die();
} else {
echo $this->image_lib->display_errors().$conf_res["new_image"].$image["file_name"];
}
} else {
$error = $this->upload->display_errors();
echo $error.$config['upload_path'];
}
}
我得到的错误是:
<p>You must specify a source image in your preferences.</p>
<p>Your server does not support the GD function required to process this type of image.</p>
files/images/user/profile/200x200/2606737d1b67a54cfea0a9d4f16ef336.jpg
2606737d1b67a54cfea0a9d4f16ef336.jpg
我已经思考了大约一个小时我的路径出了什么问题。我什至检查了phpinfo 是否安装了 gd2。我不知道是什么问题!
【问题讨论】:
-
试试
./files/images/user/profile/ -
不走运!同样的问题。
-
尝试
echo realpath($upload_dir."original/".$image["file_name"])如果文件不存在,它将返回false;即什么都不会显示 -
它给了我一条路径!没问题。
标签: codeigniter gd