انجمن‌های فارسی اوبونتو

لطفاً به انجمن‌ها وارد شده و یا جهت ورود ثبت‌نام نمائید

لطفاً جهت ورود نام کاربری و رمز عبورتان را وارد نمائید

نویسنده موضوع: پرس و جوی بازیابی سطری از جدول که یکی از ستون هایش جزیی از یک عبارت رشته ای است  (دفعات بازدید: 1915 بار)

0 کاربر و 4 مهمان درحال مشاهده موضوع.

آفلاین rahmani

  • Sr. Member
  • *
  • ارسال: 291
سلام
فرض کنید جدول table1 دوستون دارد یکی شناسه ID و دیگری firstname از نوع رشته. حال اگر متغیر variable$ دربرگیرنده مقدار firstname یکی از سطرهای جدول table1 باشد یک پرس و جو می خواهیم که شماره آن سطری از جدول table1 را به ما برگرداند که variable$ دربرگیرنده table1.firstname است
من این CODE را نوشته ام اما هیچ مقداری برنمی گرداند
SELECT * FROM table1 WHERE '$variable' LIKE '%firstname%'
متشکرم
این هم جواب نداد
select * from table1 where $variable like '%'.firstname.'%'
« آخرین ویرایش: 02 شهریور 1392، 12:28 ب‌ظ توسط rahmani »
اگر در صحنه حق و باطل زمان خويش نيستي، هر جا كه خواهي باش....
 دكتر علي شزيعتي مزيناني

آفلاین B

  • Sr. Member
  • *
  • ارسال: 354
  • جنسیت : پسر
بعد از where باید نام ستونت رو بنویسی

select * from table1 where firstname like '%'.$variable.'%'
با دستور بالا میگیم هرگاه ستون firtname شبیه مقداری شد که توی متغیرت وجود داره؛ هم ID رو برگردون و هم firetname رو

آفلاین rahmani

  • Sr. Member
  • *
  • ارسال: 291
بعد از where باید نام ستونت رو بنویسی

select * from table1 where firstname like '%'.$variable.'%'
با دستور بالا میگیم هرگاه ستون firtname شبیه مقداری شد که توی متغیرت وجود داره؛ هم ID رو برگردون و هم firetname رو
عذر میخواهم
در این برنامه متغیر variable$ جزئی از firstname نیست بلکه دربرگیرنده آن است.
« آخرین ویرایش: 03 شهریور 1392، 09:41 ق‌ظ توسط rahmani »
اگر در صحنه حق و باطل زمان خويش نيستي، هر جا كه خواهي باش....
 دكتر علي شزيعتي مزيناني

آفلاین vandu

  • Hero Member
  • *
  • ارسال: 741
  • جنسیت : پسر
این برای من جواب داد:
SELECT ID FROM table1 WHERE firstname LIKE "%".$variable."%";
Nothing is particularly hard if you divide it into small jobs

Henry Ford

آفلاین rahmani

  • Sr. Member
  • *
  • ارسال: 291
این برای من جواب داد:
SELECT ID FROM table1 WHERE firstname LIKE "%".$variable."%";
یک سوال خیلی پیش پا افتاده:
این را شما داخل گذاشتید double quatation :
$query = "SELECT ID FROM table1 WHERE firstname LIKE "%".$variable."%""یا:
$query = 'SELECT ID FROM table1 WHERE firstname LIKE "%".$variable."%"'
اگر در صحنه حق و باطل زمان خويش نيستي، هر جا كه خواهي باش....
 دكتر علي شزيعتي مزيناني

آفلاین vandu

  • Hero Member
  • *
  • ارسال: 741
  • جنسیت : پسر
شما اینجوری بنویسید:
$query = "SELECT ID FROM table1 WHERE firstname LIKE '%{$variable}%'"
Nothing is particularly hard if you divide it into small jobs

Henry Ford

آفلاین rahmani

  • Sr. Member
  • *
  • ارسال: 291
شما اینجوری بنویسید:
$query = "SELECT ID FROM table1 WHERE firstname LIKE '%{$variable}%'"

عذر میخواهم
در این برنامه متغیر variable$ جزئی از firstname نیست بلکه دربرگیرنده آن است.
من حدس میزنم باید شبیه این باشد:
$query = "SELECT ID FROM table1 WHERE '%firstname%' LIKE '$variable'"اگر ایرادی ندارد بفرمایید شما برای مطالعه php و mysql  چه منابعی را پیشنهاد می کنید که کامل و دقیق باشد و در عین حال روان و سلیس گفته باشد؟ من در کتاب php انتشارات wiely دنبال این مطلب گشتم ولی پیدا نکردم!!؟؟
بسیار متشکرم
« آخرین ویرایش: 03 شهریور 1392، 10:53 ق‌ظ توسط rahmani »
اگر در صحنه حق و باطل زمان خويش نيستي، هر جا كه خواهي باش....
 دكتر علي شزيعتي مزيناني

آفلاین vandu

  • Hero Member
  • *
  • ارسال: 741
  • جنسیت : پسر
اوکی. الان متوجه شدم. این رو اجرا کنید:
$query = "SELECT ID FROM table1 WHERE LOCATE(firstname, '{$variable}')"
Nothing is particularly hard if you divide it into small jobs

Henry Ford

آفلاین rahmani

  • Sr. Member
  • *
  • ارسال: 291
سلام
 بسیار ممنونم الهی هر چه از خداوند بزرگ می خواهید به بهترین صورت دو دستی تقدیمتان کند

بسیار متشکرم
اگر در صحنه حق و باطل زمان خويش نيستي، هر جا كه خواهي باش....
 دكتر علي شزيعتي مزيناني