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

نام تاپیک: تعيين بهترين حالت جستجو براي چند پارامتر

  1. #1

    تعيين بهترين حالت جستجو براي چند پارامتر

    سلام
    در فرمي براي جستجو 5 پارامتر دارم و مي خواهم جستجو طوري باشد كه كاربر بتواند به طريقه هاي زير جستجو كند :
    يا فقط يكي از پارامترها را وارد كند
    يا تمام اين پارامترها را وارد كند
    يا دو، سه يا چهار
    بطور خلاصه كاربر هر يك از پارامترها را وارد كرد خروجي داشته باشد اما خرجي صحيح .
    دوستان لطف كنيد راهنمايي كنيد تا بهترين حالت جستجو را تعيين كنم

  2. #2
    کاربر دائمی آواتار shahab_ss
    تاریخ عضویت
    فروردین 1384
    محل زندگی
    bangkok
    سن
    45
    پست
    434

    نقل قول: تعیین بهترین حالت جستجو برای چند پارامتر

    شما میتونی بر اساس مقادیر وارد شده توسط کاربر دستور SELECT رو بسازی و قسمت WHERE رو با هم AND کنی.

    مثلاً فرض کنیم که شما فیلد های : FirstName , LastName , Address رو داشته باشی و 3 تا TextBox برای گرفتن اطلاعات داشته باشی حالا میتونی چک کنی که هرکدوم از اینها مقدار داشت ,برای اون فیلد شرط رو به Select اضافه کنی :

    چیزی شبیه به این :

    int intParameterCounter =0;
    String strSql = "Select * from Tbl1";

    if(txtFirstName.Text.Lenght() >0 || txtLastName.Text.lenght() >0 ||txtAddress.Text.lenght() >0)
    strSql+="Where ";

    if(!String.IsNullOrEmpty(txtFirstName.Text))
    {
    if(intParameterCounter>0)
    strSql+="And ";
    strSql+="FirstName = "+txtFirstName.text;

    intParameterCounter++;
    }

    if(!String.IsNullOrEmpty(txtLastName.Text))
    {
    if(intParameterCounter>0)
    strSql+="And ";

    strSql+="LastName = "+txtLastName.text;
    intParameterCounter++;
    }

    if(!String.IsNullOrEmpty(txtAddress.Text))
    {
    if(intParameterCounter>0)
    strSql+="And ";

    strSql+="Address = "+txtLAddress.text;
    intParameterCounter++;
    }
    آخرین ویرایش به وسیله Sajjad.Aghapour : چهارشنبه 12 اسفند 1388 در 11:07 صبح دلیل: کلید واژه Highlighter برای کدهای #C عبارت csharp است

  3. #3

    نقل قول: تعيين بهترين حالت جستجو براي چند پارامتر

    intParameterCounter
    براي چيه چه معني داره كه تعداد پارامترها را بشماريم

    دوست عزيز اگر امكانش هست بيشتر توضيح بدين اگر هم كد دارين آپلود كنيد
    باتشكر

  4. #4
    کاربر دائمی آواتار shahab_ss
    تاریخ عضویت
    فروردین 1384
    محل زندگی
    bangkok
    سن
    45
    پست
    434

    نقل قول: تعيين بهترين حالت جستجو براي چند پارامتر

    دوست عزیز ،شما در نهایت باید یک دستور Select داشته باشی که شامل پارامتر های مورد نظرت باشه. دیگه روش ساخت این Select بسته به سلیقه خودت میتونه به هر شکلی پیاده سازی بشه.

    اما در مورد "intParameterCounter" , اگر بدون شمارش تعداد پارامتر ها گزینه "And" رو به Select اضافه کنید رشته مناسبی بدست نمیاد.برای همین با استفاده از یک شمارنده میتونید در صورت نیاز And رو اضافه کنید.

  5. #5

    نقل قول: تعيين بهترين حالت جستجو براي چند پارامتر


    if (!(txtid.Text == "") || !(txtonvan.Text == ""))
    {
    sqlselect = "select * from serinamayeshgah where id='" + txtid.Text + "' or onvan like'%"+txtonvan.Text+"%'";


    اين كد را براي دو پارامتر نوشتم ، اگر كاربر هر دو پارامتر را وارد كرده باشد خروجي درست مي دهد ، اگر عنوان را به تنهايي وارد كند باز هم در ست خروجي مي دهد ولي اگر به تنهايي كد را وارد كند خروجي درست نمي دهد و كل اطلاعات جدول چاپ مي شود ضمنا فيلد كد از نوع int ميباشد

  6. #6

    نقل قول: تعيين بهترين حالت جستجو براي چند پارامتر


    if (!(txtid.Text == "") || !(txtonvan.Text == ""))
    {
    sqlselect = "select * from serinamayeshgah where id='" + txtid.Text + "' or onvan like'%"+txtonvan.Text+"%'";


    اين كد را براي دو پارامتر نوشتم ، اگر كاربر هر دو پارامتر را وارد كرده باشد خروجي درست مي دهد ، اگر عنوان را به تنهايي وارد كند باز هم در ست خروجي مي دهد ولي اگر به تنهايي كد را وارد كند خروجي درست نمي دهد و كل اطلاعات جدول چاپ مي شود ضمنا فيلد كد از نوع int ميباشد

  7. #7

    نقل قول: تعیین بهترین حالت جستجو برای چند پارامتر

    نقل قول نوشته شده توسط csharpprogramer88 مشاهده تاپیک
    سلام
    در فرمی برای جستجو 5 پارامتر دارم و می خواهم جستجو طوری باشد که کاربر بتواند به طریقه های زیر جستجو کند :
    یا فقط یکی از پارامترها را وارد کند
    یا تمام این پارامترها را وارد کند
    یا دو، سه یا چهار
    بطور خلاصه کاربر هر یک از پارامترها را وارد کرد خروجی داشته باشد اما خرجی صحیح .
    دوستان لطف کنید راهنمایی کنید تا بهترین حالت جستجو را تعیین کنم
    http://www.sommarskog.se/dyn-search-...l#introduction

  8. #8

    نقل قول: تعيين بهترين حالت جستجو براي چند پارامتر

    دوستان من برنامه نويسيم زياد خوب نيست خواهشا كمك كنين

  9. #9

    نقل قول: تعيين بهترين حالت جستجو براي چند پارامتر

    آقا تورو خدا اگه يكي نمونه داره رو كنه فوريه

  10. #10
    کاربر دائمی آواتار mahdi87_gh
    تاریخ عضویت
    فروردین 1388
    محل زندگی
    قزوین
    پست
    448

    نقل قول: تعيين بهترين حالت جستجو براي چند پارامتر

    روشی که آقای shahab_ss گفتن روش خوبیه.میتونی این روش رو هم امتحان کنی
    string conditions = "";
    string selcommand = "Select * from Tablename";

    if (txt1.Text.Trim() != string.Empty)
    conditions = " field1=" + txt1.Text.Trim();

    if (txt2.Text.Trim() != string.Empty)
    {
    if (conditions == string.Empty)
    conditions = " field2=" + txt2.Text.Trim();
    else
    conditions += " And field2=" + txt2.Text.Trim();
    }
    ...
    if (conditions == string.Empty) selcommand+=" WHERE "+conditions;

  11. #11

    نقل قول: تعيين بهترين حالت جستجو براي چند پارامتر

    سلام
    كدي كه خودم نوشتم با 4 تا پارامتر خوب كار مي كنه و خروجي هم درسته حالا اگر يكي از پارامترها حذف شود همه اطلاعات جدول چاپ مي شود در صورتيكه هيچكدام از مقادير جدول null نيستند اگر يكي از پارامترها كاراكتري باشد كه در آن فيلد وجود نداشته باشد هم خروجي درست است .

    من ميخوام طوري باشه كه اگر كاربر همه را وارد كرد خروجي درست بدهد اگر يكي را هم وارد كرد جستجو براساس آن پارامتر باشد اگر دو يا سه تا جستجو براساس آن دو يا سه پارامتر باشد

    دوستان خواهشا كمك كنيد فوريه

    if (!(txtcode.Text == "")||!(cmbjensiat.Text=="")||!(cmbmadrak.Text=="") ||!(cmbcity.Text=="")||!(cmbcity.Text==""))
    {
    sqlselect = "select * from webloger where id='" + txtcode.Text + "' or jensiat like'%" + cmbjensiat.Text + "%' or madrak like'%"+cmbmadrak.Text+"%' or city='"+cmbcity.Text+"'";

    weblog.weblog_report frm = new weblog_report();
    frm.Show();
    }

  12. #12

    نقل قول: تعيين بهترين حالت جستجو براي چند پارامتر

    دوست عزیز منم تو برنامه ای که دارم مینویسم به این مشکل بر خوردم مشکل خودم رو اینجوری حل کردم کدش رو برات میذارم خیلی ساده و قابل فهمه
    string Search="";
    if(chk_Oid.Checked)
    if (Search=="")
    Search = Search+" oid='" + txt_Oid.Text + "'";
    else
    Search = Search + "and oid='" + txt_Oid.Text + "'";
    if(chk_SaleLandedType.Checked)
    if (Search=="")
    Search = Search + " type1='" + cmbType1.SelectedIndex + "'and type2='" + cmbType2.SelectedIndex + "'";
    else
    Search = Search + "and type1='" + cmbType1.SelectedIndex + "'and type2='" + cmbType2.SelectedIndex + "'";
    if(chk_Price.Checked)
    if (Search == "")
    Search=Search+" price='"+txt_Price.Text+"'";
    else
    Search = Search + "and price='" + txt_Price.Text + "'";
    if(chk_Area.Checked)
    if (Search == "")
    Search = Search + " area='" + txt_Area.Text + "'";
    else
    Search = Search + "and area='" + txt_Area.Text + "'";
    if(chk_Room.Checked)
    if (Search == "")
    Search = Search + " room='" + txt_Room.Text + "'";
    else
    Search = Search + "and room='" + txt_Room.Text + "'";
    objDataView.RowFilter = Search;
    توجه داشته باش که من چندتا چک باکس گذاشتم که توسط اونها تکست باکسهان فعال یا غیر فعال میشن، این کد را باید تو دگمه جستجو قرار بدی البته این در صورتی است که جستجو رو توسط dataview و rowfilter انجام بدی

  13. #13
    کاربر تازه وارد
    تاریخ عضویت
    دی 1385
    محل زندگی
    اصفهان
    سن
    36
    پست
    49

    نقل قول: تعيين بهترين حالت جستجو براي چند پارامتر

    سلام دوستان,

    می خواستم بدانم چطوری می توانم هــــــــــــــــــــر نوع اطلاعاتی را خواستم به صورت پویا جستجو کنم؟!
    یعنی شاید من 10 textBox داشته باشم, 10 * 10 برابر 100 حالت مختلف می شود!!!
    آیا باید برای تمامی این 100 حالت تک تک کد بنویسم؟!

    راه بهتری وجود ندارد؟

    ممنونم

  14. #14

    نقل قول: تعيين بهترين حالت جستجو براي چند پارامتر

    نقل قول نوشته شده توسط Warrior مشاهده تاپیک
    سلام دوستان,

    می خواستم بدانم چطوری می توانم هــــــــــــــــــــر نوع اطلاعاتی را خواستم به صورت پویا جستجو کنم؟!
    یعنی شاید من 10 textBox داشته باشم, 10 * 10 برابر 100 حالت مختلف می شود!!!
    آیا باید برای تمامی این 100 حالت تک تک کد بنویسم؟!

    راه بهتری وجود ندارد؟

    ممنونم
    دوست عزيز سوال منم دقيقا همينه ولي با توضيحات دوستان متوجه نمي شم

  15. #15
    کاربر تازه وارد
    تاریخ عضویت
    دی 1385
    محل زندگی
    اصفهان
    سن
    36
    پست
    49

    نقل قول: تعيين بهترين حالت جستجو براي چند پارامتر

    آقا من متوجه شدم

    داخل دانشگاه یک برنامه هم نوشتم که حتی حالت های OR و AND را هم می توان برایش انتخاب کرد یا حتی Like را.
    فقط یک سوال.
    دستورات دیگری که بشود آن ها را درود برنامه استفاده کرد مثل همین AND OR و Like چه چیز هایی هستند؟

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

    ممنونم

  16. #16

    نقل قول: تعيين بهترين حالت جستجو براي چند پارامتر

    پس لطف كن يه پروژه درست و درمان براي منم بفرست تا از تجربه شما هم استفاده كنيم تازه توي اين تاپيك بچه ها مي تونن دانلود بكنن من اون كدي را كه گذاشتم جوابش را گرفتم در اون از and وor و like هم استفاده كردم ولي نظرم راجلب نكرد

  17. #17
    کاربر تازه وارد
    تاریخ عضویت
    دی 1385
    محل زندگی
    اصفهان
    سن
    36
    پست
    49

    نقل قول: تعيين بهترين حالت جستجو براي چند پارامتر

    متاسفانه برنامه روی کامپیوتر سایت دانشگاه نوشته شد و وقتی سیستم را برای کاری restart کردم متوجه شدم که تمامی تغییرات از بین رفته و انگار تازه Windows را با نرم افزار هایش نصب کرده اند!!!(DeepFreeze!!)

    ولی از کد آخرین پست صفحه ی قبل استفاده کردم ولی کمی کامل ترش کردم.

  18. #18
    کاربر تازه وارد آواتار Jozef
    تاریخ عضویت
    دی 1388
    محل زندگی
    تهران - اصفهان
    سن
    40
    پست
    94

    Cool نقل قول: تعيين بهترين حالت جستجو براي چند پارامتر

    سلام دوستان
    یه نگاه به برنامه زیر بنداز
    اگه همونه که مد نظرته بگو تا کدشو بذارم
    قسمت فیلترش 4-5 خط کد داره
    فایل های ضمیمه فایل های ضمیمه

  19. #19

    نقل قول: تعيين بهترين حالت جستجو براي چند پارامتر

    نقل قول نوشته شده توسط Jozef_1363 مشاهده تاپیک
    سلام دوستان
    یه نگاه به برنامه زیر بنداز
    اگه همونه که مد نظرته بگو تا کدشو بذارم
    قسمت فیلترش 4-5 خط کد داره
    دوست من تشكر از اينكه مثال فرستادي اما اين ظاهرا يك فايل اجرايي دلفي هست و من روسيستمم دلفي نصب نيست و هنگام اجرا استاديو به اون گير مي ده و اجرا نميشه تازه من دلفي بلد نيستم بالاخره زحمت كشيدي اگر كد سي شارپ داري بفرست يا لااقل بگو چطور اين فايل را روي سيستم خودم اجرا كنم

  20. #20
    کاربر دائمی آواتار hakelberfin
    تاریخ عضویت
    اردیبهشت 1388
    محل زندگی
    تبریز
    پست
    137

    نقل قول: تعيين بهترين حالت جستجو براي چند پارامتر

    این کد همون کاری که شما میخواین رو انجام میده
    فایل های ضمیمه فایل های ضمیمه

  21. #21
    کاربر تازه وارد آواتار Jozef
    تاریخ عضویت
    دی 1388
    محل زندگی
    تهران - اصفهان
    سن
    40
    پست
    94

    نقل قول: تعيين بهترين حالت جستجو براي چند پارامتر

    اوه اوه
    شرمنده
    حواسم نبود
    منم عکس شما زیاد سی شارپ کار نکردم
    آماده میکنم و براتون میفرستم
    الان نمیتونم

  22. #22

    نقل قول: تعيين بهترين حالت جستجو براي چند پارامتر

    دوست من تا جايي كه امكانش هست زرودتر با تشكر

  23. #23
    کاربر تازه وارد آواتار Jozef
    تاریخ عضویت
    دی 1388
    محل زندگی
    تهران - اصفهان
    سن
    40
    پست
    94

    Wink نقل قول: تعيين بهترين حالت جستجو براي چند پارامتر

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

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

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