-2

嗨,我想像这样在 php 中编写 html

但我收到了这个错误。我见过很多例子,但我的问题没有解决。

Parse error: syntax error, unexpected '}' in /home/a2277283/public_html/pages/home.php on line 12

我的代码

<?php if (!isset($_SESSION['email'])) {?>
        <h4>Login</h4>
        <form action="scripts/login.php" method="POST"id="login_form">
            <strong>Email:</strong><input type="text" name="user_email"/> <input type="submit" value="Login" name="submit"/>
        </form>
        <?php}?>
4

5 回答 5

2

TRY 以空格结尾

<?php } ?>
于 2013-07-25T11:28:23.247 回答
2

当我运行该代码时,我得到:

解析错误:第 6 行 /Users/david/x.php 中的解析错误

后面需要一个空格<?php。然后代码将按预期运行,}并将被拾取。

于 2013-07-25T11:28:23.947 回答
2

这有效:

<?php if(!isset($_SESSION['email'])){ ?>
        <h4>Login</h4>
        <form action="scripts/login.php" method="POST"id="login_form">
            <strong>Email:</strong><input type="text" name="user_email"/> <input type="submit" value="Login" name="submit"/>
        </form>
<?php } ?>

之后的空间<?php

于 2013-07-25T11:29:26.503 回答
1

发生错误是因为<?php}?>,应该是<?php } ?>(后面需要空格php)。最好if(): endif;在处理带有代码的html时使用php,例如

if(condition):
    // if passed true     
else:
    // if passed false
endif;

在这种情况下,您可以编写

<?php if(!isset($_SESSION['email'])) : ?>
    <h4>Login</h4>
    <form action="scripts/login.php" method="POST"id="login_form">
        <strong>Email:</strong><input type="text" name="user_email"/> <input type="submit" value="Login" name="submit"/>
    </form>
<?php endif; ?>
于 2013-07-25T11:36:53.690 回答
1

这种语法有点棘手。我建议这个:

<?php if (true): ?>
    <p>Some html...</p>
<?php endif; ?>
于 2013-07-25T11:31:23.400 回答