0

我正在通过 php 为家庭作业创建一个简单的 MySQL 界面。用户输入他们的姓名、密码和 sql 查询,然后它会返回一个响应。当我让用户每次输入名称和密码时,一切正常,但我正在努力做到这一点,所以如果用户已经登录,它会显示他们的用户名和注销按钮,而不是让他们选择登录。当我使用基本的 html 表单并让用户每次输入名称和密码时,都没有问题。当我尝试使用表单的 php 版本时,我收到 500 错误并且页面不会加载。我哪里错了?

表单的 HTML 版本:

        <form action="?" method="post">
            <input type="text" name="user" placeholder="username" autofocus="auotfocus" <?php if(isset($_POST['user'])) echo 'value="'.$_POST['user'].'" '; ?> />
            <input type="password" name="pass" placeholder="password" <?php if(isset($_POST['pass'])) echo 'value="'.$_POST['pass'].'" '; ?>/>
            <input type="submit" value="Submit Query" />
            <br />
            <textarea name="sql" rows="10" cols="50" wrap="soft" placeholder="enter an SQL command..."><?php if(isset($_POST['sql'])) echo $_POST['sql']; ?></textarea>
        </form>

PHP 版本的表格(?php 括号省略:

        if(isset($_SESSION["user"])) {
            echo '<form action="?" method="post"'>;
            echo '<h1>Welcome back'.$_SESSION["user"];
            echo '</h1><button type="submit" value="Logout">< br/>';
            echo '<input type="submit" value="Submit Query" /> <br />';
            echo '<textarea name="sql" rows="10" cols="50" wrap="soft" placeholder="enter an SQL command...">'. if(isset($_POST['sql'])) echo $_POST['sql'].'</textarea>';
            echo '</form>';
        }

        else {
            echo '<form action="?" method="post"'>;
            echo '<input type="text" name="user" placeholder="username" />';
            echo '<input type="password" name="pass" placeholder="password"/>';
            echo '<input type="submit" value="Submit Query" />'.' <br />';
            echo '<textarea name="sql" rows="10" cols="50" wrap="soft" placeholder="enter an SQL command...">'. if(isset($_POST['sql'])) echo $_POST['sql'].'</textarea>';
            echo '</form>';
            }
4

1 回答 1

0

你的echo陈述也有错误。

echo '<form action="?" method="post"'>;
于 2013-04-23T01:53:26.950 回答