Arama butonu
Bu konudaki kullanıcılar: 1 misafir
11
Cevap
581
Tıklama
0
Öne Çıkarma
PHP ustaları ufak bir tablolama işim var yardımcı olurmusunuz?
K
20 yıl
Yarbay
Konu Sahibi

<?php 


$host = 'localhost';
$db = 'beyder';
$username = 'root';
$password = '';

$conn = mysql_connect("$host", "$username", "$password") or die("unable to connect to mysql");
mysql_select_db("$db", $conn) or die("unable to select the database");

echo "<table cellspacing=\"2\" cellPadding=\"0\" width=\"100%\" align=\"center\" border=\"0\">
<tr>\n
<td align=middle width=\"1%\" height=\"18\" bgcolor=\"red\"></td>
<td align=middle width=\"29%\" height=\"18\" bgcolor=\"red\"><b>Uyeno</b></td>
<td align=middle width=\"29%\" height=\"18\" bgcolor=\"red\"><b>Uyeadi</b></td>
<td align=middle width=\"25%\" height=\"18\" bgcolor=\"red\"><b>Kan Grubu</b></td>
<td align=middle width=\"15%\" height=\"18\" bgcolor=\"red\"><b>Birimi</b></td>
<td align=middle width=\"1%\" height=\"18\" bgcolor=\"blue\"></td></TR>
<tr>\n";
$a = 1;
$uyelistesi = $db->sql_query("SELECT uyeno, uyeadi, kid, bid FROM uyeler ORDER BY uyeid DESC LIMIT 0,10");
while ($row = $db->sql_fetchrow($uyelistesi)) {

$uyegoster = $db->sql_query("SELECT uyeid, uyeadi FROM uyeler WHERE uyeadi ='$row[kid]'");
list($uyeid, $uyeadi) = $db->sql_fetchrow($uyegoster);
echo "<TD align=left>$isim</TD>";

$birimgoster = $db->sql_query("SELECT bid, birimadi FROM birimler WHERE birimadi='$row[bid]'");
list($bid, $birimadi) = $db->sql_fetchrow($birimgoster);
echo "<TD align=left>$isim</TD>";
$a++;
}

?>




Yukarıda elimden geldigi kadar ordan burdan aldıgım kodlarla bu kadar yapabildim ama olmadı tabi :-)
veritabanını hazırladım kusursuz bir sekilde... yapmak istedigim veritabanında bulunan uyelerin bir tablo dökümü ile listelenmesi.Veritabanında yapı olarak uyelere ayrı bir table olusturdum kan grupları ve baglı oldukları birim baska bir tableden id numarası ile cagılıyor tabi tabloda bu idlere karsılık olarakta birim adı ve kan grubu geliyor.Bana sadece anlasılabilir bir ornek gosterin yeter.yardımcı olursanız sevinirim.
Örnek olarak ;


BİRİMİ
-----------------------------------
- uyeno uyeadi kangrb
-
-
-
-
-
-
-------------------------------------

BİRİMİ
-----------------------------------
- uyeno uyeadi kangrb
-
-
-
-
-
-
-------------------------------------
-
-
-
-
-
-

Böyle bir döküman almak istiyorum simdiden tesekkurler

DH forumlarında vakit geçirmekten keyif alıyor gibisin ancak giriş yapmadığını görüyoruz.

Üye olduğunda özel mesaj gönderebilir, beğendiğin konuları favorilerine ekleyip takibe alabilir ve daha önce gezdiğin konulara hızlıca erişebilirsin.

Üye Ol Şimdi Değil



S
20 yıl
Binbaşı

Anladığım Kadarıyla Birşeyler Karaladım..Umarım Doğru Anlamışımdır..
Bu Arada Kodları Denemedim Hata Olabilir Ama En Azından Mantığını Anlamanda Yardımcı Olur Sanırım..


 
<?php
/*
SysTeM32
*/

