PDA

توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : مشکل در اجرای دو کوئری پی اچ پی برای مای اس کیو ال



majeedpotter
May 26th, 2012, 16:02
سلام من یه مشکل توی اجرای توابع مای اس کیو ال در فایل پی اچ پی دارم

من اومدم و فایل رو به دیتابیس وصل کردم و اطلاعات رو میگیرم و جواب میده اما وقتی میخوام دو تا کوئری اس کیو ال انجام بدم دیگه صفحه باز نمیکنه . بزارین بگم چی کار میخوام بکنم
من دو تا جدول دارم یک جدول پیام و جدول دیگه اسم کاربر .
در جدول پیام اومدم اطلاعات رو گرفتم اما اسم کاربرا به صورت عدد نوشته یعنی هر کاربر یک عدد خاص داره . حالا من میخوام پیام رو از جدول پیام بگیرم و بیام نام کاربرو بر اساس اون کد که تو جدول کاربرا هست چک کنم و به جای عدد نام کاربرا رو نشون بدم کد اس کیو ال رو بلدم اما نمیدونم چطور دوتا کوئری رو بیارم تو پی اچ پی و اجراش کنم که صفحه نشون بده :

این نمونه کد هارو آوردم که اگه کسی میدونه تو پی اچ پی برام بازسازی کنه :

1- select user-id,peygham from peyghamtbl

2- select user-name from Users where user-id in (select user-id from peyghamtbl)

در کل منظورم اینه که اسم کاربر رو از جدول اعضا متناسب با شماره کاربری بگیره و انجا نشون بده

majeedpotter
May 27th, 2012, 12:06
یعنی کسی نیست کوئری های تو در تو رو یادمون بده ؟

milade
May 27th, 2012, 12:44
Select (Select User-name From Users where Users.user-id=peyghamtbl.user-id ) as UN ,Peygham from peyghamtbl


اینو تست کن ...

farzadnsr
May 27th, 2012, 15:36
باید از اینر جوین استفاده کنی(Inner join)

اینم آموزش

SQL INNER JOIN Keyword (http://www.w3schools.com/sql/sql_join_inner.asp)

majeedpotter
May 27th, 2012, 17:06
من میخوام اینا رو توی پی اچ پی اجرا کنم

دستور اس کیو الش رو میدونم ولی نمیدونم چطور تو پی اچ پی پیاده سازی کنم

majeedpotter
May 27th, 2012, 17:37
این کد پی اچ پی هست که کوئری اجرا میکنم زیرش هم ستون ها رو نوشتم

$q = "SELECT * FROM messages ORDER BY `id` DESC ";
$result=mysql_query($q);
$num=mysql_num_rows($result);
$i=1;
while($row = mysql_fetch_array($result))
{

?>



<tr>
<td align="center"><?php echo $i++;?></a></td>

</td>
<td align="center"><?php echo $row['id'];?></td>
<td align="center"><?php echo $row['user_fid'];?></td>
<td align="center"><?php echo $row['text'];?></td>
</td>

</tr>

<?php

}

?>

میخوام ببینم چطور توی این کوئری کاری کنم که آی دی رو از جدول کاربر بخونه و به جای آی دی نشون بده؟

php.online
May 27th, 2012, 18:06
با php 4 بلد نیستم . اگه با php 5 می خواین توضیح بدم.
در کل شما باید یک تابع برای اتصال به پایگاه تعریف کنی. بعد اطلاعات رو فراخانی کرده و چاپ کنی.

farzadnsr
May 28th, 2012, 02:14
این کد پی اچ پی هست که کوئری اجرا میکنم زیرش هم ستون ها رو نوشتم

$q = "SELECT * FROM messages ORDER BY `id` DESC ";
$result=mysql_query($q);
$num=mysql_num_rows($result);
$i=1;
while($row = mysql_fetch_array($result))
{

?>



<tr>
<td align="center"><?php echo $i++;?></a></td>

</td>
<td align="center"><?php echo $row['id'];?></td>
<td align="center"><?php echo $row['user_fid'];?></td>
<td align="center"><?php echo $row['text'];?></td>
</td>

</tr>

<?php

}

?>

میخوام ببینم چطور توی این کوئری کاری کنم که آی دی رو از جدول کاربر بخونه و به جای آی دی نشون بده؟

باید از اینر جوین استفاده کنی(Inner join)

اینم آموزش

SQL INNER JOIN Keyword (http://www.w3schools.com/sql/sql_join_inner.asp)