我必须为我正在使用的webscript单元创建一个Web商店的CMS。我必须上传产品的照片,但是当我尝试上传时,我不断收到并出错。我搜索了很多并尝试了很多东西,我把文件夹改为阅读&写道,我做了'chmod -R 777 ......',没什么。我开始认为问题出在我的代码上。感谢所有的帮助,谢谢!
我总是这个错误:警告:文件上传错误 - 无法在第0行的“未知”中创建临时文件
<?php
$dbhost = '127.0.0.1';
$dbuser = 'root';
$dbpass = '';
$dbname = 'ezcart';
$conn = new mysqli($dbhost, $dbuser, $dbpass, $dbname);
if ($conn->connect_error) {
die("Could not connect to the database: " . $conn->connect_error);
}
$name = $_FILES['photo']['name'];
$size = $_FILES['photo']['size'];
$type = $_FILES['photo']['type'];
$tmp_name = $_FILES['photo']['tmp_name'];
if (isset($name)) {
if(($type == 'image/jpeg' || $type == 'image/jpg' || $type = 'image/png') && ($size <= 3145728)) {
$path = 'prod_photos/';
if (move_uploaded_file($tmp_name, $path.$name)) {
$sql = "INSERT INTO product (prodCat, prodDes, prodNam, prodPho, prodPri, prodSto, prodSup) VALUES ('$_POST[prodCat]', '$_POST[prodDes]', '$_POST[prodNam]', '$name', '$_POST[prodPri]', '$_POST[prodSto]', '$_POST[prodSup]')";
if ($conn->query($sql) === TRUE) {
echo '<span>Product added sucessfully.</span>';
}
}
}
else {
echo '<span>Please choose a valid photo.</span>';
}
}
$conn->close();
?>
答案 0 :(得分:1)
您应该检查php.ini
并查找'upload_tmp_dir'
选项。
之后,检查你的tmp目录的权限,并尝试再次chmod它。
如果你想知道你的服务器正在使用什么upload_tmp_dir,你可以简单地使用它:
die(ini_get('upload_tmp_dir') ? ini_get('upload_tmp_dir') : sys_get_temp_dir());