Merhabalar arkadaşlar, Sitemizi programlama ile ilgilenen bütün arkadaşlarımızın Türkçe içerik konusunda çektiği sıkıntılar düşünülerek soru/cevap şeklinde bir etkileşimde bulunabilmesi için kurduk. Umuyoruz hepimiz için güzel bir deneyim olur. Hasscript Ekibi

0
Farklı verileri tek sayfada listeleme

Açık 1 Cevaplar 43 Gösterim Php

Merhaba arkadaşlar,  

<li><a  href="a_grubu.php">A Grubu Listesi</a></li> linki ile; 
a_grubu.php sayfasında 
 <?php
     $kisisor=$db->prepare("SELECT * FROM kisiler where kisi_grup='A'");
     $kisisor->execute();
     ?> 
A grubunda olan kişileri listeliyorum. 

Aynı şekilde;
<li><a  href="b_grubu.php">B Grubu Listesi</a></li> linki ile; 
b_grubu.php sayfasında 
 <?php
     $kisisor=$db->prepare("SELECT * FROM kisiler where kisi_grup='B'");
     $kisisor->execute();
     ?> 
B grubunda olan kişileri listeliyorum. 

SORU : Her grup için ayrı ayrı *.php sayfası açmak yerine, tek bir sayfada gruplar.php sayfasında nasıl listelerim ?
 

1 cevap

0

Selamlar Mustafa,

Kavram olarak php dosyaları bir değişken gibi düşünebilirsin. Bu dosyaya dışarıdan değer de alabiliyoruz. Sen şu an dışarıdan bir değer almadan içeride statik işlemler yapıyorsun. POST ve GET metodlara bakabilirsin. Php de nasıl kullanıldığının örnekleri için aşağıda birkaç link bırakayım.

https://koddefteri.net/php/temel-php-dersleri/php-post-metodu.html
https://www.azkod.com/php/php-get-post-metodlari
https://webcesi.com/web-tasarim/php-post-metodu-nedir/

Basitçesi sen dışarından GET metodu kullanarak istediğin değeri alıp sql içine ekleyebilirsin. Şimdilik güvenlik kısımlarını geçelim. Aşağı yukarı şöyle bir kod olacak

$kisi = $_GET['kisi'];
$db->prepare("select * from kisiler where kisi_group='$kisi'")
$db->execute();

Önce POST/GET metodlarını anlaman bence daha önemli.

Kolay gelsin.

(5.3k puan)
3Yorumlar
(110 puan)

Teşekkür ederim. Daha önce asp'de yaptığımız gibi if ile yapamaz mıyız?

örnek olarak 
listeler.asp?liste=1  linki ile 

listeler.asp sayfasında;

<%
liste= request.queryString("tur")

if liste<>"" then
Set Rs=Server.CreateObject("adodb.recordset")

if liste =1 then
Sql="Select * from kisiler where (kisi_grup='A') " //A grubundaki kişiler 
end if
if liste =2 then
Sql="Select * from kisiler where (kisi_grup='B') " //B grubundaki kişiler 
end if
Rs.Open sql,conn,1,3
%>

 

(5.3k puan)
Aynen. Aynısını yapacaksın. Prensipte fark yok. sadece asp de nasıldı php de nasıl diye bi ufaktan bakabilirsin.
(110 puan)

İhtiyacı olanlar için;

if ($_GET['liste']=="1") {
     $kisisor=$db->prepare("SELECT * FROM kisiler where kisi_grup='A'");
     }
     elseif ($_GET['liste']=="2") {
     $kisisor=$db->prepare("SELECT * FROM kisiler where kisi_grup='B'");
     }
     $kisisor->execute();
     ?>

şeklinde yaptım, oldu...