我在 php 中有一个代码,验证正常,但我的问题是,当我尝试保存在数据库中时,我得到了这样的东西:
img_id img_small img_big
5 /tmp/phpdlYkiG /tmp/phph3dhka
我不知道为什么 php 保存那个名字,因为图像有不同的名字,比如 koala.jpg 和 horse.jpg
这是我的代码,以查看是否有人有任何建议...
<form enctype="multipart/form-data" action="upload_type_1.php" method="POST" >
<input type="file" name="img_small_1" id="img_small_1">
<input type="file" name="img_big_1" id="img_big_1">
<input type="submit" value="Upload" name="submit">
</form>
这是我的 PHP 代码:
if ( (move_uploaded_file($_FILES["img_small_1"]["tmp_name"], $target)) && (move_uploaded_file($_FILES["img_big_1"]["tmp_name"], $target2)) ){
$img_title_1 = $_POST['img_title_1'];
$sql = "INSERT INTO press (img_title, img_small, img_big) VALUES ('$img_title_1', '$img_small_1', '$img_big_1')";
$retval = mysql_query( $sql, $conn );
if(!$retval) {
die('Could not enter data: ' . mysql_error());
}
mysql_close($conn);
echo "Your files has been uploaded";
} else {
echo "Sorry, there was an error uploading your files.";
exit;
}
此代码可以正常工作,唯一的问题是将奇怪的名称保存到数据库中,我需要使用该名称...
谢谢! - 等待帮助!
最佳答案
您的问题可能不在您显示的代码中,而是在您未显示的代码中,这是您对 $img_small_1
&& $img_big_1
的变量声明。假设你有
$img_small_1 = $_FILES["img_small_1"]["tmp_name"];
$img_big_1 = $_FILES["img_big_1"]["tmp_name"];
但你想要/需要
$img_small_1 = $_FILES["img_small_1"]["name"];
$img_big_1 = $_FILES["img_big_1"]["name"];
关于php - 上传过程不在数据库中保存正确的名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30128152/