Rumah pembangunan bahagian belakang masalah PHP Bagaimana untuk memadamkan siaran dalam php dengan mengklik padam

Bagaimana untuk memadamkan siaran dalam php dengan mengklik padam

Mar 29, 2023 am 10:13 AM

Dengan populariti Internet, pembinaan laman web semakin menjadi aktiviti dalam talian yang biasa. Dalam laman web, pembinaan forum amat popular. Ramai orang akan menyiarkan pendapat mereka tentang perkara tertentu dalam forum, atau bertanya beberapa soalan, menunggu jawapan daripada netizen. Tetapi ramai orang mungkin tidak didedahkan dengan pengurusan bahagian belakang dan tidak tahu cara melaksanakan beberapa fungsi dalam tapak web melalui kod. Artikel ini secara ringkas akan memperkenalkan keperluan biasa: bagaimana untuk memadamkan siaran dalam forum dengan mengklik butang padam.

Di sini kami mengandaikan bahawa anda sudah mempunyai asas PHP tertentu dan boleh membangunkan tapak web. Untuk anda lebih memahami dan menggunakan kod tersebut, artikel ini akan dibahagikan kepada dua bahagian. Bahagian pertama secara ringkas akan membawa anda memahami kod yang diperlukan untuk melaksanakan fungsi, termasuk kod bahagian hadapan dan kod belakang bahagian kedua akan menerangkan prinsip pelaksanaan bahagian kod ini secara terperinci, dengan harapan untuk membolehkan anda melakukannya lebih memahami ilmu.

1. Pelaksanaan kod

1. Kod bahagian hadapan

Dalam kod bahagian hadapan, kami perlu menyediakan butang padam untuk setiap pengguna siaran. Secara umumnya, butang padam selalunya direka di penjuru kanan sebelah atas siaran. Pelaksanaan khusus adalah seperti berikut:

<a href="delete_post.php?post_id=XXX" class="delete-button">删除</a>
Salin selepas log masuk

Dalam kod ini, kami menambah atribut href pada butang padam, yang menghala ke fail latar belakang bernama delete_post.php. Kami juga menghantar parameter href dalam nilai atribut post_id, yang mewakili nombor siaran yang akan dipadamkan.

Kod di atas hendaklah bersarang dalam kod HTML siaran. Apabila pengguna menyemak imbas siaran, mereka boleh melihat butang ini untuk memadamkan siaran.

2. Kod hujung belakang

Dalam kod hujung belakang, kami perlu menggunakan fail delete_post.php untuk menentukan sama ada pengguna mempunyai kebenaran untuk memadamkan siaran tersebut. Jika dia mempunyai kebenaran, padamkan siaran itu daripada pangkalan data. Pelaksanaan khusus adalah seperti berikut:

// 1.检查用户是否已经登录
session_start();
if (!isset($_SESSION["user_id"])) {
  echo "对不起,您还没有登录!";
  exit;
}

// 2.检查帖子是否存在
if (!isset($_GET["post_id"])) {
  echo "对不起,您访问的帖子不存在!";
  exit;
}

// 3.获取帖子编号
$post_id = $_GET["post_id"];

// 4.连接到数据库
$pdo = new PDO("mysql:host=localhost;dbname=my_db", "my_username", "my_password");

// 5.检查该用户是否能删除该帖子
$stmt = $pdo->prepare("SELECT user_id FROM posts WHERE post_id = ?");
$stmt->execute(array($post_id));
$rows = $stmt->fetchAll(PDO::FETCH_ASSOC);
if (count($rows) !== 1 || $rows[0]["user_id"] !== $_SESSION["user_id"]) {
  echo "对不起,您没有权限删除该帖子!";
  exit;
}

// 6.删除帖子
$stmt = $pdo->prepare("DELETE FROM posts WHERE post_id = ?");
$stmt->execute(array($post_id));

echo "帖子删除成功!";
Salin selepas log masuk

Dalam kod di atas, kami menyemak sama ada pengguna telah log masuk, sama ada siaran itu wujud dan memperoleh nombor siaran. Kami kemudiannya menyambung ke pangkalan data, menyemak sama ada pengguna mempunyai kebenaran untuk memadamkan siaran dan akhirnya memadamkan siaran tersebut. Jika sebarang ralat berlaku semasa proses, kami akan mengeluarkan mesej ralat pada halaman web. Jika semuanya berjalan lancar, kami akan mengeluarkan mesej bahawa siaran telah berjaya dipadamkan.

