猿问

从没有JavaScript的HTML表单中发布数组

我的表单有点复杂,我希望通过本地发布一个元组数组来简化服务器端(PHP)处理。


表单的第一部分代表一个User:


名字

电子邮件

地址

等等

表单的第二部分代表一棵树:


水果

高度

等等

问题是我需要能够以相同的形式为单个用户发布多个树。我想以树的数组作为单个用户发送信息,但这对于表单而言可能太复杂了。唯一想到的是使用javascript使用User对象和Tree对象数组创建一些JSON消息。但是最好避免使用JavaScript支持更多用户(某些人已关闭脚本)。


慕姐8265434
浏览 546回答 3
3回答

慕哥9229398

检查这一。<input type="text" name="firstname"><input type="text" name="lastname"><input type="text" name="email"><input type="text" name="address"><input type="text" name="tree[tree1][fruit]"><input type="text" name="tree[tree1][height]"><input type="text" name="tree[tree2][fruit]"><input type="text" name="tree[tree2][height]"><input type="text" name="tree[tree3][fruit]"><input type="text" name="tree[tree3][height]">它应该最终像这样在$ _POST []数组中(PHP格式以便于可视化)$_POST[] = array(&nbsp; &nbsp; 'firstname'=>'value',&nbsp; &nbsp; 'lastname'=>'value',&nbsp; &nbsp; 'email'=>'value',&nbsp; &nbsp; 'address'=>'value',&nbsp; &nbsp; 'tree' => array(&nbsp; &nbsp; &nbsp; &nbsp; 'tree1'=>array(&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 'fruit'=>'value',&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 'height'=>'value'&nbsp; &nbsp; &nbsp; &nbsp; ),&nbsp; &nbsp; &nbsp; &nbsp; 'tree2'=>array(&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 'fruit'=>'value',&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 'height'=>'value'&nbsp; &nbsp; &nbsp; &nbsp; ),&nbsp; &nbsp; &nbsp; &nbsp; 'tree3'=>array(&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 'fruit'=>'value',&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 'height'=>'value'&nbsp; &nbsp; &nbsp; &nbsp; )&nbsp; &nbsp; ))

收到一只叮咚

您还可以发布多个具有相同名称的输入,并通过在输入名称中添加空方括号,将它们保存到数组中,如下所示:<input type="text" name="comment[]" value="comment1"/><input type="text" name="comment[]" value="comment2"/><input type="text" name="comment[]" value="comment3"/><input type="text" name="comment[]" value="comment4"/>如果您使用php:print_r($_POST['comment'])&nbsp;你会得到这个:Array ( [0] => 'comment1' [1] => 'comment2' [2] => 'comment3' [3] => 'comment4' )

慕森王

数组索引中允许使用哪些字符?我们可以使用@ @吗?示例:tree[tree 1][fr ui_t]tree[tree.1][fru:it]&nbsp;tree[tree@1][fru,it]&nbsp;_是键命名中唯一的安全分隔符吗?
随时随地看视频慕课网APP
我要回答