解析错误:语法错误,意外T_ELSE

时间:2014-03-21 15:24:16

标签: php mysql

我只需要关于我的代码的帮助,因为我不知道语法错误在哪里。

$file = $_FILES['image']['tmp_name'];

if (!isset($file)) 
   echo "Please select an image";
else
{
   $image = addslashes(file_get_contents($_FILES['image']['tmp_name']));
   $img_name = addslashes($_FILES['image']['name']);
   $img_size = getimagesize($_FILES['image']['tmp_name']);
   if ($img_size == FALSE) 
      echo "select valid image.";
   else
   {
      if (!$insert = mysql_query("insert into testblob values('','$image','$img_name')"));
         echo "Problem uploading!";
      else
      {
         $lastid = mysql_insert_id();
         echo "Image uploaded.<p />Your image:<p /><img src=get.php?id=$lastid>";
      }
   }
}

我只需要知道错误在哪里。谢谢您的帮助。更多力量..

3 个答案:

答案 0 :(得分:2)

您的条件语句中有一个分号;

if (!$insert=mysql_query("insert into testblob values('','$image','$img_name')"));

将其删除并将其更改为:

if (!$insert=mysql_query("insert into testblob values('','$image','$img_name')"))

为什么你不能更好地使用它?

   $file= $_FILES['image']['tmp_name'];
   if (!isset($file)){
      echo "Please select an image";
     }
   else{
        $image= addslashes(file_get_contents($_FILES['image']['tmp_name']));
        $img_name= addslashes($_FILES['image']['name']);
        $img_size = getimagesize($_FILES['image']['tmp_name']);

       if ($img_size==FALSE){
             echo "select valid image.";
              }
       else
         {

              if (!$insert=mysql_query("insert into testblob values('','$image','$img_name')")){
                   echo "Problem uploading!"; }
              else{

                $lastid = mysql_insert_id();
                    echo "Image uploaded.<p />Your image:<p /><img src=get.php?id=$lastid>";
                }

        }
 }

答案 1 :(得分:1)

我打算使用代码并添加更多大括号,这样可以更容易地看到错误。我还在其中一个可能导致错误的if子句后删除了分号(;)。

if (!isset($file)) {
    echo "Please select an image";
}
else {
    $image= addslashes(file_get_contents($_FILES['image']['tmp_name']));
    $img_name= addslashes($_FILES['image']['name']);
    $img_size = getimagesize($_FILES['image']['tmp_name']);

    if ($img_size==FALSE) {
        echo "select valid image.";
    }
    else {
        if (!$insert=mysql_query("insert into testblob values('','$image','$img_name')")) /* HERE WAS A SEMICOLON */ {
            echo "Problem uploading!";
        }
        else {
            $lastid = mysql_insert_id();
            echo "Image uploaded.<p />Your image:<p /><img src=get.php?id=$lastid>";
        }

    }
}

答案 2 :(得分:1)

这一行

if (!$insert=mysql_query("insert into testblob values('','$image','$img_name')"));

在其末尾有一个不必要的;