首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >图片上传未上传

图片上传未上传
EN

Stack Overflow用户
提问于 2012-08-16 18:52:14
回答 2查看 166关注 0票数 0

我正在尝试上传一个图像到我的服务器,现在代码非常直接,但它从来没有通过if测试,它总是直接转到else语句并在那里执行代码,即无效文件。如果表单代码...

代码语言:javascript
复制
<form action="take.php" method="get" onsubmit='return chequer()' enctype="multipart/form-data">
<input type="file" name="image1"/>
</form>

上传图片的php脚本如下所示,当然在take.php文件中:

代码语言:javascript
复制
if ($_GET["image"] == Null)
{
$sql = "INSERT INTO postable (description, dated, posterid, country, state, city, area)
VALUES
('$_GET[Desc]',NOW(),'$row[0]','$_GET[Country]','$_GET[State]','$_GET[City]','$_GET[area]')";
}
else {
$sql = "INSERT INTO postable (description, dated, image, posterid, country, state, city, area)
VALUES
('$_GET[Desc]',NOW(),'$_GET[image]','$row[0]','$_GET[Country]','$_GET[State]','$_GET[City]','$_GET[area]')";
$allowedExts = array("jpg", "jpeg", "gif", "png");
$extension = end(explode(".", $_FILES["image1"]["name"]));
if ((($_FILES["image1"]["type"] == "image/gif")
|| ($_FILES["image1"]["type"] == "image/jpeg")
|| ($_FILES["image1"]["type"] == "image/pjpeg"))
&& ($_FILES["image1"]["size"] < 65536)
&& in_array($extension, $allowedExts))
  {
  if ($_FILES["image1"]["error"] > 0)
    {
    echo "Return Code: " . $_FILES["image1"]["error"] . "<br />";
    }
  else
    {
    echo "Upload: " . $_FILES["image1"]["name"] . "<br />";
    echo "Type: " . $_FILES["image1"]["type"] . "<br />";
    echo "Size: " . ($_FILES["image1"]["size"] / 1024) . " Kb<br />";
    echo "Temp file: " . $_FILES["image1"]["tmp_name"] . "<br />";

    if (file_exists("upload/" . $_FILES["image1"]["name"]))
      {
      echo $_FILES["image1"]["name"] . " already exists. ";
      }
    else
      {
      move_uploaded_file($_FILES["image1"]["tmp_name"],
      "upload/" . $_FILES["image1"]["name"]);
      echo "Stored in: " . "upload/" . $_FILES["image1"]["name"];
      }
    }
  }
else
  {
  echo "Invalid file";
  }

任何帮助都将不胜感激。

先谢谢你...

EN

回答 2

Stack Overflow用户

发布于 2012-08-16 18:57:39

要上传文件,表单方法应始终为POST,因此在表单方法中将GET转换为POST

票数 3
EN

Stack Overflow用户

发布于 2012-08-16 19:16:32

检查您尝试upload.use的文件类型:

代码语言:javascript
复制
echo $_FILES["image1"]["type"];

因为有时图像类型是不同的,我们正在尝试upload.or,您可以尝试另一个图像。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11985603

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档