2. Prinsip Pelaksanaan

1. Prinsip pelaksanaan kod hadapan

Inti pelaksanaan kod hadapan terletak pada teg <a> dalam HTML. Kesan lompatan boleh dicapai dengan menetapkan atribut href untuk teg ini. Dengan menghantar parameter untuk atribut ini, anda boleh menghantar parameter ini ke halaman sasaran sambil melompat ke halaman sasaran. Dengan cara ini, dalam skrip PHP halaman sasaran, parameter ini boleh diperolehi melalui pembolehubah $_GET. Fail delete_post.php dalam kod di atas sebenarnya adalah halaman yang digunakan untuk memproses butang padam siaran ini. Apabila pengguna mengklik butang ini di latar depan, penyemak imbas akan melompat ke fail delete_post.php dan menghantar nombor siaran ke fail ini.

Perlu diambil perhatian bahawa jika pengguna tidak log masuk, pengguna harus digesa untuk log masuk dalam kod latar depan dan bukannya membiarkan pengguna melompat ke pemprosesan latar belakang. Dalam pelaksanaan kod artikel ini, kami menggunakan session untuk menentukan sama ada pengguna telah log masuk. Jika $_SESSION["user_id"] tidak wujud, ia boleh dianggap bahawa pengguna tidak log masuk. Pada masa ini, mesej yang menggesa pengguna untuk log masuk harus dikeluarkan dan bukannya melompat ke halaman latar belakang.

2. Prinsip pelaksanaan kod backend

Inti pelaksanaan kod backend ialah perpustakaan kelas PDO dalam PHP. Dengan menggunakan perpustakaan kelas ini, kami boleh menyambung ke pangkalan data MySQL dengan mudah dan melaksanakan pernyataan SQL dengan cara yang selamat.

Dalam kod latar belakang, kita perlu melakukan perkara berikut:

1) Semak sama ada pengguna telah log masuk. Dalam artikel ini, kami menggunakan session untuk menyimpan status log masuk pengguna. Jika $_SESSION["user_id"] tidak wujud, ia boleh dianggap bahawa pengguna tidak log masuk, dan mesej yang menggesa pengguna untuk log masuk harus dikeluarkan.

2) Semak sama ada siaran itu wujud. Sebelum mendapat nombor setiap jawatan, kita perlu tentukan dahulu sama ada jawatan itu benar-benar wujud. Jika ia tidak wujud, mesej yang menunjukkan bahawa siaran itu tidak wujud harus dikeluarkan.

3) Dapatkan nombor pos. Selepas kami mengesahkan bahawa jawatan itu wujud, kami boleh mendapatkan nombor jawatan melalui pembolehubah $_GET.

4) Sambung ke pangkalan data. Pustaka kelas PDO dalam PHP menyediakan banyak kaedah untuk menyambung ke pangkalan data MySQL. Apa yang perlu kita lakukan ialah menggunakan perpustakaan kelas ini untuk mencipta objek sambungan dan memanggil kaedah yang berkaitan untuk melaksanakan pernyataan SQL yang kita perlukan.

5) Semak sama ada pengguna boleh memadamkan siaran. Di sini, kita perlu menanyakan jadual posts dalam pangkalan data dan menyemak sama ada siaran itu wujud dan sama ada pengguna mempunyai kebenaran untuk memadamkan siaran tersebut. Akhir sekali, kami menggunakan fungsi prepare untuk melaksanakan pernyataan yang disediakan dan fungsi execute untuk melaksanakan pernyataan SQL.

6) Padamkan siaran. Jika pengguna mempunyai kebenaran untuk memadamkan siaran, kami boleh menggunakan pernyataan DELETE untuk memadamkan siaran daripada pangkalan data.

Perlu diingat bahawa kita mesti mempertimbangkan kelemahan suntikan SQL apabila melaksanakan pernyataan SQL dalam PHP. Dalam kod pelaksanaan yang diperkenalkan dalam artikel ini, perpustakaan kelas PDO telah mendayakan pernyataan yang disediakan secara lalai, dan pengikatan parameter juga digunakan untuk mengelakkan kelemahan suntikan.

3. Ringkasan

