2013-03-08 89 views
1

我正在做一個電影庫作爲學校派對,並有一個數據庫表中的電影列表,我希望在每一行旁邊都有一個編輯和一個刪除選項。編輯和刪除表格數據的每一行按鈕?

我想使用它的編輯/刪除鏈接。像:

"<a href='moviestorage.php?edit=" . $id . "'>Edit</a>" 

但我不確定我怎麼能釣起來的ID爲每部電影讓it's從數據庫中刪除。我應該寫什麼問題?我需要一個單獨的delete.php文件嗎? 我是一個非常新手,如此裸露我:) 下面你可以看到我已經完成的代碼。

<?php 

     require 'connect.inc.php'; 

//This feels incomplete... I´m trying here to fish the ID... 
     $id = "SELECT id from movies"; 
     $query = "DELETE FROM movies WHERE id='$id'"; 


     $query = "SELECT * FROM movies, categories WHERE movies.genre_id = categories.genre_id"; 
     $result = mysql_query($query); 

     if (!$result) die ("Database access failed:" .mysql_error()) ; 

     $rows = mysql_num_rows($result); 

     echo '<table><tr><th>Title</th><th>Release year</th><th>Genre</th><th>Director</th><th>Update</th><th>Delete</th></tr>'; 

     for ($j = 0 ; $j < $rows ; ++$j) { 
     echo '<tr><td>' . mysql_result($result,$j,'title') . '</td>' ; 
     echo '<td>' . mysql_result($result,$j,'release_year') . '</td>' ; 
     echo '<td>' . mysql_result($result,$j,'genre') . '</td>' ; 
     echo '<td>' . mysql_result($result,$j,'director') . '</td>' ; 
     echo '<td>'."<a href='edit_movie.php?edit=" . $id . "'>Edit</a>".'</td>' ; 
     echo '<td>'."<a href='delete.php?delete=" . $id . "'>Delete</a>".'</td></tr>' ; 

     } 
     echo '</table>'; 

     include 'add_movie.php'; 
    ?> 
+1

我當然希望有'delete.php'上的確認對話框......有些用戶代理已知可以預取結果頁面。通常,'POST','GET'不會改變數據的變化(儘管它們當然可以在稍後向你展示「POST」的形式)。 – Wrikken 2013-03-08 00:18:51

回答

0

我會建議你使用一個窗體爲每一行刪除和編輯按鈕和一個帶ID的隱藏字段。然後,您可以將該表單發佈到正確的腳本並確定要採取的操作。

如果您必須使用鏈接來刪除項目,至少可以通過鏈接導向另一個帶有用戶必須提交的表單以及發佈到您的刪除腳本的確認頁面。

+0

感謝您的評論!是的,也許我應該這樣做!我應該把洞表放在一個表格中的所有領域?或者,也許後來的選擇是更好的,有鏈接導致delete.php哪裏有一個確認刪除表單... @jeroen – Lisa 2013-03-08 00:28:22

+0

@Karolina我會使用一個表單/電影,而不是所有領域的一種形式。無論上一步(按鈕或鏈接)如何,確認步驟總是一個好主意。 – jeroen 2013-03-08 00:30:01

+0

你好,所以我只是想回顯一個表單只是爲了刪除按鈕,並把value =「'。mysql_result($ result,$ j,'id')。'」我不知道如何獲取id這沒有用。我工作了很長時間,我在這裏發佈的代碼,如果我必須改變一切形式,我不知道如何去做。所以我想我可以把一個表單放在按鈕的編輯和刪除中,並使用value =「'。mysql_result($ result,$ j,'id')。'」。那是錯的嗎? – Lisa 2013-03-08 00:57:16

1

,如果你要編輯和新頁面上刪除比你可以把超鏈接這樣

echo "<a href=\"edit.php?id=".mysql_result($result,$j,'id')."\"><strong>EDIT</strong>"; 

    echo "<a href=\"delete.php?id=".mysql_result($result,$j,'id')."\"><strong>delete</strong>"; 

爲刪除您可以刪除鏈接使用該

echo "<a href=\"delete.php?id=".mysql_result($result,$j,'id')."\" onclick=\"return confirm('You want to delete your own account???');\"><strong>delete</strong>"; 

使用

$id = $_GET['id']; 

希望這將是有用的,你

+0

謝謝您的回覆!我只是嘗試了你的代碼,但不能讓它工作:(我設法解決刪除按鈕,我做了一個隱藏字段的形式。但我想我想做的編輯選項的鏈接,該鏈接正在導致編輯表單頁面。我只是不知道如何讓選擇的ID跟隨到編輯頁面,以便表格字段中的數據將填入編輯表單中。我很瘋狂,因爲我不能解決這個問題:( – Lisa 2013-03-08 23:51:28

+0

它非常容易通過$ id = $ _ GET ['id']獲取id;比獲取sql結果$ result = mysql_query(「select * from table_name where id ='$ id'「)並使用while($ row = musql_fetch_assoc($ result)){$ id = $ row ['id']}比在需要使用」..現在希望它可以用於你.. – dp4solve 2013-03-11 05:11:15

0

如果你需要一個簡單而有效的解決方案,使用數據表。 :) 請在谷歌搜索。花了一些時間研究如何實施它,這將在未來節省大量的時間。

相關問題