//Gerekli Ayarlamaları Yap..
$host = 'localhost';
$db = 'beyder';
$username = 'root';
$password = '';
//Veritabanı Bağlantısı..Senin Kodların
$conn = mysql_connect("$host", "$username", "$password") or die("unable to connect to mysql");
mysql_select_db("$db", $conn) or die("unable to select the database");
//Üye Tablosundan Tüm Bilgileri Çek
$uyelistesi = mysql_query("SELECT * FROM uyeler ORDER BY uyeid DESC LIMIT 0,10");
//Üye Tablosundaki Tüm Bilgileri Al, Dizi Oluştur
while ($row = mysql_fetch_array($uyelistesi)) {
//Her Üye İçin $uid Değişkenine Değer Ata
$uid = @mysql_result($uyelistesi,0,"uyeid");
//Birim Tablosunda Her Üyenin ID sine Göre Sorgu Yap
$birimgoster = mysql_query("SELECT * FROM birimler WHERE birimadi='$uid'");
//Geçerli Kayıtta Bulunan Birim Değerini $birim Değişkenine Ata
$birim = @mysql_result($birimgoster,0,"birim");
?>
<table border="1" width="480" cellspacing="1" cellpadding="0" bordercolor="#A1A3B1">
<tr>
<td width="160" bgcolor="#DC8381"><b>Üye No</b></td>
<td width="160" bgcolor="#DC8381"><b>ÜyeID</b></td>
<td width="160" bgcolor="#DC8381"><b>Kan Grubu</b></td>
</tr>
<tr>
<td align="center">
<?php
//Geçerli Kayıttaki Üye Numarasını Yaz
Echo $row[uyeno];
?></td>
<td align="center">
<?php
//Geçerli Kayıttaki Üye IDsini Yaz
Echo $row[uyeid];
?></td>
<td align="center">
<?php
//Geçerli Kayıttaki Diğer Tablodan Çağrılan Birimi Yaz
Echo $birim;
?></td>
</tr>
</table>
<?php
//While Döngüsünü Sonlandır
}
?>


Bu mesaja 1 cevap geldi.
K
20 yıl
Yarbay
Konu Sahibi

quote:

Orjinalden alıntı: system32

Anladığım Kadarıyla Birşeyler Karaladım..Umarım Doğru Anlamışımdır..
Bu Arada Kodları Denemedim Hata Olabilir Ama En Azından Mantığını Anlamanda Yardımcı Olur Sanırım..


 
<?php
/*
SysTeM32
*/

//Gerekli Ayarlamaları Yap..
$host = 'localhost';
$db = 'beyder';
$username = 'root';
$password = '';
//Veritabanı Bağlantısı..Senin Kodların
$conn = mysql_connect("$host", "$username", "$password") or die("unable to connect to mysql");
mysql_select_db("$db", $conn) or die("unable to select the database");
//Üye Tablosundan Tüm Bilgileri Çek
$uyelistesi = mysql_query("SELECT * FROM uyeler ORDER BY uyeid DESC LIMIT 0,10");
//Üye Tablosundaki Tüm Bilgileri Al, Dizi Oluştur
while ($row = mysql_fetch_array($uyelistesi)) {
//Her Üye İçin $uid Değişkenine Değer Ata
$uid = @mysql_result($uyelistesi,0,"uyeid");
//Birim Tablosunda Her Üyenin ID sine Göre Sorgu Yap
$birimgoster = mysql_query("SELECT * FROM birimler WHERE birimadi='$uid'");
//Geçerli Kayıtta Bulunan Birim Değerini $birim Değişkenine Ata
$birim = @mysql_result($birimgoster,0,"birim");
?>
<table border="1" width="480" cellspacing="1" cellpadding="0" bordercolor="#A1A3B1">
<tr>
<td width="160" bgcolor="#DC8381"><b>Üye No</b></td>
<td width="160" bgcolor="#DC8381"><b>ÜyeID</b></td>
<td width="160" bgcolor="#DC8381"><b>Kan Grubu</b></td>
</tr>
<tr>
<td align="center">
<?php
//Geçerli Kayıttaki Üye Numarasını Yaz
Echo $row[uyeno];
?></td>
<td align="center">
<?php
//Geçerli Kayıttaki Üye IDsini Yaz
Echo $row[uyeid];
?></td>
<td align="center">
<?php
//Geçerli Kayıttaki Diğer Tablodan Çağrılan Birimi Yaz
Echo $birim;
?></td>
</tr>
</table>
<?php
//While Döngüsünü Sonlandır
}
?>




İlginiz için teşekkürler kodunuz calıstı ama yapmıs oldugunuz dongu sonucu bilgisayar surekli sayfalama yapıyor ve sadece bir uye id uzerine işlem goruyor yapmak istedigim tam olarak elimizde olan bilgilerle kurumlarda calısan uyelerin kan gruplarını listelemek databasede 3 adet table var asagıda teknik bir bilgi vermek istiyorum.İlk basta verdigim kodlar belki size uymaya bilir kendi mantıgınızlada yapabilirsiniz boyle bir kosul yok.

Database=>beyder

table =>Uyeler
Field=>uyeid
Field=>uyeno
Field=>uyeadi
Field=>kanid
Field=>birimid

table=>kangrb
Field=>kanid
Field=>kangrb

table=>birim
Field=>birimid
Field=>birimadi

tablo yapısı

baslık olarak birimid cagilacak ama string olarak birimadi gelicek kan gurubundada oyle ileride geliştirebilmem için boyle bir yapı seçtim.

