我尝试上传图片并将其发送到数据库,但它无法正常工作。 当我再次尝试var_dump时 这是输出:
array(1) {
["upload"]=> array(5) {
["name"]=> string(9) "error.jpg"
["type"]=> string(10) "image/jpeg"
["tmp_name"]=> string(24) "C:\xampp\tmp\php8E94.tmp"
["error"]=> int(0)
["size"]=> int(82805)
}
}
这是我的代码:
<?php
include ('includes/config.php');
$mysqli = new mysqli(DB_SERVER,DB_UNAME,DB_PASSWD,DB_NAME);
if($mysqli->connect_errno){
echo "MYSQLI connect error no {$mysqli->connect_errno} : {$mysqli->connect_error}";
die();
}
if(isset($_POST['addbtn'])){
$itemcode = $_POST['icode'];
$itemname = $_POST['iname'];
$brandname = $_POST['brandname'];
$upload = basename ($_FILES['upload']['name']);
$path = "img/";
if(!empty($upload)){
$i1 = strrpos($upload,".");
if (!$i1) { return ""; }
$l1 = strlen($upload) - $i1;
$ext1 = substr($upload,$i1+1,$l1);
$ext1 = strtolower($ext1);
$news_name1=time()+(1).'.'.$ext1;
$newname1 = $path.$news_name1;
$copied1 = copy($_FILES['upload']['tmp_name'], $newname1);
}else{
$news_name1 = '';
}
$iadd = $mysqli->prepare("INSERT INTO table_item (`itemcode`,`itemname`,`brandname`,`upload`) VALUES ('".$itemcode."', '".$itemname."','".$brandname."','".$news_name1."') ");
$iadd->execute();
$iadd->close();
$mysqli->close();
var_dump($_FILES);
}
?>
答案 0 :(得分:0)
你的var_dump说“文件已经被管理”了。另外,你说数据库录制工作(这是你的最后一个声明),所以无论问题是什么,它都不会产生可追溯到php的错误。所以你没有错误或者不是php的错误。
C:\xampp\tmp\
是否创建了文件&amp;删除。 img/
目录。 PS正如rocket-hazmat所说,使用move_uploaded_file()
代替copy()
。