画像の名前の取得に問題があります。
次のコードを使用して、アップロードフォルダーの下の画像を更新しました。
で画像パスを更新しています $image= time()."_".strtolower(str_replace($tokan, "" ,$file));
time 関数を使用して、イメージ名の前にタイム スタンプを追加します。
しかし、問題はtime_pathの更新だけです。その中でファイル名を取得できませんでした。
たとえば
、sunset.jpg のようなファイル タイプを使用して画像を閲覧している場合、
sunset.jpg ではなく「time_」しか取得できません...
<?php
$host="localhost";
$username="root";
$password="";
$db="training_swapnil";
$tbl="gallary";
$tb="album";
$img_id=$_GET['id'];
mysql_connect("$host", "$username", "$password")or die("cannot connect");
mysql_select_db("$db")or die("cannot select DB");
$q="SELECT * FROM $tbl WHERE eid='$img_id'";
$r=mysql_query($q);
$rw= mysql_fetch_assoc($r);
echo $img=stripslashes($rw['image']);?>
<form name="update_img">
<table border="0"><tr>
<td><label>Uploaded Image:</label></td>
<td><?php echo "<img src=\"uploads/$img\" width=\"150\" height=\"150\" />";?></td></tr>
<tr><td><label>Upload New Image:</label></td><td> <input type="file" name="file" id="file"/></td></tr>
<tr><td><input type="submit" name="submit" value="upload"></td></tr>
<?php
echo"here in post";
$file=$_POST['file'];
//$str=$HTTP_POST_FILES['file']['name'];
echo "str file =$str";
$tokan = array(" ", "'","`","’");
//$image= time().".$file.";
$image= time()."_".strtolower(str_replace($tokan, "" ,$file));
$path= "uploads/".$image;
echo "path using file=$image";
$sql="UPDATE gallary set image='$image', path='$path' WHERE eid='$img_id'";
echo $sql;
$res=mysql_query($sql);
$res=mysql_query($s);
if($res>0)
{
if($file !=none)
{ if(copy($HTTP_POST_FILES['file']['tmp_name'], $path)) { //header("location:viewalbum.php");
}
else
{
echo "Error";
}
}
}
?>
</table></form>