نمایش نتایج: از شماره 1 تا 2 , از مجموع 2

موضوع: کمک در مورد یک کلاس php

Threaded View

پست قبلی پست قبلی   پست بعدی پست بعدی
  1. #1
    عضو انجمن bloodthirstyb آواتار ها
    تاریخ عضویت
    Mar 2014
    نوشته ها
    117
    تشکر تشکر کرده 
    49
    تشکر تشکر شده 
    17
    تشکر شده در
    15 پست

    پیش فرض کمک در مورد یک کلاس php

    درود به اعضای عزیز وب هاستینگ تاک
    من توی یک اسکریپت به یک مشکل برخوردم و امیدوارم با توضیحاتی که میدم بتونید به من کمک کنید.

    من یک اسکریپت تخفیف گروهی دارم که توی صفحه اول سایت سه بلوک برای نمایش تخفیف های روز ( $products3 ) ، پر فروش ترین تخفیف ها ($productsMostSolds) و محبوب ترین تخفیف ها ($productsMostLikes) داره که برای نمایش اون ها از کد های زیر استفاده شده :

    کد PHP:
              <div id="MostSolds">            <div class="index-titlebar">              <h4 class="ddd title"> پرفروش ترین تخفیف ها </h4>            </div>                    <div class="row rtl home-mahsool">                                                 <?php echo $__env->renderEach('ajax.ajaxProduct'$productsMostSolds'product'); ?>                                                                                           </div>                </div>          <div id="MostLikes">              <div class="index-titlebar">              <h4 class="ddd title"> محبوب ترین تخفیف ها </h4>            </div>                    <div class="row rtl home-mahsool">                                                 <?php echo $__env->renderEach('ajax.ajaxProduct'$productsMostLikes'product'); ?>                                                                                           </div>             </div>
    از طرفی کنترلری که مربوط به نمایش این قسمت ها هست هم توی یک فایل به اسم HomeController.php نوشته شده که محتویاتش اینه :

    کد PHP:
    <?php  namespace App\Http\Controllers; use App\Http\Requests; use Session; use Cookie; use App\Model\City; use App\Model\Product; use App\Model\Basket; use App\Model\Order; use App\Model\Menu; use Illuminate\Support\Facades\Auth; use Illuminate\Support\Facades\Input; use Request; use Telegram; class HomeController extends Controller { public function __construct() { } public function search($q){ $q=trim($q); if(!trim($q)) return; $resultCount 10$products Product::where('name''LIKE''%'.$q'%')->orWhere('title','LIKE''%'.$q'%')->paginate($resultCount); if($products) return $this->ReturnResponse($products); else return $this->ReturnResponse(null," خطا در ثبت اطلاعات "); } public function PostSearch(){ $q=trim(Input::get('search')); $resultCount 1$products Product::where('name''LIKE''%'.$q'%')->orWhere('title','LIKE''%'.$q'%')->paginate($resultCount); return view('search',compact('products')); } public function ajaxLoadBasket(){ $baskets=Basket::ActiveBaskets(); $total=Basket::ActiveBaskets()->sum(function($t){ return $t->count $t->price; }); return view('ajax.ajaxBasket',compact('baskets','total'))->render(); } public function SetDefaultCity($city){ Cookie::queue('city'$city2628000); Session::put'city'$city ); return redirect("/$city"); } public function ShowProduct($id){ if(!$id) return redirect('/'); $product=Product::withCount('likes')->FindorFail($id); $products4=Product::ActivePlacements(4,$product->menu_id)->withCount('likes')->whereNotIn('id',[$id])->take(6)->get(); $products=Product::NotActivePlacements($product->menu_id)->withCount('likes')->whereNotIn('id',[$id])->take(13)->get(); $cnt$products4->count() >= ? : $need3 = (int)(ceil$cnt 3) * 3); $cnt=abs($need3 $cnt); $SimilarProducts $products4->merge($products->take($cnt)); $menu = new Menu$breadcrumb $menu->buildBreadcrumbParents("active",$product->menu_id); return view('product',compact('product','breadcrumb','SimilarProducts')); } public function index($city=null){ if(!$city$city Cookie::get('city','tehran'); $city=City::WHERE('slug',$city)->first(); $products=Product::NotActivePlacements()->Where('city_id',$city->id)->take(13)->get(); $productFirstPage=Product::Find(Config('constants.HOME.slider')); $products3=Product::ActivePlacements(3)->withCount('likes')->Where('city_id',$city->id)->get(); $productsMostSolds=Product::whereNull('disable')->where('approved',1)->where('soldcount','>',0)->Where('city_id',$city->id) ->withCount('likes')->orderby('soldcount','desc')->take(9)->get(); $productsMostLikes=Product::has('likes')->whereNull('disable')->where('approved',1)->Where('city_id',$city->id) ->withCount('likes')->orderBy('likes_count''desc')->take(9)->get(); /*$productsCategory1=Product::has('likes')->whereNull('disable')->where('approved',1)->Where('city_id',$city->id)->Where('maintenance',$category) ->withCount('likes')->orderBy('likes_count', 'desc')->take(9)->get();*/ $chunk $products->splice(4); $cnt$products3->count() >= $products3->count() : $need3 = (int)(ceil$cnt 3) * 3); $cnt=abs($need3 $products3->count()); $products3 $products3->merge($chunk->take($cnt)); return view('home',compact('productFirstPage','products3','productsMostSolds','productsMostLikes')); } public function ShowProducts($city=null,$category=null){ if(!$city$city Cookie::get('city','tehran'); $city=City::WHERE('slug',$city)->first(); $menu=Menu::Where('slug',$category)->first(); if(!$menu$menu=Menu::findorfail(1); $products=$menu->Products()->Where('city_id',$city->id); $breadcmenu = new Menu$breadcrumb $breadcmenu->buildBreadcrumbParents("active",$menu->id); $menuTitle=$menu->title; return view('products',compact('products','breadcrumb','menuTitle')); } public function police() { $user Auth::user(); if(!($this->ValidateData(['product_id' => 'required','police_reason'=>'required']))){ return $this->ReturnResponse(null," خطا در ورودی "); } $result = \App\Model\Police::create([ 'user_id' => $user->id'product_id'=>Input::get('product_id'), 'title'=>Input::get('police_reason'), 'info'=>Input::get('police_other_reason'), ]); if($result) return $this->ReturnResponse(" با تشکر از شما ، گزارش  ثبت شد "); else return $this->ReturnResponse(null," خطا در ثبت اطلاعات "); } public function ShowContactForm(){ return view('contactus'); } public function contactStore() { if(!($this->ValidateData(['name' => 'required','email'=>'required','info'=>'required']))){ return $this->ReturnResponse(null,$this->errors); } $result = \App\Model\Message::create([ 'name'=>Input::get('name'), 'email'=>Input::get('email'), 'cell'=>Input::get('cell'), 'info'=>Input::get('info'), ]); $title =" پیام جدیدی از طرف :    "$title .=" \r\n "$title .=$result->name$title .= " با ایمیل :  "$title .=" \r\n "$title .= $result->email$title .=" \r\n "$title .=" به سایت ارسال شده است "; if( !env('IsLocal') ) { if( Config("constants.TELEGRAM.active") ) $TelegrmResponse Telegram::sendMessage([ 'chat_id' =>Config("constants.TELEGRAM.ADMIN_CHAT_ID"), 'text' => $title ]); } if($result) return $this->ReturnResponse(" با تشکر از شما ، پیام شما ثبت گردید و بزودی بررسی خواهد شد "); else return $this->ReturnResponse(null," خطا در ثبت اطلاعات "); } public function ShareSocial($product_id,$socialName){ if(!$product_id || !$socialNamedd("Error id"); $product=Product::FindOrFail($product_id); if($socialName=="facebook"$url="https://www.facebook.com/sharer/sharer.php?u=$product->url"; elseif($socialName=="google"$url="https://plus.google.com/share?url=$product->url"; elseif($socialName=="twitter"$url="https://twitter.com/intent/tweet?text=$product->title_dash&url=$product->url"; elseif($socialName=="telegram"$url="https://telegram.me/share/url?url=$product->url&text=$product->title_dash"; if(Auth::guest()) return redirect("$url"); $user=Auth::User(); if($user->IsSharedProduct($product_id,$socialName) ){ $msgtype="danger"$txt=" محصول مورد نظر قبلا توسط شما به اشتراک گذاشته شده و امتیاز آن برای حساب کاربری تان ثبت گردیده است "$txt .=" در صورت تمایل می توانید مجددا آن را به اشتراک بگذارید "$txt .=" <a class='btn btn-success' href='$url'>ادامه اشتراک گذاری</a> "; return view('result',compact('txt','msgtype')); } else { $share=\App\Model\Share::FirstOrCreate(['user_id'=>$user->id'product_id'=>$product_id'social_name'=>$socialName, ]); $reason=" اشتراک بن $product_id $product->name در $socialName "$t=Config('constants.TSHARE.google') ? : 0$point=\App\Model\Point::create(['user_id'=>$user->id,'reason'=>$reason,'t'=>$t]); return redirect("$url"); } } }
    حالا درخواست من چیه؟ :

    من میخوام یه متغیر مثل هرکدوم از متغیر هایی که برای نمایش تخفیف روز یا پرفروش ترین تخفیف ها یا محبوب ترین تخفیف ها ایجاد بشه ولی فرقش اینه که این متغیر آگهی های یک دسته خاص به اسم " خدماتی و تفریحی " که slug اون توی دیتابیس این هست maintenance نمایش بده.
    امیدوارم متوجه منظورم شده باشید.

    فایل کنترلر پیوست شد
    فایل های پیوست شده فایل های پیوست شده

اطلاعات موضوع

کاربرانی که در حال مشاهده این موضوع هستند

در حال حاضر 1 کاربر در حال مشاهده این موضوع است. (0 کاربران و 1 مهمان ها)

مجوز های ارسال و ویرایش

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