我的错误日志一直显示我的图像上传表单的PHP代码中有一个错误。
我找不到错误?
<?php
$target_dir = "postingImages/";
$target_file = $target_dir . basename($_FILES["postingImage"]["name"]);
$uploadOk = 1;
$imageFileType = pathinfo($target_file, PATHINFO_EXTENSION);
if (isset($_POST["submit"])) {
$check = getimagesize($_FILES["postingImage"]["tmp_name"]);
if ($check !== false) {
echo "" . $check[""] . "";
$uploadOk = 1;
} else {
echo " × FILE IS NOT AN IMAGE";
$uploadOk = 0;
}
}
if (file_exists($target_file)) {
echo " × THIS IMAGE ALREADY EXIST ON SERVER";
$uploadOk = 0;
}
if ($_FILES["postingImage"]["size"] > 500000) {
echo " × FILE IS TOO LARGE";
$uploadOk = 0;
}
if ($imageFileType != "jpg" && $imageFileType != "png" && $imageFileType != "jpeg" && $imageFileType != "gif") {
echo " × ONLY JPG, JPEG, PNG & GIF FILES ARE PERMITTED";
$uploadOk = 0;
}
if ($uploadOk == 0) {
echo " × IMAGE WAS NOT UPLOADED";
} else {
if (move_uploaded_file($_FILES["postingImage"]["tmp_name"], $target_file)) {
echo '<img class="fixed-ratio-resize" src="http://www.rebelplanetnews.com/postingImages/' . basename($_FILES["postingImage"]["name"]) . '">';
} else {
echo " × IMAGE WAS NOT UPLOADED";
}
}
?>错误一直出现在代码的第9行:
echo "" . $check[""] . "";再一次..。我自己找不到错误,所以如果有人能帮助我理解我在这里做错了什么,我将不胜感激。
注意:该表单工作正常,并成功上传了图像。但我还是得到了错误。
发布于 2017-07-14 05:51:12
您的问题是数组$check[]的索引,您的值不能为空字符串,请替换为$check[0]
下面是代码
超文本标记语言index.html
<form name="f1" action="upload.php" method="post" enctype="multipart/form-data">
<input type="file" name="postingImage"><br>
<input type="submit" name="submit" value="Enviar">
</form>PHP upload.php
<?php
$target_dir = "postingImages/";
$target_file = $target_dir . basename($_FILES["postingImage"]["name"]);
$uploadOk = 1;
$imageFileType = pathinfo($target_file, PATHINFO_EXTENSION);
if (isset($_POST["submit"])) {
$check = getimagesize($_FILES["postingImage"]["tmp_name"]);
if ($check !== false) {
echo "Image Size: ". $check[0] ."<br>";
$uploadOk = 1;
} else {
echo " × FILE IS NOT AN IMAGE";
$uploadOk = 0;
}
}
if (file_exists($target_file)) {
echo " × THIS IMAGE ALREADY EXIST ON SERVER";
$uploadOk = 0;
}
if ($_FILES["postingImage"]["size"] > 500000) {
echo " × FILE IS TOO LARGE";
$uploadOk = 0;
}
if ($imageFileType != "jpg" && $imageFileType != "png" && $imageFileType !=
"jpeg" && $imageFileType != "gif") {
echo " × ONLY JPG, JPEG, PNG & GIF FILES ARE PERMITTED";
$uploadOk = 0;
}
if ($uploadOk == 0) {
echo " × IMAGE WAS NOT UPLOADED";
} else {
if (move_uploaded_file($_FILES["postingImage"]["tmp_name"], $target_file)) {
echo '<img class="fixed-ratio-resize" src="postingImages/' .
basename($_FILES["postingImage"]["name"]) . '">';
} else {
echo " × IMAGE WAS NOT UPLOADED";
}
}
?>https://stackoverflow.com/questions/45090662
复制相似问题