如何變更刪除功能,以便刪除特定使用者而不是整個使用者清單
P粉087074897
2023-09-05 19:14:48
<p>我有一個註冊到網站的用戶列表,我想在按下刪除連結時刪除特定用戶,但我遇到一個問題,一旦我打開該網站的頁面,所有用戶都會被刪除用戶列表。 </p>
<p>這是使用者列表,其中 <code>$users </code>是一個包含使用者列表的陣列:</p>
<pre class="brush:php;toolbar:false;"><?php foreach($users as $user): ?>
<tr>
<th><?= $user->name ?></th>
<td><?= $user->email ?></td>
<td><a href="<?php $user->delete()>?">Delete</a></td>
<td><a href="">Update</a></td>
</form>
</tr>
<?php endforeach?></pre>
<p>這裡是<code>$user</code>的刪除函數:</p>
<pre class="brush:php;toolbar:false;">public function delete(){
$result=$this->db->delete("users","id={$this->id}");
return $result;
}</pre>
<p>這是資料庫刪除功能:</p>
<pre class="brush:php;toolbar:false;">public function delete(string $table,string $where,int $limit=1){
return $this->connection->exec("DELETE FROM $table WHERE $where LIMIT $limit");
}</pre>
<p>如何在按下「刪除」連結時刪除特定使用者? ! </p>
<p>我嘗試更改刪除功能,但沒有取得結果。 </p>
問題是這段程式碼:
問題是,當您呼叫該頁面時,您將直接刪除用戶,而不是列印刪除頁面的連結。
您需要建立一個單獨的路由(如果您不使用框架,則需要建立一個.php檔案),例如delete_user.php?user_id={your_user_id}或/{user_id}/delete(在框架場景中)
此路由/頁面必須檢查傳入頁面的使用者是否存在廣告,然後透過從資料庫取得使用者並呼叫
delete()
方法來刪除它。之後,您的程式碼將類似於 php 框架場景中的以下內容:
或在獨立場景中像這樣: