/
  • کوئری مناسب برای نمایش بروز رسانی های دوستان؟

  • ارسال پاسخ   امتیاز موضوع:
    • 0 رأی - میانگین امیتازات: 0
    • 1
    • 2
    • 3
    • 4
    • 5

    حالت موضوعی | حالت خطی کوئری مناسب برای نمایش بروز رسانی های دوستان؟
    نویسنده پیام
    qaflanti آفلاین
    حسین پوربهرامی
    **

    ارسال‌ها: 43
    تاریخ عضویت: ۱۳۹۱ مرداد ۱۱
    اعتبار: 0
    تشکرها : 27
    ( 9 تشکر در 6 ارسال )
    ارسال: #1
    کوئری مناسب برای نمایش بروز رسانی های دوستان؟
    سلام.
    من مثلا یه جدولی (friendships) دارم که توش دوستی های اعضا رو ثبت می کنم که تو اون ستون requester برای آی دی کسی هست که درخواست دوستی رو فرستاده و ستون requested هم برای آی دی کسی هست که درخواست دوستی به اون فرستاده شده.
    و یه جدول (posts) هم برای مطالب دارم که تو این جدول هم ستون title برای عنوان مطلب؛ ستون content برای محتوای مطلب و ستون autor هم برای آی دی نویسنده مطلب هست.

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

    کد PHP:
    $query "SELECT * FROM posts WHERE autor=".$_SESSION['id'];
    // farz konid $_SESSION['id']=1 bashe
    $result mysql_query("SELECT * FROM friendships WHERE requester=".$_SESSION['id']);
    while (
    $row mysql_fetch_array($result)) {
        
    $query .= " OR autor=".$row['requested'];
    }
     
    $query .= " LIMIT=20";
    // natije baraye 5 bar ejra: $query = "SELECT * FROM posts WHERE autor=1 OR autor=21 OR autor=22 OR autor=23 OR autor=24 OR autor=25 LIMIT=20";
    $result mysql_query($query);
    while (
    $row mysql_fetch_array($result)) {
        echo 
    "<p>".$row['title']."<br/>".$row['content']."</p>";


    می خوام ببینم:
    اولا آیا استفاده از یه چنین کدی درسته؟ (یعنی همین کد مناسب و کافیه؟)
    و ثانیا روش مناسب و ساده تر برای این کار چیه؟ (شما چه ایده ای دارید؟)

    آخه ایرادی که خودم به این روش میگیرم اینه که وقتی یه نفر مثلا 1000 تا دوست داشته باشه به دنبالش 1000 تا OR autor=N به query$ اضافه میشه که فکر کنم یه چنین کوئری ای فشار زیادی به سرور بیاره؟
    ۱۳۹۱ شهريور ۲۸ ۱۰:۰۲ عصر
    یافتن ارسال‌ها پاسخ با نقل قول
     تشکر شده توسط :
    « قدیمی تر | تازه‌ تر »

    ارسال پاسخ
    پرش به انجمن:


    کاربرانِ درحال بازدید از این موضوع: 1 مهمان
    IranPHP.org | تماس با ما | بازگشت به بالا | بازگشت به محتوا | بایگانی | پیوند سایتی RSS