Saya harap melalui kajian artikel ini, anda sudah boleh memahami cara memadam post dalam forum dengan mengklik butang padam. Perlu dinyatakan bahawa kami hanya menyediakan kaedah pelaksanaan yang mudah dalam artikel ini dan tidak memberikan penjelasan terperinci tentang semua butiran pelaksanaan. Jika anda ingin benar-benar menguasai mata pengetahuan ini, anda perlu mempunyai pemahaman yang lebih mendalam tentang PHP dan MySQL. Kami mengesyorkan agar anda merujuk kepada beberapa tutorial khusus untuk PHP dan MySQL untuk menguasai mata pengetahuan ini dengan lebih baik.

Atas ialah kandungan terperinci Bagaimana untuk memadamkan siaran dalam php dengan mengklik padam. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Cara Membuka Segala -galanya Di Myrise
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

PHP 8 JIT (Just-in-Time) Penyusunan: Bagaimana ia meningkatkan prestasi. PHP 8 JIT (Just-in-Time) Penyusunan: Bagaimana ia meningkatkan prestasi. Mar 25, 2025 am 10:37 AM

Kompilasi JIT Php 8 meningkatkan prestasi dengan menyusun kod yang sering dilaksanakan ke dalam kod mesin, memberi manfaat kepada aplikasi dengan pengiraan berat dan mengurangkan masa pelaksanaan.

Penyulitan PHP: Penyulitan simetri vs asimetrik. Penyulitan PHP: Penyulitan simetri vs asimetrik. Mar 25, 2025 pm 03:12 PM

Artikel ini membincangkan penyulitan simetri dan asimetrik dalam PHP, membandingkan kesesuaian, prestasi, dan perbezaan keselamatan mereka. Penyulitan simetri lebih cepat dan sesuai untuk data pukal, manakala asimetrik digunakan untuk pertukaran utama yang selamat.

Pengesahan PHP & amp; Kebenaran: Pelaksanaan selamat. Pengesahan PHP & amp; Kebenaran: Pelaksanaan selamat. Mar 25, 2025 pm 03:06 PM

Artikel ini membincangkan pelaksanaan pengesahan dan kebenaran yang mantap dalam PHP untuk mencegah akses yang tidak dibenarkan, memperincikan amalan terbaik dan mengesyorkan alat peningkatan keselamatan.

OWASP Top 10 PHP: Huraikan dan mengurangkan kelemahan umum. OWASP Top 10 PHP: Huraikan dan mengurangkan kelemahan umum. Mar 26, 2025 pm 04:13 PM

Artikel ini membincangkan kelemahan OWASP 10 dalam strategi PHP dan mitigasi. Isu -isu utama termasuk suntikan, pengesahan yang rosak, dan XSS, dengan alat yang disyorkan untuk memantau dan mendapatkan aplikasi PHP.

Bagaimana anda mengambil data dari pangkalan data menggunakan PHP? Bagaimana anda mengambil data dari pangkalan data menggunakan PHP? Mar 20, 2025 pm 04:57 PM

Artikel membincangkan mendapatkan data dari pangkalan data menggunakan PHP, meliputi langkah, langkah keselamatan, teknik pengoptimuman, dan kesilapan umum dengan penyelesaian.

PHP CSRF Perlindungan: Bagaimana untuk mencegah serangan CSRF. PHP CSRF Perlindungan: Bagaimana untuk mencegah serangan CSRF. Mar 25, 2025 pm 03:05 PM

Artikel ini membincangkan strategi untuk mencegah serangan CSRF di PHP, termasuk menggunakan token CSRF, kuki tapak yang sama, dan pengurusan sesi yang betul.

Apakah tujuan mysqli_query () dan mysqli_fetch_assoc ()? Apakah tujuan mysqli_query () dan mysqli_fetch_assoc ()? Mar 20, 2025 pm 04:55 PM

Artikel ini membincangkan fungsi mysqli_query () dan mysqli_fetch_assoc () dalam PHP untuk interaksi pangkalan data MySQL. Ia menerangkan peranan, perbezaan, dan memberikan contoh praktikal penggunaannya. Hujah utama memberi tumpuan kepada manfaat usin

PHP Secure File Muat naik: Mencegah kelemahan berkaitan fail. PHP Secure File Muat naik: Mencegah kelemahan berkaitan fail. Mar 26, 2025 pm 04:18 PM

Artikel ini membincangkan mendapatkan muat naik fail PHP untuk mengelakkan kelemahan seperti suntikan kod. Ia memberi tumpuan kepada pengesahan jenis fail, penyimpanan selamat, dan pengendalian ralat untuk meningkatkan keselamatan aplikasi.

See all articles