选择多个用户并向他们发送邀请
我很抱歉,如果有一个类似的post,我还没有找到,我只能看到Facebook API。 如果你知道一个post,请指出我正确的方向,谢谢。
我想要做的是….
允许用户通过从列表中选择任何成员(多个选择,可能使用JQuery)并发送邀请来邀请任何成员加入他/她的事件。
我理解我所拥有的理论……
-
让用户列表在表格中动态显示(我知道如何做到这一点)
-
允许选择每个用户。 (不知道如何在JQuery中这样做)
-
然后,当您单击某个用户时,他们的用户ID将被放入某种类型的数组中(可能需要帮助)
-
然后,当提交邀请按钮时,将id放入名为invitations的数据库表中,同时将其邀请的事件的ID。 (我知道该怎么做)
我已经看了jquery.com但是因为我不是一个专家,我不确定我需要做什么。 如果您还需要了解其他信息,请询问。
非常感谢任何帮助,谢谢。
编辑:应该添加,我的数据库是MySQL,我在PHP编码。
创建表单元素,将表格放在表单中。 在每个表行td上创建复选框。 复选框值是用户ID的值。
使用Jquery序列化复选框并将序列化表单提交到php脚本以执行后端腿部工作…
$('#submit-form-button').click(function(){ var checkboxes = $('.checkboxes').serialize(); $.ajax({ url: 'processInvites.php', dataType: "json", data: {checkBoxes: checkboxes}, success: function(data){ console.log("Form was successful"); }, error: function(data){ console.log("Form was a failure"); } }); });
使用PHP来爆炸序列化数组..应该注意你可以在php手册中引用urldecode(),它在手册底部有一个类似的声明,就在评论之前.. http://php.net/manual/ EN / function.urldecode.php
$c = explode('&', $_POST['checkBoxes']); $i = 0; while ($i < count($c)){ $b = explode('=', $c[$i]); $checkBox[] = urldecode($b[1]); $i++; }
并validation它是否存在于数据库中..
$listOfUsers = //SQL HERE TO GET ARRAY OF USERS IDs IN KEY => VALUE FORM. foreach ($checkBox as $c){ if(in_array($c, $listOfUsers){ //INSERT USER ID IN INVITATIONS TABLE //SQL HERE, MAKE SURE TO XSS FILTER YOUR POST INPUTS }else{ //User isnt in database, do something else. // don't return false or fail because you want to continue processing // write to a log file? } }
我没有对此进行测试,但我使用完全相同的概念用于选择“类别”列表并从db中拉回等于类别ID的行的不同应用程序。