//////////BİRİNCİ BİRİM//////////////////
1. BİRİMADİ
--------------------------------------
UYENO UYEADI KANGRB
111111 rush A.rh.+2
222222 system32 --------

///////////BİRİNCİ BİRİM BİTTİ///////////
Simdi ikinci birim


2. BİRİMADİ
--------------------------------------
UYENO UYEADI KANGRB
111111 rush A.rh.+2
222222 system32 --------


BİRİMLER BİTENE KADAR DONGU DEVAM EDECEK... hersey için simdiden cok cok tesekkurler. :-)


Bu mesaja 1 cevap geldi.
A
20 yıl
Yüzbaşı

Arkadaşım o şekilde bir veritabanı yapısı kurarsan çok hantal olur, alan fazla olsa neyse ancak birer farklı alan için yeni tablo açarsan gereksiz yere sorgu yapmış olursun. Bence rahatlıkla tek tabloda halledersin ve çok daha hızlı olur.Tabii ben sadece fikrimi söyledim sen bilirsin.


Bu mesaja 1 cevap geldi.
K
20 yıl
Yarbay
Konu Sahibi

quote:

Orjinalden alıntı: acayip

Arkadaşım o şekilde bir veritabanı yapısı kurarsan çok hantal olur, alan fazla olsa neyse ancak birer farklı alan için yeni tablo açarsan gereksiz yere sorgu yapmış olursun. Bence rahatlıkla tek tabloda halledersin ve çok daha hızlı olur.Tabii ben sadece fikrimi söyledim sen bilirsin.



Söyledigin bir bakıma dogru ama sisteme arama motoru ekledigimde zorluk yasarım.Tavsiyen için teşekkürler hala ugrasıyorum ustalardan yardım bekliyorum.kolay gelsin :-)


Bu mesaja 1 cevap geldi.
K
20 yıl
Yarbay
Konu Sahibi

K
20 yıl
Yarbay
Konu Sahibi

YOKMU Bİ BABAYİĞİT YA SORUNUMA ÇARE BULACAK


Bu mesaja 1 cevap geldi.
Z
20 yıl
Onbaşı

SELECT * FROM uyeler LEFT JOIN kangrb ON uyeler.kan_id=kangrb.kanid LEFT JOIN birim ON uyeler.birimid=birim.birimid ORDER BY uyeid

kodu denemeden yazdımama sorgun bu şekilde gönderirsen çalışacaktır.. daha sonra bunu döngüye alıp istediğin bilgiyi birbirine bağlı olarak bastırabilirsin ekrana..
SAYGILAR kolay gelsin.. yinede çalışmazsa akşama sana gelişmiş şekilde yazarım yine buraya..


Bu mesaja 2 cevap geldi.
K
20 yıl
Yarbay
Konu Sahibi

eywallah bakayım hemen



K
20 yıl
Yarbay
Konu Sahibi

quote:

Orjinalden alıntı: zemheri

SELECT * FROM uyeler LEFT JOIN kangrb ON uyeler.kan_id=kangrb.kanid LEFT JOIN birim ON uyeler.birimid=birim.birimid ORDER BY uyeid

kodu denemeden yazdımama sorgun bu şekilde gönderirsen çalışacaktır.. daha sonra bunu döngüye alıp istediğin bilgiyi birbirine bağlı olarak bastırabilirsin ekrana..
SAYGILAR kolay gelsin.. yinede çalışmazsa akşama sana gelişmiş şekilde yazarım yine buraya..



Hocam mantıklı birseyler yazıyor ama pek bişi anlamadım dediğim gibi bu konuda çok çok yeniyim yeni yeni programcılıga giriyorum. gelişmişini yazarsan sana cok minnettar olurum


Bu mesaja 1 cevap geldi.
Z
20 yıl
Onbaşı

şimdi veri tabanında birbirine bağlamak için id leri kullanmışsın..
$strSQL="SELECT * FROM uyeler LEFT JOIN kangrb ON uyeler.kanid=kangrb.kanid LEFT JOIN birim ON uyeler.birimid=birim.birimid ORDER BY uyeid";
$sonuc=mysql_db_query("veri_tabanı_ismin",$strSQL);
....
.
..
.
while ($satir=mysql_fetch_array($sonuc)) {
echo $satir[uyeadi]...... artık istediğin tablodaki istediğin bilgiyi ekrana basarsın..



}
SAYGILAR


Bu mesaja 1 cevap geldi.
K
20 yıl
Yarbay
Konu Sahibi

eywallah saol



DH Mobil uygulaması ile devam edin. Mobil tarayıcınız ile mümkün olanların yanı sıra, birçok yeni ve faydalı özelliğe erişin. Gizle ve güncelleme çıkana kadar tekrar gösterme.