Php 内部表未提交的html表单

Php 内部表未提交的html表单,php,html,forms,html-table,Php,Html,Forms,Html Table,我需要编辑一个用PHP和HTML编写的web应用程序。有一个开始和结束标签。中间是一个HTML表,用于布局表单字段。这个表中有一个表,这个内表中也有表单字段,但在提交页面时,这些字段不会在PHP中显示。外部表中的字段(及其值)为。我怎样才能开始解决这个问题呢 <form> <table> <tr>rows of fields</tr> <tr> <table> <tr

我需要编辑一个用PHP和HTML编写的web应用程序。有一个开始
和结束
标签。中间是一个HTML表,用于布局表单字段。这个表中有一个表,这个内表中也有表单字段,但在提交页面时,这些字段不会在PHP中显示。外部表中的字段(及其值)为。我怎样才能开始解决这个问题呢

<form>

  <table>

    <tr>rows of fields</tr>
    <tr>
      <table>
        <tr>an inner table of stuff</tr>
      </table>
    </tr>

  </table>

</form>

一排排字段
内桌的东西

另外,我知道,表格而不是CSS,这是另一天的故事

答案是确保HTML有效:


一旦验证,它将正常工作。

答案是确保HTML有效:


一旦验证,它就会正常工作。

这是无效的HTML
标记和
标记不能包含其他
标记,您至少需要使用无效HTML的
标记和
标记不能包含其他
标记,您至少需要在一个表中使用

表是无效的。而是这样做

<form>
    <table>
        <tr>
            <td>rows of fields</td>
        </tr>
        <tr>
            <td>
                <table>
                    <tr>
                        <td>an inner table of stuff</td>
                    </tr>
                </table>
            </td>
        </tr>
    </table>
</form>

一排排字段
内桌的东西

表中的表无效。而是这样做

<form>
    <table>
        <tr>
            <td>rows of fields</td>
        </tr>
        <tr>
            <td>
                <table>
                    <tr>
                        <td>an inner table of stuff</td>
                    </tr>
                </table>
            </td>
        </tr>
    </table>
</form>

一排排字段
内桌的东西
试试这个:

<form>
  <table>
    <tr><td>rows of fields</td></tr>
    <tr><td>
      <table>
        <tr><td>an inner table of stuff</td></tr>
      </table>
    </td></tr>
  </table>
</form>

一排排字段
内桌的东西
试试这个:

<form>
  <table>
    <tr><td>rows of fields</td></tr>
    <tr><td>
      <table>
        <tr><td>an inner table of stuff</td></tr>
      </table>
    </td></tr>
  </table>
</form>

一排排字段
内桌的东西


我不认为这是一个PHP问题,我认为问题在于“表中的表”。试着去掉所有的格式(只留下表单元素),然后看看它是否有效。这就是解决问题的方法。请确保所有表单元素都具有有效的名称属性。最好是你可以发布完整的HTML,这样我们就可以看到。尝试
var\u dump($\u POST)
查看结果。内部表将放在外部表之后,因此这实际上应该可以工作。但是最好验证你的HTML。将帮助您更快地获得更好的结果。顺便说一句:使用表格来格式化表单是可以的,这并不完美,但实际上是有理由这样做的,特别是如果你对特定的浏览器版本不挑剔的话。@PeeHaa我会发布HTML,但它很庞大,但上面是一个准确的裁剪我不认为这是PHP的问题,我认为问题是“表格中的表格”。试着去掉所有的格式(只留下表单元素),然后看看它是否有效。这就是解决问题的方法。请确保所有表单元素都具有有效的名称属性。最好是你可以发布完整的HTML,这样我们就可以看到。尝试
var\u dump($\u POST)
查看结果。内部表将放在外部表之后,因此这实际上应该可以工作。但是最好验证你的HTML。将帮助您更快地获得更好的结果。顺便说一句:使用表格格式化表单也可以,这并不完美,但实际上有理由这样做,特别是如果你对特定的浏览器版本不挑剔的话。@PeeHaa我会发布HTML,但它很庞大,但上面的内容是准确的,我不清楚我是否会更新我原来的帖子,内部表格在一对“s”中。这使它有效吗?@javano,不,它应该在
内,而不是
内。请务必查看文档,尤其是
t车身
部分。
标记只能包含
标记。@javano不,这不表示它有效;第二个
应该在
中。表单出现问题可能是由于浏览器试图修复HTML,导致表单过早关闭。像Firebug或Web Inspector这样的工具应该会显示这一点。它可能看起来像这样:
而不是
。当面对无效的HTML(特别是在处理表格时)时,浏览器可以自由地重新排序和关闭内容,直到它有意义为止。令人惊讶的是,使用Chrome我可以看到情况并非如此,而且所有内容都正确显示,正如您所提到的,缺少的部分是:)@javano,当然,即使HTML无效,浏览器仍将以各自的方式显示它。这就是所谓的,你绝对不应该依赖它。写有效的HTML要容易得多,也可靠得多。很抱歉,我不清楚我是否会更新我的原始帖子,内表在一对的内。这使它有效吗?@javano,不,它应该在
内,而不是
内。请务必查看文档,尤其是
t车身
部分。
标记只能包含
标记。@javano不,这不表示它有效;第二个
应该在
中。表单出现问题可能是由于浏览器试图修复HTML,导致表单过早关闭。像Firebug或Web Inspector这样的工具应该会显示这一点。它可能看起来像这样:
而不是
。当面对无效的HTML(特别是在处理表格时)时,浏览器可以自由地重新排序和关闭内容,直到它有意义为止。令人惊讶的是,使用Chrome我可以看到情况并非如此,而且所有内容都正确显示,正如您所提到的,缺少的部分是:)@javano,当然,即使HTML无效,浏览器仍将以各自的方式显示它。这就是所谓的,你绝对不应该依赖它。写有效的H更容易,也更可靠