-3

これが私のコードです:

<?php

if(empty($_POST['id']))
{
    echo '<form method="post"><input type="text" name="id"><input type="submit" value="go"></form>';
}
else
{   

    $con=mysqli_connect("localhost","adminuser","adminpassword","database");
    // Check connection
    if (mysqli_connect_errno())
    {
        die("dbconnect failed: " . mysqli_connect_error());
    }

    $remoteEndpoint=$_SERVER["REMOTE_ADDR"].".".$_SERVER["REMOTE_PORT"];
    $hash = md5(uniqid());
    $code= mysql_real_escape_string($_POST['id']);

    mysqli_query($con,"INSERT INTO `mobile` (`useragent`, `ip`, `hash`) VALUES ('".$code."', '".$remoteEndpoint."','".$hash."')");

    echo hash;
}

?>

これで、私は得ています

 Parse error: syntax error, unexpected $end in /mylocation/index.php on line 1

すべてのブランチをチェックしましたが、何も見つかりません。

私は何か見落としてますか?

4

1 に答える 1

1

コードは、「エラー: 構文エラー、予期しない $end」というエラーを報告しません。

私は自分のローカル dev でテストしましたが、明らかに mysql 接続に対するアクセス拒否の警告が表示されますが、PHP エラーはありません。

通知があります:「PHP通知:未定義の定数ハッシュの使用-想定された「ハッシュ」」

Marc B が指摘したように、「ハッシュ」変数の末尾にある $ を見逃したためです。

これは、コードにもっと多くのことが必要であり、実際の問題はどこかにあることを意味します。一般的に (必ずというわけではありませんが、多くの場合) 予期しない $end エラーは、中かっこが見つからない (つまり、IF を開いたが閉じていない) ことが原因です。最初にそれらを確認してください。構文の強調表示を備えたエディターを使用しない場合は、これらの愚かなタイプミスや深夜の間違いに時間を節約できることが多いため、使用する必要があります...

于 2013-08-15T19:52:06.353 に答える