HTML 代码中的 PHP 变量

标签 php html mysql

我正在使用 html 和 php 制作学生注册表单。

首先,系统会要求您输入姓名、密码和电子邮件,当您单击提交时,它会将您带到另一个页面 (ChooseDepartment.php),您可以在其中获得我的所有部门的列表数据库来选择你自己的。

现在,我完全是个新手,所以这是我在 ChooseDepartment.php 中遇到的部分 php 代码:

$ShowPossibleDep = mysql_query("SELECT NAME,DEPT_ID FROM DEPARTMENT");
if(mysql_num_rows($ShowPossibleDep) > 0){
    echo "<br />"."Available departments: "."  ".mysql_num_rows($ShowPossibleDep)."<br />";
    echo "<br />";
    echo '<form id = "dept" action = "Courses.php" method = "post">';
    while($row = mysql_fetch_array($ShowPossibleDep))
    {
        echo $row['NAME'];
        echo '<input type="radio" name="department" value=<?php $row['DEPT_ID'] ?>>';
        echo "<br />";


    }
    echo '<input type = "submit" value = "Submit" id = "submitDepartment">';
    echo </form>;

}

我试图让单选按钮的值带有 部门 ID,这样我就可以用当前为 NULL 的学生部门更新我的数据库,但我不知道如何在同一行正确使用 html 和 php!这给我语法错误!

最佳答案

因为你在 PHP 中,所以你不需要打开和关闭 PHP 标签

你得到语法错误的原因只是因为你没有正确操作字符串。

错误在于这一行

echo '<input type="radio" name="department" value=<?php $row['DEPT_ID'] ?>>';              
                                                   ^ here                ^ here

所以你需要删除 PHP 标签并且需要像这样正确地连接字符串:

echo '<input type="radio" name="department" value="'.$row['DEPT_ID']. '">';

还有这个

echo </form>;

您缺少 form 标记周围的引号。应该是这样,

echo '</form>';

还有一些其他错别字,所以您的最终代码将如下所示。

$ShowPossibleDep = mysql_query("SELECT NAME,DEPT_ID FROM DEPARTMENT");
if(mysql_num_rows($ShowPossibleDep) > 0){
    echo "<br />Available departments: ".mysql_num_rows($ShowPossibleDep);
    //echo "<br />";  add this <br /> tag to next echo
    echo '<br /><form id = "dept" action = "Courses.php" method = "post">';
    while($row = mysql_fetch_array($ShowPossibleDep))
    {
        echo $row['NAME'];
        echo '<input type="radio" name="department" value=" '.$row['DEPT_ID'].'"><br />';
        //or you can do this way
        //echo "<input type='radio' name='department' value='$row[DEPT_ID]'><br />";
        //echo "<br />"; appended in upper statement.
    }
    echo '<input type = "submit" value = "Submit" id = "submitDepartment"></form>';
    //echo </form>;    closed already(above statement).

}

没有评论,更干净:)

$ShowPossibleDep = mysql_query("SELECT NAME,DEPT_ID FROM DEPARTMENT");
if(mysql_num_rows($ShowPossibleDep) > 0){
    echo "<br />Available departments: ".mysql_num_rows($ShowPossibleDep);
    echo '<br /><form id = "dept" action = "Courses.php" method = "post">';
    while($row = mysql_fetch_array($ShowPossibleDep))
    {
        echo $row['NAME'];
        echo '<input type="radio" name="department" value=" '.$row['DEPT_ID'].'"><br />';
    }
    echo '<input type = "submit" value = "Submit" id = "submitDepartment"></form>';
}

关于HTML 代码中的 PHP 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33455705/

相关文章:

PHP Soap 问题 : Server was unable to process request. ---> 未将对象引用设置为对象的实例

php - 从表中选择,其中列是 PHP 中的外键

mysql - 部分结果的等于运算符

php - 将数据库中的信息显示到表单上

mysql - 按多个字段进行 groupBy 时计算行数

php - 通过 exec() 使用时 ls 输出改变

php - 什么会导致 php 的 strtotime 不适用于 2099 年的日期?

javascript - 单页应用程序的 HTML 和 JS 片段的构建时组装

javascript - 如何根据用户 HTML 输入创建文档对象?

javascript - Canvas 绘制在div后面问题