نمایش نتایج 1 تا 4 از 4

نام تاپیک: مشکل در ارتباط با mysql

  1. #1

    مشکل در ارتباط با mysql

    سلام دوستان
    یه مشکلی برام پیش اومده که ۲روزه ذهنمو به خودش مشغول کرده.

    پایگاه دادم ۳تا جدول داره. users - pages - menu

    میخوام اطلاعات صفحه اول مطابق منوی مورد نظر باشه. داخل جدول menu شماره id و نام منو رو قرار دادم و در داخل pages هم فیلدی به اسم menu_id هست. که در واقع ارتباط بین دو جدول بر اساس تعریف idها

    حالا کدphp من این هست:
    <?php 
    mysql_query('SET NAMES `utf8`;', $conection);
    $MenuSet = mysql_query("SELECT * FROM menu",$conection);
    if(!$MenuSet){
    die("proplem one conecting table menu<br/>".mysql_error());
    }

    while($MenuShow=mysql_fetch_array($MenuSet)){
    echo $MenuShow["menu_name"]."<br/>";

    }
    $ContentSet = mysql_query("SELECT * FROM pages WHERE menu_id = {$MenuShow["id"]}");
    if(!$ContentSet){
    die("proplem two conecting table pages".mysql_error());
    }
    while($ContentShow=mysql_fetch_array($ContentSet)) {
    echo $ContentShow["content"];
    }
    ?>


    در قسمت اول منوهارو نمایش میده ولی در قسمت دوم میخواد به شرط برقرار بودن idصفحه با id منو مطالب رو نشون بده اخطار زیر رو میده:

    صفحه‌اصلی
    مقالات
    دانلود
    ارتباط با ما
    درباره ما
    proplem two conecting table pagesYou have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1

    نمیدونم منظورش از version چیه و کجای کار من اشتباه هست.

  2. #2

    نقل قول: مشکل در ارتباط با mysql

    نام های دیتابیستو بین `` قرار بده مثلا : `pages` یا `menu`
    متغیر ها هم بین '' قرار بده مثلا : 'id$'

  3. #3

    نقل قول: مشکل در ارتباط با mysql

    ممنونم برطرف شد
    مشکل اینجا بود که برای مقایسه قرار دادن دو جدول مختلف، باید دوباره جدول اول رو quiery می‌کردم تا بتونه جدول دوم رو باهاش مقایسه کنم.
    قطعه کد زیر بالای خط ۱۲ قرار می‌گیره
     $MenuName = mysql_query("SELECT * FROM menu order by position asc",$conection);
    $MenuId = mysql_fetch_array($MenuName);


    البته خیلی مبتدی هستم. نکته‌ای رو که گفتید میشه توضیح بدید. آخه هر دو تارو امتحان کردم هم ( " ) گذاشتم کار کرده و هم ( ' ) .
    در واقع سوالم اینه فرق سینگل کوتیشن با دابل کوتیشن چیه؟

  4. #4
    منتظر تایید آدرس ایمیل
    تاریخ عضویت
    بهمن 1387
    سن
    37
    پست
    732

    نقل قول: مشکل در ارتباط با mysql

    دوست عزیز شما وقتی از کاراکتر ' استفاده میکنی انگار داری رشته رو قطع میکنی !
    همیشه سعی کنید نام جدول ها و نام فیلدها رو همیشه بین کاراکتر ` و متغیر ها رو بین کاراکتر ' قرار بدید ! و کل کوئری رو بین " ! به طور مثال :

    $sql=mysql_query("SELECT * FROM `tb_name` WHERE `username`='$username'");

    همونطور که دوستمون گفتند و اشاره کردند :)

    اما برای تمیز نویسی و اینکه سرعت و رفرنس بالاتری داشته باشید سعی کنید مهمات رو داخل " بنویسید و اگر خواستید خیلی بهتر استفاده کنید از کاراکترهای { } هم برای متغیر ها استفاده کنید ! برای مثال :


    $sql=mysql_query("SELECT * FROM `tb_name` WHERE `username`='{$username}'");


    در نهایت اینطوری خدمت شما عرض کنم که فرق بین کوتیشن و دابل کوتیشن اینه که :

    موقعی از دابل کوتیشن " استفاده میکنند که بین اون هم متن و هم متغیر استفاده شه ! مثل :

    $name='ali';
    echo "Hello $name";


    اما اگر متغیر رو داخل کوتیشن ' استفاده کنید دیگه متغیر قابل خودن نیست و اجرا نمیشه : مثل :


    $name='ali';
    echo 'Hello $name';


    پس سعی کنید اگر میخواین متغیری رو همراه با متن ثابت بکار ببرید اون رو داخل " استفاده کنید :)
    آخرین ویرایش به وسیله siavashsay : پنج شنبه 23 آذر 1391 در 20:29 عصر

تاپیک های مشابه

  1. مشکل در ارتباط با mysql
    نوشته شده توسط mostafazarei در بخش ASP.NET Web Forms
    پاسخ: 3
    آخرین پست: چهارشنبه 08 آذر 1391, 17:56 عصر
  2. مشکل در ارتباط ++c با mysql
    نوشته شده توسط ali zi zeperto در بخش برنامه نویسی با زبان C و ++C
    پاسخ: 0
    آخرین پست: شنبه 25 مهر 1388, 21:57 عصر
  3. آقا کمک کنید - مشکل در ارتباط با MYSQL
    نوشته شده توسط stealer2007 در بخش مطالب مرتبط با بانکهای اطلاعاتی در VB6
    پاسخ: 0
    آخرین پست: یک شنبه 28 تیر 1388, 23:36 عصر
  4. مشکل ارتباط با MySQL
    نوشته شده توسط حرفه ای در بخش بانک های اطلاعاتی در Delphi
    پاسخ: 9
    آخرین پست: جمعه 27 دی 1387, 16:11 عصر
  5. مشکل در ارتباط php با mysql پس از نصب wamp !!!
    نوشته شده توسط wayiran در بخش PHP
    پاسخ: 8
    آخرین پست: چهارشنبه 21 تیر 1385, 08:44 صبح

برچسب های این تاپیک

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •