画像のupができません。
お世話になっております。
PHPでCMSを組んでいるのですが、画像のUPロードがうまくいきません。
DBにはファイル名が登録されるのですが、画像ファイルが指定フォルダに入りません。
詳しい方、ご教授願います。
抜粋部分です。
Functionファイル内
function image($image, $folder, $options=array()){
if($image){
$option=getOptions($options);
$img='<img src="'.$folder.$image.'"'.$option.'/>';
return $img;
}else{
return " ";
}
}
function uploadFile($data, $confirm=false, $options=array()){
if($confirm){
$file=hidden($data["name"],$data["value"]);
}else{
$option=getOptions($options);
$file='<input type="file" name="'.$data["name"].'"'.$option.'/>';
}
return $file;
}
ソースコード部分
foreach ($imageList as $key => $title) {
if(!empty($_FILES[$key]["tmp_name"])){
if($err == UPLOAD_ERR_OK){
if(isAllowedExtension($_FILES[$key]["name"],$allowedExtensions)) {
if(isset($id)){
if($oldData[$key]!=$_FILES[$key]["name"] && file_exists(DIR_IMAGES.$_FILES[$key]["name"])){
$error=$_FILES[$key]["name"]."ファイルが存在します";
}else{
$new_img[$key]=$_FILES[$key]["name"];
move_uploaded_file($_FILES[$key]["tmp_name"],DIR_IMAGES."tmp.".$_FILES[$key]["name"]);
}
}else{
if(file_exists(DIR_IMAGES.$_FILES[$key]["name"])){
$error=$_FILES[$key]["name"]."ファイルが存在します";
}else{
$new_img[$key]=$_FILES[$key]["name"];
move_uploaded_file($_FILES[$key]["tmp_name"],DIR_IMAGES."tmp.".$_FILES[$key]["name"]);
}
}
}else{
$error=$title.":画像ファイルを選択して下さい";
}
}else{
$error=$title.":アップロードエラー。<br />";
}
}
}
登録部分
<td> <?php
if(!$mode){?>
<?php
$file_data=array('name'=>"image_search", 'value'=>$new_img["image_search"]);
echo uploadFile($file_data,$mode,array("size"=>'37'));?>
<?php
}
//確認画面で新しい画像かどうか判断
if($new_img["image_search"]){
$image_search=$new_img["image_search"];
$rest = substr($image_search, 0, 4);
if($rest=="tmp."){
$image_search=substr($image_search, 4, strlen($image_search));
}
$image_file="tmp.".$image_search;
echo hidden("new_img[image_search]", $image_search);
}elseif($data['image_search']){
$image_search=$data["image_search"];
$image_file=$data["image_search"];
}
echo hidden("data[image_search]", $image_search);
if($image_search){
if(!$mode){?>
<div class='clear'></div>
<div class='title1 left'></div><?php
}?>
<?php
}
if($image_search){
if(!$mode){?>
<div class='clear'></div>
<div class='title1 left'></div><?php
}?>
<div class='img_name left'><?php echo $image_search;?></div>
<div class='clear'></div>
<div class='title1 left'></div>
<div class='left'><?php echo image($image_file,DIR_IMAGES, array('border'=>"0",'style'=>"width: 100px"))?></div>
<?php
}?>
</td>
よろしくお願い致します。
お礼
返信が遅れてしまい申し訳ございません。 header("Content-type: image/jpeg");の宣言方法でうまくいきました。 有難うございました。