【问题标题】:How to detect whether file is uploaded by the user or not in PHP? [duplicate]如何在PHP中检测文件是否由用户上传? [复制]
【发布时间】:2018-03-11 18:01:53
【问题描述】:

我正在尝试创建一个帖子系统,如果用户只写文本而不上传图像,则不应出现错误图像(提交后应仅出现纯文本)。

所以我必须检查图像是否已上传。

下面的代码只发布文本。

   while ($row = mysqli_fetch_array($result)) {

    if (($_FILES['image1']['tmp_name'])==1){
    echo "<br>";
    echo "<div class='postuser'>";

    echo "<div id='img_div1' class='caption'>";
    echo "<p>".$row['image_text1']."</p>";
    echo "<img src='images/".$row['image1']."' width='288px'>";
    echo "</div>";

    echo "</div>";
    }

    else
    {
    echo "<br>";
    echo "<div class='postuser'>";

    echo "<div id='img_div1' class='caption'>";
    echo "<p>".$row['image_text1']."</p>";
    echo "</div>";

    echo "</div>";
    }
}

PS:我已经将 file_exists() 函数和 is_uploaded_file() 函数与 $_FILES['image1']['tmp_name'] 和 $_FILES['image1']['name' 一起使用],尝试了许多其他方法,但无济于事。

希望这次没有人结束这个问题,拜托。

【问题讨论】:

标签: php mysql


【解决方案1】:
<?php
while ($row = mysqli_fetch_array($result)) {
if (is_uploaded_file($_FILES['image1']['tmp_name'])) {
    echo "<br>";
    echo "<div class='postuser'>";
    echo "<div id='img_div1' class='caption'>";
    echo "<p>".$row['image_text1']."</p>";
    echo "<img src='images/".$row['image1']."' width='288px'>";
    echo "</div>";

    echo "</div>";
} else
    {
    echo "<br>";
    echo "<div class='postuser'>";

    echo "<div id='img_div1' class='caption'>";
    echo "<p>".$row['image_text1']."</p>";
    echo "</div>";

    echo "</div>";
    }
}
?>

【讨论】:

  • 试过了,没用.... :(
  • 你遇到了什么错误?
  • 上传的图片没有显示出来。仅显示文本。如果图像是由用户上传的,我想显示“图像+文本”,否则只有“文本”。
  • 尝试使用 'if (move_uploaded_file($_FILES['image1']['tmp_name'], $target))' ......但同样的问题。
猜你喜欢
  • 1970-01-01
  • 2014-01-20
  • 2017-05-20
  • 1970-01-01
  • 1970-01-01
  • 2011-09-05
  • 2013-07-18
  • 2011-01-01
相关资源
最近更新 更多