php意外T_IS_NOT_EQUAL错误

kri*_*itx -1 php mysql

我正在尝试制作一个接受密码文本的PHP脚本,并将从数据库中删除相关数据.加载脚本时出现此错误

语法错误,第4行/home2/krisindi/public_html/deletead.php中的意外T_IS_NOT_EQUAL

    <?php
$password = $_POST["password"];

if ( $password ) != 0 )
        {
                $id = $data->select ("Classified", "AdID", array ("Password => ($password)));
                $data->delete ( "AdExtraField" , array ( "AdID" => intval ( $id["AdID"] ) ) ) ;
                $data->delete ( "Classified" , array ( "Password" => ( $password ) ) ) ;
                exec ( "chmod ../media/ 777" ) ;

                $image_file = "../media/cls_".$id["AdID"]."_520.jpg" ;
                if ( file_exists ( $image_file ) )
                        unlink ( $image_file ) ;

                for ( $i = 1 ; $i <= 5 ; $i++ )
                {
                        $image_file = "../media/cls_".$id["AdID"]."_".$i."_520.jpg" ;
                        if ( file_exists ( $image_file ) )
                                unlink ( $image_file ) ;
                }

                exec ( "chmod ../media/ 755" ) ;

                $_SESSION["str_system_message"] = "Classified deleted successfully." ;
        }

?>

<html>
<head>
<title>Personal INFO</title>
</head>
<body>
<form method="post" action="<?php echo $PHP_SELF;?>">
Password:<input type="text" size="12" maxlength="12" name="password">:<br />
<input type="submit" value="submit" name="submit"><br />
</form><br />
Run Code Online (Sandbox Code Playgroud)

Álv*_*lez 7

第4行:

    <?php
$password = $_POST["password"];

if ( $password ) != 0 )
               ^
               Mismatched parenthesis
Run Code Online (Sandbox Code Playgroud)

更新

鉴于问题是获得负面投票,我会改进我的答案,使其更具普遍性.当您的PHP代码甚至不是有效的PHP代码时(通常是因为拼写错误),您会收到语法错误.在这种情况下,代码甚至不会开始运行.应用于当前情况,第一个结论是脚本尝试完成的内容并不重要,因为在修复语法错误之前它永远不会运行.

现在,错误是什么意思.我们来分析吧:

语法错误,第4行/home2/krisindi/public_html/deletead.php中的意外T_IS_NOT_EQUAL

一点点地:

语法错误,

PHP无效.该脚本无法执行.

意外的T_IS_NOT_EQUAL

如果找到了T_IS_NOT_EQUAL令牌.用简单的英语,这意味着!=在一个没有预料到的地方找到了一个操作员.

在第4行的/home2/krisindi/public_html/deletead.php中

这是检测到错误的确切文件和行号.这并不意味着该错误有,但它是明星的好地方.如果您的编辑器无法显示行号,请切换到更好的编辑器.

现在,让我们看看第4行:

if ( $password ) != 0 )
                 ^
                 T_IS_NOT_EQUAL
Run Code Online (Sandbox Code Playgroud)

这是T_IS_NOT_EQUAL标记.为什么会出乎意料?因为一旦你关闭了if()构造,你必须打开一个块{或键入一个有效的PHP句子.没有有效的PHP句子可以从!=错误开始.