PDA

View Full Version : سوال: ترکیب چند جدول در دیتابیس و انتخاب براساس نام فیلد



fazelit
شنبه 04 دی 1389, 13:15 عصر
با سلام و خسته نباشید خدمت دوستان من دو جدول دارم که می خوام این دوجدول رو با هم ترکیب کنم و سپس اطلاعات رو باز خوانی کنم اما با نام فیلد نه شماره مثلا:
$sel=mysql_query("SELECT * FROM `polls_question` q, `polls_response` r WHERE q.id=r.question_id && q.id='$id' LIMIT 0,1 "); if($sel)$rowE=mysql_fetch_array($sel); print $rowE['id']; اما سوال من اینه که طبق مثال این id که باز خوانی میکنه مربوط به جدول اولی هستش یا دومی و چطور میتونیم تفکیک قائل بشیم چون هر دوجدول فیلدی با نام id دارند؟؟؟

Mah
شنبه 04 دی 1389, 13:22 عصر
سلام .

با کد ذیل


TableName.FieldName;

برای مثال شما :
polls_question.id
و
polls_responser.id

hossin.esm
شنبه 04 دی 1389, 13:32 عصر
$sel=mysql_query("SELECT `polls_question`.`id` as `id_q` `polls_response`.`id` as `id_r` FROM `polls_question` q, `polls_response` r WHERE q.name=r.name='$name' LIMIT 0,1 ");
($sel)$rowE=mysql_fetch_array($sel);
print $rowE['id_q'];
print $rowE['id_r'];

fazelit
یک شنبه 05 دی 1389, 08:59 صبح
$sel=mysql_query("SELECT `polls_question`.`id` as `id_q` `polls_response`.`id` as `id_r` FROM `polls_question` q, `polls_response` r WHERE q.name=r.name='$name' LIMIT 0,1 ");
($sel)$rowE=mysql_fetch_array($sel);
print $rowE['id_q'];
print $rowE['id_r'];


با سلام و تشکر از پاسخ تون
متاسفانه با کد

print $rowE['id_q'];
print $rowE['id_r'];
اطلاعات چاپ نمی کنه؟!!
مشکل کجاست؟ لطفا راهنمایی کنید

hossin.esm
یک شنبه 05 دی 1389, 11:56 صبح
$sel=mysql_query("SELECT `polls_question`.`id` as `id_q` `polls_response`.`id` as `id_r` FROM `polls_question` q, `polls_response` r WHERE q.name=r.name='$name' LIMIT 0,1 ");
$rowE=mysql_fetch_array($sel);
print $rowE['id_q'];
print $rowE['id_r'];

($sel) را قبل از fetch نمیدونم کارش چی هست حذف کردم
کد مشکلی ندارد من تست کردم احتمالا query خروجی ندارد (query ) را در phpmyadmin اجرا کنید ببینید خروجی دارد

fazelit
دوشنبه 06 دی 1389, 09:12 صبح
من کدها رو توی دیتابیس بررسی کردم و یه خروجی گرفتم



Array ( [0] => 5 [id] => 13 [1] => soal [question] => soal [2] => 1 [active] => 1 [3] => 13 [4] => 5 [question_id] => 5 [5] => sevom [response] => sevom [6] => 3 [swich] => 3 )

اگه دقت کنید اولش id جدول `polls_question` با نام [0]=>5 تعیین کرده و نام id جدول `polls_response` با نام [id]=>13 پس نتیجه میگیریم که اگه نام دو فیلد مثل هم باشه یکی رو شماره میده و دیگری رو با نام خود فیلد مینویسه
راهی هستش که برای هر دو نام فیلد بنویسه؟