그래서 다른 데이터와 함께 데이터베이스에 이미지를 업로드하는 스크립트가 실행됩니다. 그러나 항상 확장자가없고 한 번에 동일한 파일 이름을 가진 레코드가 하나 있습니다. 해당 레코드를 삭제해도 상관 없습니다. "d41d8cd98f00b204e9800998ecf8427e"문자열이 다른 레코드로 채워집니다. 새 레코드를 추가하면 다른 레코드로 전송됩니다.새 데이터베이스가 추가되지 않으면 MySQL 데이터베이스가 손상된 이미지를 표시합니다.
$art = mysql_real_escape_string(stripslashes($_FILES["art"]["name"]));
$art_ext = pathinfo($art, PATHINFO_EXTENSION);
if(strtoupper($art_ext)=="JPEG"){
$art_ext = "jpg";
}
$art = md5($art).".".$art_ext;
if($art!=""){
move_uploaded_file($_FILES['art']['tmp_name'], "images/".$art);
}
$sql = "INSERT INTO event (imglink, title, date, tag1, tag2, Price, city, subtitle, venue, password, description, fb) VALUES ('$art','$title','$date','$tag1','$tag2','$price','$city','$subtitle','$venue','$password', '$description', '$fb')";
$result = mysql_query($sql) or die(mysql_error());
해당 레코드의 이미지는 다음과 같습니다 :
왜 'stripslashes()'를 호출합니까? 'magic_quotes'가 활성화되어 있지 않습니까? – Barmar