رتبه موضوع:
  • 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
جستجو
#1
سلام
من یه فرم دارم که میخوام وقتی روی دکمه جستجو کلیک کرد url اینجوری بشه :
کد پی‌اچ‌پی:
index/search?چیزی که داخل فیلد جستجو وارد کرده 

چی کار باید بکنم؟
پاسخ
#2
الان سوال چی هست دقیقا؟
Senior PHP & Laravel Developer | Software Architecture

[عکس: __Twitter.png]       [عکس: __Linkedin.png]

weblog | Codecasts
پاسخ
#3
برای جستجو هست
مثلا میخوام وقتی توی فیلد وارد کردم : "تست"
url اینجوری بشه
کد پی‌اچ‌پی:
index/search?تست 
چی باید بکنم؟
پاسخ
#4
سوال یکم غیر واضح دوست عزیز
خب الان تو چه روتی هستید ؟
اگر متد فرم رو get بزارید باید درست شه
قوانین انجمن لاراولیستا  | شماره تماس :‌09124783045 |‌ تلگرام :‌ 09377869283
پاسخ
#5
این route رو نوشتم :
کد پی‌اچ‌پی:
Route::get('index/search?{search}','ArticleController@search'); 
فرمم هم اینه :
کد پی‌اچ‌پی:
<div class="searchbox">
    <
div class="cn">
    {!! 
Form::open(['url'=>'index/search?']) !!}

    {!! 
Form::text('search',null,['placeholder'=>'دنبال چه چیزی میگردید؟''class' => 'addtxt']) !!}

    {!! 
Form::submit('جستجو کن!!',['class' => 'addbtn']) !!}

    {!! 
Form::close() !!}
    </
div>
</
div

تابعی هم که نوشتم :
کد پی‌اچ‌پی:
public function search($search)
    {
        
$article article::latest()->where('title','LIKE','%'.$search.'%')->get();
        return 
view('index',compact('article'));
    } 
پاسخ
#6
(07-14-2015, 04:22 PM)laravel نوشته:  برای جستجو هست
مثلا میخوام وقتی توی فیلد وارد کردم : "تست"
url اینجوری بشه


کد پی‌اچ‌پی:
index/search?تست 
چی باید بکنم؟

توی URL بعد از ? که بهش میگن query string به شکل کلید-مقدار قرار می‌گیره، یعنی URL به این شکل میشه


کد:
http://yoursite.com/index/search?q=search_term

که اون q تو این مثال اسم textboxی هست که جستجو توش انجام میشه


(07-14-2015, 10:02 PM)laravel نوشته:  این route رو نوشتم :


کد پی‌اچ‌پی:
Route::get('index/search?{search}','ArticleController@search'); 
فرمم هم اینه :


کد پی‌اچ‌پی:
<div class="searchbox">
 
   <div class="cn">
 
   {!! Form::open(['url'=>'index/search?']) !!}

 
   {!! Form::text('search',null,['placeholder'=>'دنبال چه چیزی میگردید؟''class' => 'addtxt']) !!}

 
   {!! Form::submit('جستجو کن!!',['class' => 'addbtn']) !!}

 
   {!! Form::close() !!}
 
   </div>
</
div

تابعی هم که نوشتم :


کد پی‌اچ‌پی:
   public function search($search)
 
   {
 
       $article article::latest()->where('title','LIKE','%'.$search.'%')->get();
 
       return view('index',compact('article'));
 
   

در نتیجه باید تغییراتی توی route و کنترلرتون بدین.


نیازی به اضافه کردن پارامتر به روت نیست
کد پی‌اچ‌پی:
Route::get('index/search','ArticleController@search'); 

توی کنترلر می‌تونید از Request یا حتی FormRequest استفاده کنید تا مقدار کلید search رو به دست بیارید
کد پی‌اچ‌پی:
   public function search(Request $request)
 
   {
 
       $search $request->get('search');
 
       $article article::latest()->where('title','LIKE','%'.$search.'%')->get();
 
       return view('index',compact('article'));
 
   
Senior PHP & Laravel Developer | Software Architecture

[عکس: __Twitter.png]       [عکس: __Linkedin.png]

weblog | Codecasts
پاسخ
#7
ممنون از راهنماییتون اما باز هم درست نشد
البته یه تغییرات خوبی کرد اونم این که مثلا وقتی توی فیلد میزنم "تست" url اینجوری میشه :
کد پی‌اچ‌پی:
http://localhost:8000/index?search=تست 
الان کدها فرمم اینه :
کد پی‌اچ‌پی:
<div class="searchbox">
 
   <div class="cn">
 
   {!! Form::open(['method' =>'GET','url'=>'index/']) !!}

 
   {!! Form::text('search',null,['placeholder'=>'دنبال چه چیزی میگردید؟''class' => 'addtxt']) !!}

 
   {!! Form::submit('جستجو کن!!',['class' => 'addbtn']) !!}

 
   {!! Form::close() !!}
 
   </div>
</
div
route :
کد پی‌اچ‌پی:
Route::get('index/search','ArticleController@search'); 
controller :
کد پی‌اچ‌پی:
   public function search(Request $request)
 
   {
 
       $search $request->get('search');
 
       $article article::latest()->where('title','LIKE','%'.$search.'%')->get();
 
       return view('index',compact('article'));
 
   
پاسخ
#8
الان کدوم قسمت مشکل داره؟
Senior PHP & Laravel Developer | Software Architecture

[عکس: __Twitter.png]       [عکس: __Linkedin.png]

weblog | Codecasts
پاسخ
#9
الان عمل جستجو انجام نمیشه
پاسخ
#10
(07-16-2015, 10:12 PM)laravel نوشته:  الان عمل جستجو انجام نمیشه

یه چک کنید ببینید مقدار متغیرهای search$ و article$ درست برگردونده میشن؟
Senior PHP & Laravel Developer | Software Architecture

[عکس: __Twitter.png]       [عکس: __Linkedin.png]

weblog | Codecasts
پاسخ
 


موضوعات مشابه ...
موضوع نویسنده پاسخ بازدید آخرین ارسال
  جستجو در dB amirbakhtiari 6 161 07-26-2016, 05:53 AM
آخرین ارسال: amirbakhtiari

پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان

درباره انجمن فریم ورک لاراول

انجمن لاراولیستا به عشق توسعه دهنده ها و علاقمندان به این فریم ورک محبوب ایجاد شده و امیدواریم با نظرات خوبتون ما رو در بهبود کار یاری کنید. در ضمن خیلی هم خوشحال میشیم شما هم در توسعه این انجمن سهمی داشته باشید.