PDA

View Full Version : سوال: خواندن در php تو در تو با شرط



skarimi1369
چهارشنبه 20 فروردین 1393, 12:21 عصر
سلام دوستان بنده دو تا جدول دارم
جدول اول داراي 5 داده هست يا آيدي هاي مختلف به اسمid
و
جدول دوم داراي تعداد زيادي داده هست كه دو ستون مهم داره يكي كد داده در جدول اول كه در اين جدول با نام ad هست و ديگري كد كاربري كه از اون داده ديدن كرده يا همون آي دي كاربر به نام user

حال ميخوام در صفحه اي در php براي سايت اين اطلاعات نشان داده شود فقط هر داده از جدول اول نشان داده شد در جدول دوم ثبت ميشه به همراه كد كاربر كه اونو ديده و بعد صفحه رفرش ميشه و اون داده جدول اول كه يكبار توسط اين كاربر ديده شده نشان داده نشود بايد چكار كنم

و كد زير باز هم همه رو نشان ميده


$quer = mysql_query("SELECT `ad` FROM `xeon_clicksgoogle `user`='1' ;");
$_LINK_I = mysql_num_rows($quer);

$query = mysql_query("SELECT * FROM `xeon_google` WHERE `expires` > ".time()." AND `status`='1' AND `id`<>'$_LINK_I' ORDER BY RAND() LIMIT 14;");
$_LINK_INT = mysql_num_rows($query);
$_LINKS_HTM = '';

skarimi1369
پنج شنبه 21 فروردین 1393, 22:05 عصر
کسی بلد نیست

نیلوفر66
پنج شنبه 21 فروردین 1393, 22:23 عصر
پرسشت مبهم هست!
دستورات رو داخل تگ اس کیو ال بذار راحتتر بسه خوند
چرا فیلد کلیدخارجی هم نام با کلید اصلی نذاشتی؟!
فیلدهی جدول ها رو بذار با فیلدهای خروجی که میخوای نمایش بدی

skarimi1369
جمعه 22 فروردین 1393, 17:59 عصر
$quer = mysql_query("SELECT `ad` FROM `xeon_clicksgoogle `user`='1' ;");
$_LINK_I = mysql_num_rows($quer);

$query = mysql_query("SELECT * FROM `xeon_google` WHERE `expires` > ".time()." AND `status`='1' AND `id`<>'$_LINK_I' ORDER BY RAND() LIMIT 14;");
$_LINK_INT = mysql_num_rows($query);
$_LINKS_HTM = '';

skarimi1369
جمعه 22 فروردین 1393, 18:00 عصر
فيلد خارجي اگر منظور آيدي جدول يك در جدول دو هست چون اونجا هم آي دي داره

نیلوفر66
چهارشنبه 27 فروردین 1393, 10:39 صبح
فيلد خارجي اگر منظور آيدي جدول يك در جدول دو هست چون اونجا هم آي دي داره
فیلدهای کلید اصلی و خارجی باید هم نام باشن...مثلادر جدول مربی t_id و در جدول دانش آموز s_id و در جدول کلاس t_id و s_id و c_id

ali abedian
چهارشنبه 27 فروردین 1393, 22:08 عصر
سرکار خانم نیلوفر!
چطور میشه برای مثالی که زدید از شرط تو در تو استفاده کرد مثلا میخواییم از جدول مربیها، همه ی مربیها لیست بشن در بلوکهای همسان و نمایش داده بشن و در زیر هر مربی، نام دانش آموزانی که با آن مربی درس دارن هم لیست بشن.. من از حلقه های do while به صورت تو در تو استفاده کردم ولی متاسفانه تمام شاگردان رو در زیر اسم مربی اول لیست میکنه و زیر اسم مربیان دیگه هیچ شاگردی لیست نمیشه!

نیلوفر66
پنج شنبه 28 فروردین 1393, 13:17 عصر
برای چی از do while استفاده کنید!
نمایش دانش اموزان با group by t_id و در یک دستور دیگه مشخصات معلم از روی t_id نمایش بده