警告:文件上传错误-无法在第0行的“未知"中创建临时文件 [英] Warning: File upload error - unable to create a temporary file in Unknown on line 0
问题描述
每次尝试上传文件时,都会出现以下错误.
Am getting the following error everytime I try to upload a file .
警告:文件上传错误-无法在第0行的未知"中创建临时文件"
"Warning: File upload error - unable to create a temporary file in Unknown on line 0"
这是我的HTML表单,
Here is my HTML form,
<form action="./inventory_list.php" enctype="multipart/form-data" name="myForm" id="myForm" method="post">
<table width="625" border="1" cellpadding="5">
<tr>
<td width="84">Product Name</td>
<td width="399"><input type="text" name="product_name" id="product_name"></td>
</tr>
<tr>
<td>Product Price</td>
<td><label for="textfield2">Rs:</label>
<input type="text" name="price" id="price"></td>
</tr>
<tr>
<td>Category</td>
<td><select name="category" id="category">
<option value="" selected="selected"></option>
<option value="Bedroom ">Bedroom </option>
<option value="Living">Living room</option>
<option value="Dining">Dining</option>
</select></td>
</tr>
<tr>
<td>Sub - Category</td>
<td><select name="subcategory" id="subcategory">
<option value="" selected="selected"></option>
<option value="dinet">Dining tables</option>
<option value="shoe">shoe racks</option>
<option value="wardrobe">wardrobes</option>
<option value="sofa">sofa</option>
</select></td>
</tr>
<tr>
<td>Product Details</td>
<td><textarea name="details" cols="50" rows="10" id="details"></textarea></td>
</tr>
<tr>
<td>Product Image</td>
<td><label>
<input type="file" name="fileField" id="fileField"/>
</label></td>
</tr>
<tr>
<td> </td>
<td><input type="submit" name="button" id="button" value="Add this Item now"></td>
</tr>
</table>
</br>
</form>
这是我的PHP代码,
if(isset($_POST["product_name"]))
{
$product_name = mysql_real_escape_string($_POST["product_name"]);
$price= mysql_real_escape_string($_POST["price"]);
$category= mysql_real_escape_string($_POST["category"]);
$subcategory= mysql_real_escape_string($_POST["subcategory"]);
$details= mysql_real_escape_string($_POST["details"]);
//see if duplicate product exists
$sql = mysql_query("select id from products where product_name='$product_name' limit 1");
$product_match = mysql_num_rows($sql); //count the output
if($product_match>0)
{
echo "The product name already exists";
exit();
}
$sql= mysql_query("INSERT INTO `mystore`.`products` (`product_name`, `price`, `details`, `category`, `subcategory`, `date_added`) VALUES ( '$product_name', '$price', '$details', '$category', '$subcategory', now());")or die(mysql_error());
$pid = mysql_insert_id();
$newname = "$pid.jpg";
move_uploaded_file($_FILES['fileField']['tmp_name'],'../inventory_images/$newname');
}
我正在尝试在localhost上上传, 测试服务器:XAMPP, 操作系统:MAC 10.8
Am trying to upload on localhost , Test Server:XAMPP , OS : MAC 10.8
很长一段时间以来,我一直在努力,但我尝试了很多事情,但没有任何效果.
Am stuck on this from a long time , I tried a lot of things but nothing is working .
推荐答案
在终端中输入:
chmod -R 777 /your/upload/folder
通过执行以下代码,您可以知道php上载文件的文件夹:
you can know the folder where your php uploads files by executing this code :
$tmp_dir = ini_get('upload_tmp_dir') ? ini_get('upload_tmp_dir') : sys_get_temp_dir();
die($tmp_dir);
在我的情况下,我得到/var/...
,所以当我设置777权限时,我没有收到错误.
In my case I get /var/...
so when I sett 777 permission I get no error.
修改
将777设置为/var
是危险的,因此您只需将其设置为php上传文件的文件夹(您可以从上面的代码中购买).
Setting 777 to /var
is dangerous so you have to set it only to the folder where php uploads the file (which you can get buy the code above).
这篇关于警告:文件上传错误-无法在第0行的“未知"中创建临时文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!