Cara redirect jika id data tidak ada atau sudah dihapus

saya sudah belajar membuat blog dengan php. tapi ada kendala pada halaman single.phpnya, Misalnya saya punya 5 artikel dan link dari masing2 artikel saya share di fb (http://localhost/blog/single.php?id=1) setelah beberapa waktu link dengan id=1 tsb hrs saya hapus karna ada kesalahan, akan tetapi link sdh terlanjur ter share. dan saat diklik halaman akan menunjukan error ( judul_awal in). Bagaimana caranya agar saat link yg sudah dihapus itu saat diklik user dr fb akan redirect ke index atau ke halaman error. Terimakasih

Saya sudah coba redirect tapi gagal. http://pastebin.com/dKvPtbza

avatar rara
@rara

19 Kontribusi 5 Poin

Diperbarui 7 tahun yang lalu

11 Jawaban:

pake if bisa itu, jadi ketika link di klik check dulu didatabase ada atau nggak id nya, kalo ada tampilkan article, kalo gak ada redirect ke index/halaman error.

if(isset($_GET['id'])){ $article = tampilkan_per_id($id); while($row=mysqli_fetch_assoc($article)){ $judul_awal =$row['judul']; $konten_awal =$row['isi']; $tag_awal =$row['tag']; }else{ header ('location:index.php');//jika link sudah dihapus akan redirect ke index "tapi ini gagal" } }

script diatas masih salah, seharusnya else tempatnya tidak di akhir while, tp diakhir if. CMIIW

avatar Code
@Code

50 Kontribusi 48 Poin

Dipost 7 tahun yang lalu

Sudah saya coba tapi ttp gk bisa redirect ke halaman index mas, tetap menampilkan error.

avatar rara
@rara

19 Kontribusi 5 Poin

Dipost 7 tahun yang lalu

ini errornya

avatar rara
@rara

19 Kontribusi 5 Poin

Dipost 7 tahun yang lalu

Didalamnya if(isset($_GET['id'])){} dikasih if lagi, buat check id-nya ada atau nggak didtabase, kalo ada maka while(), kalo gak ada redirect ke index.

avatar Code
@Code

50 Kontribusi 48 Poin

Dipost 7 tahun yang lalu

Maksut error diatas adalah $judul_awal, $konten_awal, $tag_awal tidak terdefinisi, cek lagi apakah sudah bener manggil nama variabel nya

avatar Code
@Code

50 Kontribusi 48 Poin

Dipost 7 tahun yang lalu

Gini mas??

if(isset($_GET['id_iklan'])){ if(!isset($_GET['id_iklan'])){ $iklan = tampilkan_per_kalsel($id); while ($row= mysqli_fetch_assoc($iklan)){ $id_iklan_asal = $row['id_iklan']; $judul_asal = $row['judul']; $harga_asal = $row['harga']; $kategori_asal = $row['kategori']; $deskripsi_asal = $row['deskripsi']; $gambar_asal = $row['gambar']; $provinsi_asal = $row['provinsi']; $kota_asal = $row['kota']; $nama_asal = $row['nama']; $email_asal = $row['email']; $notlp_asal = $row['notlp']; $pinBB_asal = $row['pinBB']; $status_asal = $row['status']; $waktu_asal = $row['waktu']; } }else{ header('location: index.php'); } }

avatar rara
@rara

19 Kontribusi 5 Poin

Dipost 7 tahun yang lalu

Itu saya coba klik link dari data yang sengaja sudah saya hapus mas, id 111 itu sudah saya hapus dari database.

avatar rara
@rara

19 Kontribusi 5 Poin

Dipost 7 tahun yang lalu

Udah Bisa Mas, Terimakasih

avatar rara
@rara

19 Kontribusi 5 Poin

Dipost 7 tahun yang lalu

Bukan mbak, buat function dulu untuk check id di database, isi functionnya query select = "select * from table where id_iklan = $_GET['id_iklan']"; kemudian jika num_rows > 0 maka while(), jika tidak maka redirect ke index.

avatar Code
@Code

50 Kontribusi 48 Poin

Dipost 7 tahun yang lalu

iya ini ternyata salah, semua link jika di klik akan redirect kehalaman error semua walaupun didatabase ada.

avatar rara
@rara

19 Kontribusi 5 Poin

Dipost 7 tahun yang lalu

Nah makanya bukan !isset($_GET['id']) tp hasil check di database. :D

avatar Code
@Code

50 Kontribusi 48 Poin

Dipost 7 tahun yang lalu

Login untuk ikut Jawaban