web-dev-qa-db-ja.com

PHP)の「予期しないT_OBJECT_OPERATOR」エラー

次のエラーが発生します:

Parse error: syntax error, unexpected T_OBJECT_OPERATOR in.. on line 52.

52行目はif ($result = mysqli->query...です。行をコメントアウトすると、$mysqli->query("INSERT INTO...でも同じエラーが発生します。

なぜこれでエラーが発生するのですか?

$unique_code = "";
$inserted = false;
while(!$inserted) {
    $unique_code = generateCode();
    echo $unique_code;

    // Check if it exists
    if ($result = mysqli->query("SELECT unique_code FROM coming_soon_emails WHERE unique_code = '$unique_code'")) {
        // Check no record exists
        if ($result->num_rows == 0) {
            // Create new record
            $mysqli->query("INSERT INTO coming_soon_emails (email,unique_code) VALUES ('" . $mysqli->real_escape_string($_POST['email']) . "','$unique_code')");
            // Set inserted to true to ext loop
            $inserted = true;
            // Close the result object
            $result->close();
        }
    } else {
        // Quit if we can't check the database
        die('Something went wrong with select');
    }   
}
22
jeremycollins

$mysqliの前にドル記号を忘れました。

28
Michiel Pater