2012-03-08 124 views
0

之後基於從MySQL數據庫檢索選擇信息,我如何能夠從客戶端表中選擇一個行並返回該行(一個或多個)信息反饋動態創建一個客戶端表到PHP中,以便我可以將它處理成MySql查詢以返回其他特定信息?選擇行和返回值的PHP/MySQL

我想要實現:我創建一個(相對)簡單的行政CMS(不使用任何的.htaccess,純粹的服務器端腳本)。在管理頁面上,我將根據我請求的信息填充各種表格;讓我們使用這個例子的網站用戶信息。在爲每行和其他次要信息(用戶名,名字/姓氏等)填充客戶端表格後,我希望能夠檢查特定名稱旁邊的複選框,選擇一個操作(即查看用戶配置文件,禁止等)從下拉框中選擇並提交請求。

問題:我現在該如何採取單個(或可能是多個)行,我檢查,並返回它(識別它)到PHP,這樣我就可以只在特定行(S)運行MySQL查詢,行動提交後?用戶名在我的sql表中是唯一的,所以用它作爲處理返回信息/值的標識符是最好的。請記住,根據新用戶和其他情況,表中數據的位置可能會隨着每次頁面加載而發生變化(換句話說,當表格爲時,客戶端表格的第1行可能並不總是'Jim Jones' )我並不反對任何可能包含javascript/jquery的解決方案,如果這是解決這個問題的最佳解決方案的話。

感謝您的幫助!

+0

我認爲jquery post會幫助你http://api.jquery.com/jQuery。post/ – 2012-03-08 04:18:35

回答

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); 
} 
+0

你是對的,我在混合事務,即使在管理面板中,我應該使用戶配置文件鏈接,而不是數據庫調用。這個foreach正是我正在尋找的;當我嘗試弄清楚我正在嘗試做什麼時,我的腦部凍結很嚴重,因此我可以將它放入簡單的搜索條件中,而無需在此處發佈問題。感謝您的幫助! – 2012-03-09 00:35:15

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   
    }); 
+0

感謝您的幫助。您的jQuery解決方案實際上可以幫助我實現將來需要整合的功能。謝謝你的幫助! – 2012-03-09 00:36:06