选择行和返回值到php / mysql

时间:2012-03-08 04:12:49

标签: php mysql

根据从MySql数据库中检索的SELECT信息动态创建客户端表后,如何从客户端表中选择一行并将该行信息返回给PHP,以便我可以将其处理为一个MySql查询返回其他特定信息?

我正在努力实现的目标:我正在创建一个(相对)简单的管理CMS(不使用任何.htaccess,纯服务器端脚本)。在管理页面上,我将根据我请求的信息填充各种表格;让我们使用此示例的网站用户信息。在使用每行的复选框和其他次要信息(用户名,名字/姓氏等)填充客户端表后,我希望能够选中特定名称旁边的复选框,选择一个操作(即查看用户配置文件) ,禁令等)从下拉框中“提交”请求。

问题:我现在如何获取我检查过的单个(或可能是多个)行并将其返回(识别它)到php,以便我可以在该特定行上运行MySql查询( s)仅在提交诉讼后?用户名在我的sql表中是唯一的,因此使用它作为返回信息/值的标识符进行处理将是最好的。请记住,每个页面加载时,该表中数据的位置可能会发生变化,具体取决于新用户和其他情况(换句话说,当表格为时,客户端表格的第1行可能并不总是'Jim Jones'填充。)我不反对任何可能包含javascript / jquery的解决方案,如果这是解决此问题的最佳解决方案。

感谢大家的帮助!

2 个答案:

答案 0 :(得分:0)

你在混合问题。并且运行速度太快,试图通过一个解决方案解决一千个任务。

按几个按钮查看用户的个人资料毫无意义 它必须是一个超链接。

<a href=vireprofile.php?id=20>John Doe</a>

其中20是一个自动递增的唯一标识符(显然不是名称)

对于群组操作,您必须使用数组
和POST方法进行数据修改
所以,这是一个HTML示例

<input type="checkbox" name"box[]" value="20">
<input type="checkbox" name"box[]" value="55">

其中20和55再次为ids PHP

if ($_POST['action'] == 'ban') {
  foreach ($_POST['box'] as $id) doBan($id);
}

答案 1 :(得分:0)

解决方案1 ​​ - HTML - PHP:

要检索PHP的多行,复选框必须是一个数组(例如,“chk []”)。给它们从0开始的值,增加1.

    <tr>
    <td><input type="checkbox" name="chk[]" value="0"/></td>
    <td><input type="text" name="username[]"/></td>
</tr>
<tr>
    <td><input type="checkbox" name="chk[]" value="1"/></td>
    <td><input type="text" name="username[]"/></td>
</tr>

在操作页面中,将其处理为:

foreach ($_POST['chk'] as $value) {
 $username =  $_POST['username'][$value];
// Access other parameters similarly
}

解决方案2:jQuery(如果您使用jQuery将值发布到PHP)

    $.each($("input[name='chk[]']"), function(ind, inval) {

        if ($(this).is(":checked")) {

            values.push($("input[name='username[]']").get(ind).getAttribute("value"));

        }  

      // values will contain the array of usernames for the checked checkboxes         
    });