php - 为什么第二个 move_uploaded_file 函数在此代码中不起作用?
问题描述
如何在此代码中上传缩略图?
当我点击上传时,它只移动第一个 move_uploaded 文件,而不移动第二个文件。任何人都可以帮助我吗?
<?php
if(isset($_POST['submit'])){
$cap = mysqli_real_escape_string($con, $_POST['cap']);
$image = $_FILES['image'] ['name'];
$tmp_name= $_FILES['image'] ['tmp_name'];
$thumb = $_FILES['thumb'] ['name'];
$tmp_name= $_FILES['thumb'] ['tmp_name'];
$type = $_POST['type'];
if(empty($image) or empty($thumb) or empty($cap)){
$error = "<p style='font-seize: 20px; font-weight: bolder; color: red;'>
Please Fill out all required stared inputs!</p>";
}
else{
$pic = "INSERT INTO photos(image, thumb, caps, type)VALUES('$image', '$thumb', '$cap', '$type')";
if(mysqli_query($con, $pic)){
$success = "<p style='font-seize: 25px; font-weight: bolder; color: green;'>
<i class='fa fa-smile-beam'></i> Your Data
Published Successfully</p>";
move_uploaded_file($tmp_name, "img/photos/$image");
move_uploaded_file($tmp_name, "img/thumbs/$thumb");
}
else{
$fail = "<p style='font-seize: 20px; font-weight: bolder; color: red;'><i class='fa fa-sad-tear'>
</i> Unsuccessful!</p>";
}
}
}
?>
解决方案
一个变量只能容纳一件事。您$tmp_name
同时使用图像和拇指,在第二次分配之后,它只有拇指的临时名称。
您需要使用不同的变量。
<?php
if(isset($_POST['submit'])){
$cap = mysqli_real_escape_string($con, $_POST['cap']);
$image = $_FILES['image'] ['name'];
$tmp_image= $_FILES['image'] ['tmp_name'];
$thumb = $_FILES['thumb'] ['name'];
$tmp_thumb= $_FILES['thumb'] ['tmp_name'];
$type = $_POST['type'];
if(empty($image) or empty($thumb) or empty($cap)){
$error = "<p style='font-seize: 20px; font-weight: bolder; color: red;'>
Please Fill out all required stared inputs!</p>";
}
else{
$pic = "INSERT INTO photos(image, thumb, caps, type)VALUES('$image', '$thumb', '$cap', '$type')";
if(mysqli_query($con, $pic)){
$success = "<p style='font-seize: 25px; font-weight: bolder; color: green;'>
<i class='fa fa-smile-beam'></i> Your Data
Published Successfully</p>";
move_uploaded_file($tmp_image, "img/photos/$image");
move_uploaded_file($tmp_thumb, "img/thumbs/$thumb");
}
else{
$fail = "<p style='font-seize: 20px; font-weight: bolder; color: red;'><i class='fa fa-sad-tear'>
</i> Unsuccessful!</p>";
}
}
}
?>
推荐阅读
- javascript - 当用户单击文本时,如何使用 D3.js 切换 svg 文本元素的值?
- apache-camel - ActiveMQ Artemis 任播和组播前缀
- php - 未定义变量:all_data(查看:/var/www/html/resources/views/welcome.blade.php)
- ionic-framework - 如何检测离子4中的滚动方向
- python - 制作两个共享同一轴的 seaborn 计数图
- c# - 泛型扩展方法参数限制
- react-native - 对象返回旧状态
- excel - 定义更改的列表
- c++ - 右值参考用法:需要吗?
- java - 如何从 ExpandableListView 获取特定视图?