/
  • خطای syntax در یک query

  • صفحه‌ها (2):
  • ارسال پاسخ   امتیاز موضوع:
    • 1 رأی - میانگین امیتازات: 3
    • 1
    • 2
    • 3
    • 4
    • 5

    حالت موضوعی | حالت خطی خطای syntax در یک query
    نویسنده پیام
    AHMADBADPEY آفلاین
    احمد بادپی
    ***

    ارسال‌ها: 113
    تاریخ عضویت: ۱۳۸۷ اسفند ۱
    اعتبار: 1
    تشکرها : 35
    ( 43 تشکر در 19 ارسال )
    ارسال: #1
    خطای syntax در یک query
    با سلام
    من برای ارسال داده هام به دیتابیس از یک ادیتور استفاده می کنم . query من رو هم برای این کار در ذیل می بینید . اما در هنگام اجرای این query خطای اشکال در syntax زیر رو به من میده . خودم تشخیص می دم که چون ادیتور داخل کد های html ی که تولید می کند کوتیشن و دابل کوتیشن داره توی query مشکل ایجاد می کنه . البته این رو هم بگم که من توی سیستم خودم که از wamp5 استفاده می کنم مشکلی ندارم و query خیلی خوب اجرا میشه اگه کسی تجربه این خطا رو داره راح حلشو ارائه کنه
    این هم متن خطا :

    You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 11.25pt;" dir="rtl' at line 4

    این هم query:

    در کد زیر متغیر های $news_textfull و$ news_textا شامل کد های تولید شده توسط ادیتور هستند .
    کد PHP:
    $query="INSERT INTO `news` (`news_id`, `news_title`, `news_text`, `news_textfull`, 
    `news_pic`,`category`,`author`,`news_time`,`news_date`,`news_day`,`breaking_news​`,`display_date`,`view_count`,`serious`) 
    VALUES
     ('', \""
    .$news_title."\", '".$news_text."', '".$news_textfull."',\"itcom/".$path."\", \"".$category."\",\"".$author."\", \"$time\", \"$jdate\",\"$day\",\"".$breaking_news."\",\"".$display_date."\",\"0\",\"".$serious."\") ";
                      if ( 
    mysql_query("$query",$conn)){
                       print(
    "<b dir=\"rtl\">مطلب مورد نظر با موفقیت ارسال شد !</b>");
                      }else{print(
    "<b dir=\"rtl\">ارسال مطلب مورد نطر با مشکلی روبرو شده است !!!<b>");
                      } 
    __________________________________________________________________________
    1stwebdesigner.ir

    learningjquery.ir
    (آخرین ویرایش در این ارسال: ۱۳۸۷ اسفند ۱۹ ۱۲:۳۴ عصر، توسط AHMADBADPEY.)
    ۱۳۸۷ اسفند ۱۹ ۱۲:۳۱ عصر
    یافتن ارسال‌ها WWW پاسخ با نقل قول
     تشکر شده توسط :
    aligilani1986 آفلاین
    Hyp3r
    ***

    ارسال‌ها: 119
    تاریخ عضویت: ۱۳۸۷ دي ۱
    اعتبار: 2
    تشکرها : 136
    ( 90 تشکر در 47 ارسال )
    ارسال: #2
    RE: خطای syntax در یک query
    (۱۳۸۷ اسفند ۱۹ ۱۲:۴۱ عصر)oia نوشته شده توسط:  این تابع شاید به تو کمک کنه

    http://ir.php.net/manual/en/function.addslashes.php
    __________________________________________________________________________
    www.shoo.ir
    ۱۳۸۷ اسفند ۱۹ ۰۹:۵۴ عصر
    یافتن ارسال‌ها WWW پاسخ با نقل قول
     تشکر شده توسط :
    Y.P.Y آفلاین
    ناظم کل
    *******

    ارسال‌ها: 2,775
    تاریخ عضویت: ۱۳۸۷ دي ۲۸
    اعتبار: 103
    تشکرها : 2181
    ( 4852 تشکر در 2216 ارسال )
    ارسال: #3
    RE: خطای syntax در یک query
    سلام،
    اگر news_id مقدارش AutoIncrease هستش، می تونید ,' ' رو در اول Values بردارید.
    همچنین به جای قرار دادن این همه Slashe، به این صورت بنویسید:
    کد PHP:
    '" . $_Value . "' 
    بجای دستور print، از دستور echo استفاده کنید.
    ار تابعی که دوستان معرفی کردند هم استفاده کنید.
    موفق باشید.
    __________________________________________________________________________
    وبلاگ: Yousha.Blog.ir

    صدام: "اگر با ارتش شاه ایران طرف بودیم، یک ماهه جنگ را می بردیم"
    http://gulfnews.com/opinion/thinkers/ira...i-1.500997
    ۱۳۸۷ اسفند ۱۹ ۱۰:۴۶ عصر
    یافتن ارسال‌ها WWW پاسخ با نقل قول
     تشکر شده توسط : molana
    aligilani1986 آفلاین
    Hyp3r
    ***

    ارسال‌ها: 119
    تاریخ عضویت: ۱۳۸۷ دي ۱
    اعتبار: 2
    تشکرها : 136
    ( 90 تشکر در 47 ارسال )
    ارسال: #4
    RE: خطای syntax در یک query
    سلام.

    دوست عزيز از اين كد استفاده كن.

    کد PHP:
    $query="INSERT INTO `news` 
    (`news_id`, `news_title`, `news_text`, `news_textfull`,`news_pic`,`category`,`author`,`news_time`,`news_date`,`new​s_day`,`breaking_news​`,`display_date`,`view_count`,`serious`) 
    VALUES
     ('', '
    $news_title', '$news_text', '$news_textfull','itcom/$path', '$category','$author', '$time', '$jdate','$day','$breaking_news','$display_date','0','$serious'') ";
     
                      if ( 
    mysql_query($query,$conn)){
                       echo 
    "<b dir=\"rtl\">مطلب مورد نظر با موفقیت ارسال شد !</b>";
                      }else{echo
    "<b dir=\"rtl\">ارسال مطلب مورد نطر با مشکلی روبرو شده است !!!<b>" ;
                      } 
    __________________________________________________________________________
    www.shoo.ir
    (آخرین ویرایش در این ارسال: ۱۳۸۷ اسفند ۲۰ ۰۶:۲۵ عصر، توسط aligilani1986.)
    ۱۳۸۷ اسفند ۲۰ ۰۶:۲۳ عصر
    یافتن ارسال‌ها WWW پاسخ با نقل قول
     تشکر شده توسط :
    AHMADBADPEY آفلاین
    احمد بادپی
    ***

    ارسال‌ها: 113
    تاریخ عضویت: ۱۳۸۷ اسفند ۱
    اعتبار: 1
    تشکرها : 35
    ( 43 تشکر در 19 ارسال )
    ارسال: #5
    RE: خطای syntax در یک query
    با تشکر از همه دوستان
    همه این کار ها رو کردم ولی جواب نگرفتم . آیا نسخه mysql می تونه موجب این خطا شده باشه ؟؟
    __________________________________________________________________________
    1stwebdesigner.ir

    learningjquery.ir
    ۱۳۸۷ اسفند ۲۱ ۱۰:۰۷ صبح
    یافتن ارسال‌ها WWW پاسخ با نقل قول
     تشکر شده توسط :
    aligilani1986 آفلاین
    Hyp3r
    ***

    ارسال‌ها: 119
    تاریخ عضویت: ۱۳۸۷ دي ۱
    اعتبار: 2
    تشکرها : 136
    ( 90 تشکر در 47 ارسال )
    ارسال: #6
    RE: خطای syntax در یک query
    (۱۳۸۷ اسفند ۲۱ ۱۰:۰۷ صبح)AHMADBADPEY نوشته شده توسط:  با تشکر از همه دوستان
    همه این کار ها رو کردم ولی جواب نگرفتم . آیا نسخه mysql می تونه موجب این خطا شده باشه ؟؟

    قبل از قرار دادن متغيرها در كوئري حتما از addslashes استفاده كن.

    حالا اگه ميتوني ورودي خودت يا صفحه اصلي رو ارسال كن . شايد تو نستيم كمكت كنيم.
    __________________________________________________________________________
    www.shoo.ir
    ۱۳۸۷ اسفند ۲۱ ۱۲:۲۴ عصر
    یافتن ارسال‌ها WWW پاسخ با نقل قول
     تشکر شده توسط :
    AHMADBADPEY آفلاین
    احمد بادپی
    ***

    ارسال‌ها: 113
    تاریخ عضویت: ۱۳۸۷ اسفند ۱
    اعتبار: 1
    تشکرها : 35
    ( 43 تشکر در 19 ارسال )
    ارسال: #7
    RE: خطای syntax در یک query
    دوستان با تشکر
    مشکل با استفاده از addslashes حل شد . باز هم ممنون
    فقط یه مشکل کوچولو در یه جای دیگه دارم خطای زیر چه معنی ای می ده البته این خطا اصلا مربوط به موضوع قبلی نیست
    Duplicate entry '0' for key 1
    __________________________________________________________________________
    1stwebdesigner.ir

    learningjquery.ir
    ۱۳۸۷ اسفند ۲۱ ۰۱:۲۲ عصر
    یافتن ارسال‌ها WWW پاسخ با نقل قول
     تشکر شده توسط :
    admin آفلاین
    وحید سهرابلو
    **********

    ارسال‌ها: 5,697
    تاریخ عضویت: ۱۳۸۷ آذر ۲۴
    اعتبار: 100
    تشکرها : 1362
    ( 6197 تشکر در 3438 ارسال )
    ارسال: #8
    RE: خطای syntax در یک query
    شما سعی دارید که برای یک فیلدی که منحصر به فرد هست دو مقدار یکسان ذخیره کنید و این اخطار رو می گیرید
    ۱۳۸۷ اسفند ۲۱ ۰۴:۵۸ عصر
    یافتن ارسال‌ها پاسخ با نقل قول
     تشکر شده توسط :
    aligilani1986 آفلاین
    Hyp3r
    ***

    ارسال‌ها: 119
    تاریخ عضویت: ۱۳۸۷ دي ۱
    اعتبار: 2
    تشکرها : 136
    ( 90 تشکر در 47 ارسال )
    ارسال: #9
    RE: خطای syntax در یک query
    (۱۳۸۷ اسفند ۲۱ ۰۱:۲۲ عصر)AHMADBADPEY نوشته شده توسط:  دوستان با تشکر
    مشکل با استفاده از addslashes حل شد . باز هم ممنون
    فقط یه مشکل کوچولو در یه جای دیگه دارم خطای زیر چه معنی ای می ده البته این خطا اصلا مربوط به موضوع قبلی نیست
    Duplicate entry '0' for key 1

    همانطور كه وحيد جان گفتند ، شما در حال درج (insert) يك كليد اصلي هستيد كه قبلا اضافه شده است.

    اگه auto_increament است بجاي قرار دادن مقدار صحيح يا هر چيزي از NULL استفاده كن.
    __________________________________________________________________________
    www.shoo.ir
    ۱۳۸۷ اسفند ۲۱ ۰۷:۲۳ عصر
    یافتن ارسال‌ها WWW پاسخ با نقل قول
     تشکر شده توسط :
    AHMADBADPEY آفلاین
    احمد بادپی
    ***

    ارسال‌ها: 113
    تاریخ عضویت: ۱۳۸۷ اسفند ۱
    اعتبار: 1
    تشکرها : 35
    ( 43 تشکر در 19 ارسال )
    ارسال: #10
    RE: خطای syntax در یک query
    من این کار رو کردم:
    کد PHP:
    $group=trim($_POST['group']);
       
    $title_cat=$_POST['title_cat'];
       if (
    $query=mysql_query("insert into cat_list (cat_name,group) values ('".$title_cat."','".$group."')",$conn)){
        print(
    "موضوع مورد نظر با موفقیت ایجاد شد .");
        }
    //if ($query
         
    else{
          print(
    "اشکالی در ایجاد موضوع جدید پیش آمده است.");
          echo(
    mysql_error());
         } 

    اما خطای زیر رو بهم داد . اصلا sytax صحیح یه query چه جوریه ؟
    اشکالی در ایجاد موضوع جدید پیش آمده است.You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'group) values ('Visual Basic','آموزش')' at line 1
    ببخشید !!!!!!
    این query منه :
    کد PHP:
    $group=trim($_POST['group']);
       
    $title_cat=$_POST['title_cat'];
       if (
    $query=mysql_query("insert into cat_list (cat_id,cat_name,group) values ('".NULL."','".$title_cat."','">$group."')",$conn)){
        print(
    "موضوع مورد نظر با موفقیت ایجاد شد .");
        }
    //if ($query
         
    else{
          print(
    "اشکالی در ایجاد موضوع جدید پیش آمده است.");
          echo(
    mysql_error());
         } 
    __________________________________________________________________________
    1stwebdesigner.ir

    learningjquery.ir
    (آخرین ویرایش در این ارسال: ۱۳۸۷ اسفند ۲۲ ۰۱:۳۶ عصر، توسط AHMADBADPEY.)
    ۱۳۸۷ اسفند ۲۲ ۰۱:۱۱ عصر
    یافتن ارسال‌ها WWW پاسخ با نقل قول
     تشکر شده توسط : Maya
    « قدیمی تر | تازه‌ تر »

  • صفحه‌ها (2):
  • ارسال پاسخ
    پرش به انجمن:


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