php - PHP —未定义索引:

标签 php syntax-error isset

我在php中遇到未定义错误的问题。经过研究,我知道我应该使用isset,但是我不确定如何实现它。这是引起问题的代码的精妙之处:

if (($_FILES["file"]["type"] == "video/mp4") && ($_FILES["file"]["size"] < 20000))
      {

我应该将isset放在每个$ _FILES之前的if函数中还是应该放在哪里?

这是完整的代码,您可能会注意到我对PHP还是很陌生:
$ivalid_file='0';

    if (($_FILES["file"]["type"] == "video/mp4") && ($_FILES["file"]["size"] < 20000))
      {
      if ($_FILES["file"]["error"] > 0)
        {
        echo "Return Code: " . $_FILES["file"]["error"] . "<br />";
        }
      else
        {
        echo "Upload: " . $_FILES["file"]["name"] . "<br />";
        echo "Type: " . $_FILES["file"]["type"] . "<br />";
        echo "Size: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />";
        echo "Temp file: " . $_FILES["file"]["tmp_name"] . "<br />";

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

最佳答案

据我了解,您想知道如何检查文件是否曾经上传以及如何在代码中实现。您所要做的就是将整个代码包装在if块中,该块检查$ _FILES ['files']是否设置为:

//Check if "file" exists here:
if(isset($_FILES["file"])) {
$ivalid_file='0';

    if (($_FILES["file"]["type"] == "video/mp4") && ($_FILES["file"]["size"] < 20000))
      {
      if ($_FILES["file"]["error"] > 0)
        {
        echo "Return Code: " . $_FILES["file"]["error"] . "<br />";
        }
      else
        {
        echo "Upload: " . $_FILES["file"]["name"] . "<br />";
        echo "Type: " . $_FILES["file"]["type"] . "<br />";
        echo "Size: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />";
        echo "Temp file: " . $_FILES["file"]["tmp_name"] . "<br />";

        if (file_exists("uploads/" . $_FILES["file"]["name"]))
          {
          echo $_FILES["file"]["name"] . " already exists. ";
          }
        else
          {
          move_uploaded_file($_FILES["file"]["tmp_name"],
          "uploads/" . $_FILES["file"]["name"]);
          echo "Stored in: " . "uploads/" . $_FILES["file"]["name"];
          }
        }
      }
    else
      {
      echo "invalid_file";
      }
} else {
// Display appropriate error
}

关于php - PHP —未定义索引:,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28790706/

相关文章:

php - if/elseif `isset` 多个提交输入不起作用

php - 现在日期时间 PHP mysql(+ PDO 变体)

php - 为什么 php 的 imap_open() 不像 SSL?

python - if-else 语句的语法无效

python - 打开两个文件时 with 语句中的 SyntaxError

javascript - 在 javascript/jQuery 中有类似 isset of php 的东西吗?

c# - 简单的 C# 检查?

PHP Captcha - session 总是空的

php - Laravel 搜索多个 `where`

syntax-error - 运行我的Python代码期间的语法错误