saya punya tabel artikel, tabel guru dan tabel admin
tb_guru
username
nama_lengkap

tb_admin
username
nama_lengkap

tb_artikel
id_artikel
judul_artikel
username

saya ingin menampilkan semua data yang ada di tabel artikel sedangkan masalah saya ketika
memakai rumus ini
$detail2=mysql_query("SELECT * FROM tb_artikel,tb_guru where tb_guru.username=tb_artikel.username
AND id_artikel='$_GET[id]'");

yang bisa tampil artikelnya yang dibuat oleh guru sedangkan yang dibuat atas username admin tidak bisa ditampilkan

scriptnya gimana ya untuk bisa menampilkan semua artikel baik artikel yang ditambahkan guru atau admin thanks


Mohon pencerahannya
Silahkan login untuk menjawab!
3
Loading...
Ellyx Christian · Jul 4, 2011 · 12 Suka · 9 Tidak Suka
pertama design table kamu salah. Satu field sebuah table hanya memiliki satu foreign key dari table lain. Tapi kamu buat adalah field username table tb_artikel memiliki dua foreign key di dua table berbeda yaitu , table tb_guru dan tb_admin. Dari mana kamu bisa tahu kalau nilai yang ada di field username tb_artikel berasal dari tb_guru atau tb_admin?. Saya kasi contoh datanya seperti ini:
tb_guru:
_________________________________
| username	| nama_lengkap	|
---------------------------------
| andi		| Andi wiguna	|
---------------------------------
| guna		| Gunawan	|
---------------------------------
tb_admin:
_________________________________
| username	| nama_lengkap	|
---------------------------------
| andi		| Suwandi	|
---------------------------------
| guna		| Gunadi Dharma	|
---------------------------------
tb_artikel:
_________________________________________________________
| id_artikel	| judul_artikel		| username	|
---------------------------------------------------------
| 1		| Artikel no 1		| andi		|
---------------------------------------------------------
| 2 		| artikel no 2		| guna		|
---------------------------------------------------------
| 3		| artikel 3		| andi		|
---------------------------------------------------------
| 4		| artikel 4		| guna		|
---------------------------------------------------------
coba perhatikan field username pada table tb_artikel, andi itu adalah Andi wiguna apa Suwandi? Bagaimana kita tahu dan menjawab pertanyaan itu? Maka itulah saya katakan tabel kamu salah. Seharusnya hanya ada satu table user dimana user memiliki tipe, seperti ini:

tb_user
username
nama_lengkap
tipe_user

tb_artikel
id_artikel
judul_artikel
username

jadi nilai dari tipe_user bisa ADMIN atau GURU. tipe_user membedakan apakah ia guru atau admin, dan jika ada penambahan tipe_user misalnya, SISWA tidak perlu menambahkan table baru tb_siswa.
-3
Loading...
burhan · Jul 5, 2011 · 0 Suka · 3 Tidak Suka
trimakasih mas atas jawaban yang memuaskan ini