我遇到了一个小问题,想了解它背后的逻辑。在我的网站上,我有一个表单,管理员将提交有关用户的各种信息,包括一些链接。现在,我不知道会有多少链接,可能是5个,也许是35个。点是我不知道上限,所以我该如何制作这个表格呢?这可能有用:
一旦添加客户表单打开,我将在提交的链接数量中包含管理员类型; 根据该数字,将创建输入字段; PHP将检查列是否已存在,如果不存在,它将创建&提交; 然后,客户的显示页面将从数据中选择*并相应地显示;
这是我不知道如何在这里拉出来的: 如何根据数字X创建X输入字段? 如何让php添加如下列:Link1,Link1status(预定义),Link2,Link2status(预定义)。等等? 如何使客户的显示页面仅以类似方式回显链接的数量:Link1:$ Link1 Link1status:$ Link1status等。
我不是在找你为我编写代码,我只是遇到需要根据某些数字创建html的逻辑问题。
感谢您的帮助! 最好 费舍尔
答案 0 :(得分:1)
您可以制作两个单独的表,一个包含用户,另一个包含所有链接。
Table users with columns (ID, name (for example), ...)
Table links with columns (ID, user_id, link, link_status (for example), ...)
示例:您的用户'John Doe'有三个属性,让我们说头发颜色(棕色),长度(180厘米)和重量(80千克),你得到这个:
Table users with 1 row > (1, John Doe) //(ID, color)
Table links with 3 rows > (1, 1, hair color, brown), (2, 1, length, 180 cm), (3, 1, weight, 80 kg) //(ID, user_id, property, value)
您可以在您的系统上应用此功能。如果您想获取用户的所有链接,只需在“链接”表中搜索“user_id”。
要创建用于插入此记录的表单,请使用具有一个起始行和具有空输入的隐藏行的表。用户可以添加更多带有输入的行来添加链接(您可以使用jQuery的clone()
函数来复制带有空输入的隐藏行)。您可以使用name=array[]
(带输入)在POST后获取数组结果。
答案 1 :(得分:1)
在评论中,你应该使用基于javascript的解决方案:
只需按一下“添加其他链接”按钮:
<div class="links-wrap">
<input type="text">
</div>
<a class="new-link">Add another link</a>
然后:
$('.new-link').click(function() {
$('.links-wrap').append('<input type="text">');
});
然后您可以从所有链接字段中提取数据。
答案 2 :(得分:0)
您可以在完成表单时使用javascript添加链接(如“添加新字段按钮”),这样您就可以根据需要创建任意数量的输入。但是如果你想保持简单,只需用textarea替换链接的所有字段,并让admin添加由冒号或分号分隔的链接。您所要做的就是使用explode
函数获取链接,然后将它们添加到数据库或者您想要用它们做什么。