【问题标题】:Display a form within a php loop在 php 循环中显示表单
【发布时间】:2012-06-12 23:29:01
【问题描述】:

我正在使用如下所示的简单循环:

$query = "SELECT * FROM $username"; 
$result = mysql_query($query) or die(mysql_error());
    while($row = mysql_fetch_array($result)){
        echo $row['id']. " - ". $row['file'];
        echo "<br />";
                echo "<form method="post" action="" style="width: 80px">
            <input name="Checkbox1" type="checkbox" /><input name="Submit1" type="submit"               value="submit" /></form>";

当我像这样运行它时,我收到一个错误,即

【问题讨论】:

  • 如果你的意思是你得到了Parse error: Syntax error: Unexpected &lt; in...,那么上面没有显示导致问题的代码。但是,您确实有几个语法错误,因为您没有转义双引号字符串中的文字双引号。

标签: php html forms loops while-loop


【解决方案1】:

看到这一行:

echo "<form method="post" action="" style="width: 80px">
     ^             ^
     |             End of string
     Start of string

转义引号 (\") 在用相同类型引号分隔的字符串中。

【讨论】:

    【解决方案2】:

    引号中有引号。应该使用\ 对它们进行转义。

    echo "<form method=\"post\" action=\"\" style=\"width: 80px\">...";
    

    你也可以使用单引号:

    echo '<form method="post" action="" style="width: 80px">...';
    

    单引号和双引号的区别在于单引号不显示变量:

    <?php
    $a = 'b';
    echo '$a'; // output: $a
    echo "$a"; // output: b
    echo $a; // output b
    

    【讨论】:

      【解决方案3】:

      我不知道这是否是唯一的问题,但你必须转义你的双引号:

      echo "<form method=\"post\" action=\"\" style=\"width: 80px\">
              <input name=\"Checkbox1\" type=\"checkbox\" />
              <input name=\"Submit1\" type=\"submit\" value=\"submit\" />
            </form>";
      

      你也可以使用简单的引号来分隔你的字符串:

      echo '<form method="post" action="" style="width: 80px">
              <input name="Checkbox1" type="checkbox" />
              <input name="Submit1" type="submit" value="submit" />
            </form>';
      

      【讨论】:

        【解决方案4】:

        您应该使用双引号或只使用单引号作为 echo 语句。

        【讨论】:

          【解决方案5】:

          您不能在没有反斜杠\" 的双引号语句echo "&lt;div id="pong" &gt;; 中使用双引号(") 来指定字符串。您有三个选择:

          1. 将您的第一个和最后一个 " 更改为 '
          2. 在您的代码中添加反斜杠。
          3. 连接字符串如:echo "&lt;form method="."post"."&gt;"

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2023-04-07
            • 1970-01-01
            • 2013-02-13
            • 2018-12-25
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多