首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >从表单中的两个字段发布后,在PHP中将两个数组配对

从表单中的两个字段发布后,在PHP中将两个数组配对
EN

Stack Overflow用户
提问于 2011-06-02 01:05:06
回答 3查看 300关注 0票数 1

我在一个表单(ip:port)中有两个字段。我想把它们加在一起,使一个字符串,例如127.0.0.1:11111,进入一个数据库。目前我有这个表格。

代码语言:javascript
运行
复制
        <ul id="textlist">
            <li>IP: <input type="text" maxlength="15" size="15" name="ip[]" value="" />:<input type="text" name="port[]" maxlength="5" size="5" value="27015" /></li>
        </ul>

它提交给它进行解析。

代码语言:javascript
运行
复制
$ip = array();
foreach ($_POST['ip'] as &$value) {
    if ($value != "") {
            if (preg_match("/[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\:[0-9]{1,5}/", $value)) {
                $ip[] = addslashes(htmlentities($value));
            } else {
                $error = 'Invalid IP Address. Please go back and try again.';
            }
    }
}

$port = array();
foreach ($_POST['port'] as &$value) {
        if ($value != "") {
                $port[] = addslashes(htmlentities($value));
        }
    }
}

然后,我最终得到了2个ip和端口阵列(每个最多5个),在添加到数据库之前,我希望将它们成对地连接在一起。

谢谢你的帮助!

EN

Stack Overflow用户

发布于 2011-06-02 02:08:58

您可以通过稍微重新格式化您的表单来使自己的生活变得更容易。您可以给您的ip和端口字段显式索引,而不是依赖于[]行为,或者您可以将每个ip和端口捆绑到一个更大数组的子字段中。

(下面的示例中省略了对示例不重要的属性和其他内容)

选项a:

代码语言:javascript
运行
复制
<li><input name="ip[1]" />: <input name="port[1]" /></li>
<li><input name="ip[2]" />: <input name="port[2]" /></li>
<li><input name="ip[3]" />: <input name="port[3]" /></li>
<!-- etc -->

这应该返回两个数组,一个IP数组和一个Port数组,每一行的索引都相同。然后,您可以使用foreach ($ip as $key => $val)并使用$key中的值从端口数组中获取相应的值。

选项b:

代码语言:javascript
运行
复制
<li><input name="connection[][ip]" />: <input name="connection[][port]" /></li>
<li><input name="connection[][ip]" />: <input name="connection[][port]" /></li>
<li><input name="connection[][ip]" />: <input name="connection[][port]" /></li>
<!-- etc -->

这应该返回单个数组,其中每一行都由捆绑在一起的IP和端口组成。然后,您可以对数组执行foreach操作。

代码语言:javascript
运行
复制
foreach ($connection as $row)
{
    var_dump ($row ['ip'], $row ['port']);
}
票数 0
EN
查看全部 3 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6204998

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档