Cara mengarahkan tombol dinamis berdasarkan ID DB onclick dan mengambil catatan yang terkait dengan ID yang sama

pemrograman


Saya memiliki tombol dinamis, ketika diklik (Garis Besar Kursus), mengambil ID catatan db mysql dan mengarahkan ulang ke halaman.

Saya ingin mengambil semua data yang terkait dengan ID yang diklik dan ditampilkan pada halaman yang sama meskipun garis besar kursus berbeda.
yang tidak berfungsi.

Apa yang saya coba:

//button_clicked.php:
<?php 
session_start();
?>
<!DOCTYPE html>
<html>
<body>
<?php
include('connect.php');

// Fetch course data from database
$query = "SELECT id, btn_label, title FROM course";
$result = mysqli_query($conn, $query);
// Generate buttons with course IDs as identifiers
while ($row = mysqli_fetch_assoc($result)) {
    $courseID = $row['id'];
    $courseName = $row['btn_label'];
 
    echo "<button class='courseButton' onclick='redirectToCourse($courseID)'>$courseName</button>";

}
mysqli_free_result($result);

?>
<script src="bttn_clicked.js"></script>
</body>
</html>

//button_clicked.js

function redirectToCourse(courseID) {
    window.location.href = "course_display.php?id=" + courseID;
 }

Solusi 1

Cara terbaik dan teraman Anda adalah dengan memanfaatkan sesi yang telah Anda deklarasikan di halaman ‘button_clicked.php’ –

Mengutip:

Variabel sesi bekerja dengan menyimpan informasi pengguna untuk digunakan di beberapa halaman (misalnya nama pengguna, nama kursus, dll). Secara default, variabel sesi bertahan hingga pengguna menutup browser atau sesi ditutup.

Untuk mengatur variabel Anda –

PHP
<?php
//Set session variables...
$_SESSION["courseID"] = $courseID;
$_SESSION["courseName"] = $courseName;
?>

Untuk menggunakan nilai-nilai ini di halaman baru Anda ‘course_display.php’ –

PHP
<?php
session_start(); // Always start the page with 'session_start()...

//Echo session variables that were set on your previous page...
echo "User ID is - " . $_SESSION["courseID"] . ".<br>";
echo "Course Name is - " . $_SESSION["courseName"] . ".";
?>

Anda dapat menggunakan nilai-nilai ini di halaman mana pun selama sesi terbuka dan valid.

Untuk melihat semua variabel yang terdapat dalam suatu sesi –

PHP
<?php
print_r($_SESSION);
?>

SELALU hancurkan sesi Anda setelah Anda selesai melakukannya –

PHP
<?php
session_start();

//Remove all session variables...
session_unset();

//Destroy the session...
session_destroy();
?>

Ini adalah dasar-dasar penanganan sesi, masih banyak lagi yang bisa Anda temukan dengan mencari di Google, namun ini akan mengarahkan Anda ke arah yang benar. Baca juga lebih lanjut tentang ini –
Sesi PHP[^]

コメント

タイトルとURLをコピーしました