2016-10-29 5 views
0

私はを持っています。私はMYSQLデータベースから結果の表を作成しました。私は、ユーザーがその特定の行を削除するためにクリックできるテーブルの各行にボタンを持っています。テーブルのボタンを使用して特定のデータ行を削除するにはどうすればよいですか?

public function displayMyBooking() { //Added function 

    $userid = $this->data()->id; //gets id of user currently logged in 
    $query = DB::getInstance()->query("SELECT bookingdate, roomid, period FROM booking WHERE id = {$userid}"); //queries database for all bookings made with the id of the current user 
    $amount = $query->count(); //returns amount of results 
    $x=0; 

    //create table 
    $bookingtable = "<table style='width:100%' class='table'>"; 
    $bookingtable .= "<tr>"; 
    $bookingtable .= "<th>Room ID</th>"; 
    $bookingtable .= "<th>Period</th>"; 
    $bookingtable .= "<th>Booking Date</th>"; 
    $bookingtable .= " </tr>"; 

for($x=0; $x<$amount; $x++) { //loop through and output data into table according to amount of results returned 
    $bookingtable .= "<tr>"; 
    $bookingtable .= "<td>" . $query->results()[$x]->roomid. "</td>"; 
    $bookingtable .= "<td>" . $query->results()[$x]->period. "</td>"; 
    $bookingtable .= "<td>" . $query->results()[$x]->bookingdate. "</td>"; 
    $bookingtable .= "<td><input type='submit' name='delete' value='Delete'></td>"; 
    $bookingtable .= "</tr>"; 
    $bookingtable .= ""; 
} 
return $bookingtable;  
} 

この機能は、単に私が予約した日付で作成されたユニークな複合主キーを持つ

 <?php 
      $table = $user->displayMyBooking(); 
      echo $table; 
     ?> 

それぞれが予約(私は部屋の予約システムを開発しています)で、私のページにアクセスされ、期間は予約しました、ユーザーIDなど。どのように私はテーブルに含まれている削除ボタンを使用して特定の行を削除できますか?

+0

CRUDを書く必要があります。作成、読み取り、更新、削除。 https://www.startutorial.com/articles/view/php-crud-tutorial-part-1 – Kray

答えて

0

私はどの<form>displayMyBooking()方法で使用されて表示されていないので、そこに唯一の提出input要素を使用しても意味がありません。代わりに、単にこれまで

$bookingtable .= "<td><input type='submit' name='delete' value='Delete'></td>"; 

このステートメントを変更:

$bookingtable .= "<td><a href='delete.php?roomid=" . $query->results()[$x]->roomid . "'>Delete</a></td>"; 

その後、delete.phpページに、あなたは$_GETスーパーグローバルを使用してその特定の行/ roomidにアクセスすることができ、このように:

0

あなたはこの

<button name="delete_row' value="1234">Delete</button> 

を試すか、例えば行ごとにフォームを作成することができます

<form action="delete.php"> 
<input type="hidden" name="row_id" value="1235" /> 
<td><input type="submit" value="Delete"></td> 
<input 
関連する問題