2014-04-12 118 views
0

我在HTML中創建了一個表格,並使用foreach循環將特定數據庫表格中的所有信息插入到此HTML表格中。如何從表中刪除一個來自foreach循環的值?

我創建了一個名爲delete的按鈕,用於從數據庫中刪除特定的行,但我遇到了一些問題,因爲我不知道如何使用foreach循環刪除表信息,因爲我總是使用while聲明。

我正在做一種MVC結構,但有了我自己的規則,所以我得到了模型和視圖,我打電話查看所有功能。

而且我做的看法是這樣的:

function fname($array) { 
    foreach($array as $key) { 
     echo $key['row1']; 
     echo "<input type='submit' value='delete'"; 
    } 
} 

而且我做了我的模型功能:

function function() { 
    connect(); 
    $show = ("SELECT * FROM mytable"); 
    $array = db_array($show, 'v'); 
    fname($array); 
} 

你們能幫我一個例子嗎?謝謝。

+0

旁註:你在'echo「輸入中缺少一個'>'輸入=「提交」值='刪除'「;'---'回聲」「;' –

+0

是的,我真的很快,我不能發佈我的真實代碼這裏...但你的筆記不幫助我,我真的想知道如何從foreach循環中刪除東西 – user3429726

回答

0

在循環內爲每一行創建一個窗體,即如果它打印出10行,則表示10種不同的窗體。在提交表單(單擊刪除)時,將row id作爲隱藏參數發送給控制器(執行中),同時輪流發送給模型。模型具有獲取執行的刪除查詢並且該行被刪除。


視圖 -

foreach($array as $key) 
{ 
    $row_id = $key['row_id']; 
    echo "<form action='/deleterow' method='POST'>" 
    echo $key['row1']; 
    echo "<input type='submit' value='delete'>"; 
    echo "<input type='hidden' name='id' value=$row_id>"; 
    echo "</form>"; 
} 


控制器 -

function deleterow($id) 
{ 
    $this->model_name->delete($id); 
} 


型號 -

function delete($id) 
{ 
    $sql = "DELETE FROM table_name WHERE id=$id"; 
    $exe = mysql_query($sql) or die(mysql_error()); 
} 
0

我會嘗試這個

function fname($array){ 
foreach($array as $key=>$val){ 
echo $val['FIELD']; 
echo '<input name="Z" type="hidden" value="'.$key.'" />'; 
echo '<input type="submit" value="Delete"/>'; 
}  
} 

我假設你要製作一個頁面,讓某人可以刪除某些內容?

你需要回顯記錄名稱? (這取決於你從表格和字段中拉出的內容) 當按下刪除按鈕時,你可以對隱藏字段進行操作Z

相關問題