رفتن به مطلب
انجمن پشتیبانی لاراول ایران

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

negar_a

کاربر
  • تعداد ارسال ها

    43
  • تاریخ عضویت

  • آخرین بازدید

تمامی ارسال های negar_a

  1. من یک سایت فروشگاهی ایجاد کردم . مدیر سایت ، موجودی فروشگاه رو در مدیریت کم و زیاد میکنه . یا مثلا موقع خرید چند محصول ، به همون تعداد از موجودی محصول در سایت کم میشه و .... اما یک مشکل وجود داره . همه چیز فقط از طریق سایت که فروخته نمیشه . یک فروشگاه حقیقی وجود داره . ممکنه محصولی در فروشگاه حقیقی ، فروخته و تموم بشه و از این طرف کاربری در سایت اونو انتخاب و خرید کنه. مسوول فروش فروشگاه هم نمیرسه هر لحظه موجودی اینهمه محصول رو آپدیت کنه . خودم مدیر سایتم و فقط میتونم روزانه موجودی ها رو اصلاح کنم. چه فکری میشه برای این کار کرد ؟ سایتهای فروشگاهی چکار میکنند ؟
  2. سلام دوستان . من یک سری محصولات دارم که بصورت thumbnil و بزرگ در قالب اسلایدر نمایش داده میشه . ولی تو حلقه بخاطر وجود active با مشکل روبرو میشم. این کد رو میخوام داینامیک کنم . <div id="carousel-thumb" class="carousel slide carousel-fade carousel-thumbnails" data-ride="carousel"> <!--Slides--> <div class="carousel-inner" role="listbox"> <div class="carousel-item active"> <img class="d-block w-100" src="1.jpg" alt="First slide"> </div> <div class="carousel-item"> <img class="d-block w-100" src="2.jpg" alt="Second slide"> </div> <div class="carousel-item"> <img class="d-block w-100" src="3.jpg" alt="Third slide"> </div> </div> <!--/.Slides--> <!--Controls--> <a class="carousel-control-prev" href="#carousel-thumb" role="button" data-slide="prev"> <span class="carousel-control-prev-icon" aria-hidden="true"></span> <span class="sr-only">Previous</span> </a> <a class="carousel-control-next" href="#carousel-thumb" role="button" data-slide="next"> <span class="carousel-control-next-icon" aria-hidden="true"></span> <span class="sr-only">Next</span> </a> <!--/.Controls--> <ol class="carousel-indicators"> <li data-target="#carousel-thumb" data-slide-to="0" class="active"> <img class="d-block w-100" src="1_thumb.jpg" class="img-fluid"></li> <li data-target="#carousel-thumb" data-slide-to="1"><img class="d-block w-100" src="2_thumb.jpg" class="img-fluid"></li> <li data-target="#carousel-thumb" data-slide-to="2"><img class="d-block w-100" src="3_thumb.jpg" class="img-fluid"></li> </ol> </div> به این شکل تغییر دادم ولی مشکل داره . <div id="carousel-thumb" class="carousel slide carousel-fade carousel-thumbnails" data-ride="carousel"> <!--Slides--> <div class="carousel-inner" role="listbox"> <?php $i=0; ؟> @foreach( $product->images as $image) <?php $i++; ?> <div class="carousel-item <?php echo ($i==1 )?'active':'' ?>"> <img class="d-block w-100" src="{{$image_path}}" alt="First slide"> </div> @endforeach </div> <!--/.Slides--> <!--Controls--> <a class="carousel-control-prev" href="#carousel-thumb" role="button" data-slide="prev"> <span class="carousel-control-prev-icon" aria-hidden="true"></span> <span class="sr-only">Previous</span> </a> <a class="carousel-control-next" href="#carousel-thumb" role="button" data-slide="next"> <span class="carousel-control-next-icon" aria-hidden="true"></span> <span class="sr-only">Next</span> </a> <!--/.Controls--> <ol class="carousel-indicators"> <?php $x=0; ?> @foreach( $product->images as $image) <?php $x++;?> <li data-target="#carousel-thumb" data-slide-to="{{$x}}" class="<?php echo ($x==1 )?'active':'' ?>"> <img class="d-block w-100" src="{{$image_path}}"></li> @endforeach </ol> </div>
  3. خیلیی ممنونم . نتیجه داد . داکیومنت ها رو نگاه کرده بودم ظاهرا اینها رو نگفته بود .
  4. با سلام . من یک جدول order و یک product دارم . چون روابط این دو جدول many to many هست بین این دو روابط مورد نیاز و جدول pivot رو ایجاد کرد . order_product دارای این فیلدها هست . id , order_id,product_id , quantity وقتی کد مربوط به درج در pivot رو مینویسم این خطا رو میده SQLSTATE[42S22]: Column not found: 1054 Unknown column '0' in 'field list' (SQL: insert into `order_product` (`0`, `order_id`, `product_id`) values (2, 10, 1)) این هم کد من . $order = Order::create($orderData); $order->products()->attach($productID,$quantity); $productID و $quantity ارایه ای هستند که مقادیر لازم رو دارند .
  5. یعنی اگر تا یک تایمی پرداخت نکرد ، مثلا ده دقیقه ، اون رکورد ذخیره شده در order رو هم حذف کنم ؟ یا فقط روی موجودی ش کار کنم
  6. و طبق این تصویر من به جای order_detail نوشتم order_product . ایا روابط بین order و product چند به چند است ؟ یعنی یک رکورد از order میتواند متعلق به چند product باشد ؟ و یک product متعلق به چند order? بین اینها pivot table ایجاد میشه ؟
  7. با سلام . ایا باید قبل از پرداخت ، اطلاعات در order ذخیره بشه .؟ من ابتدا در session نگه داشتم و بعد از پرداخت در order ذخیره میکنم. اینطوری میتونم روی تعداد موجودی های محصولم درست تر عمل کنم . مشکل این روش من چیه ؟ .
  8. سلام دوستان . من فرم رجیستر رو تغییر دادم و شماره موبایل به فیلدها اضافه و وارد کردنش رو اجباری کردم . میخوام ایمیل یا نباشه یا اگر هست پر کردنش اجباری نباشه . این متد رو به این شکل در registercontroller کاستومایز کردم ولی نتیجه نمیده . یعنی ایمیل رو اگر پر نکنم ثبت نام نمیکنه . protected function validator(array $data) { return Validator::make($data, [ 'name' => ['required', 'string', 'max:255'], 'email' => ['string', 'email', 'max:255', 'unique:users'], 'phone' => ['required','min:11','numeric','unique:users'], 'password' => ['required', 'string', 'min:8', 'confirmed'], ]); }
  9. با سلام . من از این کد در فایل blade استفاده میکنم . {{$products->links()}} میخوام استایل صفحه بندی رو خودم اعمال کنم . اما نمیدونم از کدوم قسمت تغییر بدم . جستجو هم کردم . متوجه نشدم . با سپاس
  10. لینکی که دادید احتمالا بصورت get میخواید logout کنید . درسته ؟ برای خود لاراول با post هست . کدتون رو بزارید دوستان بهتر میتونن کمک کنند.
  11. سلام دوستان . سوالم مربوط به html.css,jquery هست . این لینک رو ببینید لطفا https://www.toytoy.ir/ میخوام مثل این سایت وقتی روی جزییات پروفایل ( قسمت بالای منو تصویر پروفایل کاربری )کلیک کردم شبیه popover در بوت استرپ کادری باز بشه و جزییاتش مثل این باشه . جستجو کردم اما گویا نمیشه در کد زیر این جزییات رو قرار داد . <a href="#" data-toggle="popover" title="Popover Header" data-content="Some content inside the popover" data-placement="bottom" class="nav-link"><span class="icon-user-circle-o icon-nav"></span></a> از چی باید استفاده کنم .
  12. با سلام مجدد . در مورد سبد خرید : اطلاعات محصولات در ابتدا در سشن ذخیره میشن . چه زمانی باید در دیتابیس ثبت بشن ؟ زمان پرداخت نهایی ؟ و اینکه در بعضی سایتها کاربر که از سایت خارج میشه و دوباره برمیگرده سبد خریدش همچنان موجوده و در بعضی سایتهای دیگه میبینیم پاک شده . کدوم بهتره ؟ اینهم از سشن به مدت طولانی استفاده کرده ؟
  13. من کد middleware رو به این شکل نوشتم . میخوام وقتی کاربر وارد صفحه ی وارد کردن کد تایید شد ، اگر بیش از شصت ثانیه زمان برد ریدایرکت بشه . ولی کد کار نمیکنه . ( بنظرم در اینجا میشه به جای زمان create_at از زمان فعلی هم استفاده کرد . درسته ؟) public function handle($request, Closure $next) { if (auth()->check()) { $expire_verify =date('H:i:s', strtotime('+60 second')); if(date('H:i:s')>$expire_verify){ $msg ='your error message'; return redirect()->back()->with('invalid', $msg); } } return $next($request); } اسم این صفحه ای که کاربر کد تایید وارد میکنه check-code هست و من middleware رو به همین صفحه اختصاص دادم .
  14. ممنون برای اینهمه کد . بیشتر سوالاتم درک منطق هست . مثلا اینکه نیازی هست کد تایید هم مثلا با نام verify در دیتابیس ذخیره بشه یا فقط در سشن کافیه ؟ کد کپچا بهتره در کدوم مرحله باشه ؟ ثبت نام من دو مرحله ای هست ، مرحله ی اول نام موبایل پسورد .... مرحله دوم ادرس شهر و ... اون max_time برای زمانی هست که کاربر فرصت وارد کردن کد تایید رو داره . درسته ؟
  15. و یک مساله دیگه اینه که وقتی از سیستم خود uath استفاده کنم ، وقتی اطلاعات اولیه مثل موبایل نام پسورد وارد میشه ، در پایگاه یک رکورد درج شده و در نتیجه لاگین اتفاق میفته . ایا منطقی هست که قبل از تایید کد ، کاربر لاگین بشه ؟ اینو چطور تغییر بدم ؟
  16. ممنون. فکر میکردم پیچیده تر از اینها باشه. پس به پکیجی مثل nexmo نیازی نیست ؟ و از طرفی اگر کاربر کد تایید رو وارد نکرد ، بهتره هر چند ساعت یکبار رکوردهای اضافی حذف بشوند با کرون جاب ؟
  17. سلام دوستان. من تو پروژه ام میخوام قسمت auth و ثبت نام رو تغییر بدم . بعنوان مثال فیلدهایی به جدول user اضافه کردم : phone , address,city,postCode . در مرحله ی اول میخوام کاربر اینها رو فقط پر کنه : name , emaile ,password,phone و بعد از اینکه کدی به موبایلش ارسال شد و کاربر درست وارد کرد بعد از اون ثبت ، لاگین و ریدایرکت اتفاق بیفته . و در مراحل بعد مابقی اطلاعات مثل ادرس و ... رو پر کنه کلیت کار اینه اما نمیدونم جطور و کدوم قسمت کدهای رو ویرایش کنم . مثلا در registreController چه تغییری ایجاد کنم که بعد از چک کردن phone اطلاعات رو ذخیره کنه . احتمالا باید middleware بسازم درسته ؟ ممنون میشم راهنمایی کنید .
  18. خیلی ممنون . در مثال قبل اگر اسم سشن مثلا cart باشه و محتویات بالا رو داشته باشه . وقتی به این شکل مینویسم اون مقدار سشن مربوطه رو برمیگردونه. session()->get('cart')[5]; اما اگر بخوام یکی از ایتم های سشن حذف بشه این کد جواب نمیده . به چه شکل میشه یکی از ایتم های سشن رو حذف کرد ؟ session()->forget('cart')[$id]; مثلا $id قبلش تعریف شده
  19. با سلام . در ادامه سوال قبل ، من یک سشن به نام total ایجاد کردم که اطلاعات ذخیره شده در اون به این شکله : Array ( [5] => Array ( [id] => 5 [price] => 30000 ) [7] => Array ( [id] => 7 [price] => 40000 ) [11] => Array ( [id] => 11 [price] => 50000 ) ) من اگه بنویسم print_r(session("total")[7]) چون چنین چیزی وجود داره خروجی رو درست نشون میده . اما اگر بخوام چک کنم سشنی با افست مثلا 33 وجود داره یا نه ، اصلا اجازه ی چک کردن نمیده و خطا میده (چون وجود نداره ) چطور چنین چیزی رو چک کنم ؟ if(!(session()->get('total')[33])){ }
  20. سلام دوستان . سوال من مربوط به جی کوئری و اجاکس هست. چند سطر وجود داره که هر سطر ایدی منحصر به خودشو داره . و در هر سطر یک input با کلاس quantity وجود داره که میخوام وقتی quantity کلیک و change شد هم ایدی سطرش tr رو برگردونه . و هم value از input الان با این کد value رو برمیگردونه اما نمیدونم همزمان چطور ایدی tr رو هم برگردونه بخشی از کد html : <tbody> <tr id="id1"> <td>کالا1</td> <td ><input type="number" class="quantity" value="1"></td> <td class="price">100</td> <td class="sum">100</td> </tr> <tr id="id2"> <td>کالا2</td> <td ><input type="number" class="quantity" value="4"></td> <td class="price">200</td> <td class="sum">800</td> </tr> <tr id="id3"> <td>کالا3</td> <td ><input type="number" class="quantity" value="3"></td> <td class="price">300</td> <td class="sum">900</td> </tr> </tbody> <div class="alert alert-success alert-ajax2" style="display: none"></div> کد js: $(document).ready(function() { $( ".quantity" ).change(function (e) { e.preventDefault(); var quantity = $(this).val(); $.ajax({ url : "/basket", method :'post', data : { quantity : quantity }, success : function(result) { //console.log(result); $(".alert-ajax2").show(); $(".alert-ajax2").html(result.success + result.data); } }); }); });
  21. خیلی ممنونم . بله نتیجه داد . حالا من برای پروژه ام تغییراتی در این کد دادم . به این صورت که وقتی تعداد محصولات انتخاب و تغییر داده میشه ابتدا اون مقدار رو بهمون نشون بده ( دارم مرحله به مرحله پیش میرم که یادگیریم بهتر بشه ) <input type="number" step="1" max="5" min="1" id="quantity" data-stepper-debounce="400" class="js-stepper form-control" value='1'> کد اجاکس : $.ajaxSetup({ headers: { 'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content') } }); $(document).ready(function() { $( "#quantity" ).change(function () { var quantity = $("#quantity").val(); $.ajax( { type : 'post', url : "{{ url('/basket-post') }}", data : { quantity : quantity }, success : function(data) { alert(data.quantity); } }); }); }); و route : Route::post('/basket-post' , 'OrderController@basketPost')->name('basket.post'); و کنترلر : public function basketPost(Request $request) { if($request->ajax()){ return Response::json($request->all()); }else{ return Response::json(false); } } تا اینجا درست کار میکه و وقتی روی quentity کلیک میکنم تعداد اون رو بهم میده . اما تعداد سطرها بیش از یکی هست و این سطر ممکنه تکرار بشه . بخاطر همین فقط نتیجه ی سطر اول رو برمیگردونه و بقیه بی نتیجه هست بخاطر همین ایدی اون سطر رو هم به اسمش اضافه کردم اما نمیدونم چطور در اجاکس دریافت کنم هر سطر با ایدی منحصرش . <input type="number" step="1" max="5" min="1" id="quantity{{$details['id']}}" data-stepper-debounce="400" class="js-stepper form-control" value='1'> و مسله ی دوم اینکه میخوام مقدار هر کدوم رو در کنترلر در متغیر بریزم تا ازش استفاده کنم . به این شکل نوشتم undefined برمیگردونه return Response::json(['quantity'])->getData(); ممنون از پاسخ گویی تون
  22. سلام دوستان . مشکل کد من چیه که جواب نمیده . در یک صفحه اینو دارم : <input type="text" id="fname"> <button type="button" id="regist" class="btn btn-warning">getrequest</button> و این کد اجاکس رو نوشتم . میخوام بعنوان تست ، وقتی روی button کلیک میکنم ، مقداری که درون فیلد وارد کردم نشون بده . <script type="text/javascript"> $.ajaxSetup({ headers: { 'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content') } }); $(document).ready(function() { $('#regist').click(function () { var fname = $('#fname').val(); $.ajax({ type:'POST', url:"{{ url('/regist') }}", data:{fname:fname}, success:function(data){ alert(data.success); } }); }); }); </script> و کدی که در web.php نوشتم اینه : Route::post('/regist', function () { if((new Illuminate\Http\Request)->ajax()){ return Response::json((new Illuminate\Http\Request)->all()); } }); وقتی کلیک میکنم در alert کلمه ی undefined رو نمایش میده
  23. ممنونم از پاسخ خوبتون. یک سوال . فکر میکنم منطق کدتون اینه که اگر کاربر روی یک محصول چندبار کلیک کرد به تعداد اون محصول (quantity ) اون محصول اضافه بشه . درسته ؟ آیا بهتر نیست این مورد رو به شکل دیگه قرار بدیم ؟ مثلا در انتها که سبد خرید رو کاربر مشاهده میکنه ، قسمت اضافه کردن تعداد بزاریم ؟
  24. سلام دوستان. من میخوام محصولات انتخابی رو در سشن ذخیره کنم . از اونجایی که هر محصول یک ایدی ویژه داره ، بر اساس ایدی در سشن ذخیره میکنم که اگر دوباره اون محصول انتخاب شد ، به سبد اضافه نشه . $product = Product::find($id); if(!isset($sessionBasket[$id])) { $sessionBasket[$id] = [ "title" => $product->title, "quantity" => 1, "price" => $product->price, ]; session()->push('sessionBasket', $sessionBasket); } اما push خودش هم ایندکس اضافه میکنه و نتیجه به این شکل برگردانده میشه . Array ( [0] => Array ( [5] => Array ( [title] => ماشین پلیس 778 [quantity] => 1 [price] => 60000 ) ) [1] => Array ( [3] => Array ( [title] => ماشین جدید 45 [quantity] => 1 [price] => 340000 ) ) [2] => Array ( [5] => Array ( [title] => ماشین پلیس 778 [quantity] => 1 [price] => 60000 ) ) ) از چه کدی بجای push استفاده کنم . put هم گویا قبلی رو پاک میکنه و جدید اضافه میکنه با تشکر
  25. و یک سوال دیگه : در اکثر تحلیل ها دیدم که یک جدول جدا بنام attribute برای product میزارن . که بعنوان مثال سایز ، رنگ و ... رو در برمیگیره . من با نحوه ی جداسازی جداول آشنا هستم و تاحدودی آگاهی دارم اما برای این موارد اشکالی پیش میاد اگر مواردی مثل رنگ و سایز رو در فرم محصولات ، بصورت یک سلکت باکس قرار بدیم و بصورت آرایه ای در فیلدی در جدول product ذخیره کنیم ؟ چون مقدارهای رنگ و سایز در پروژه ی من ثابت هستند و نیاز به مدیریت و تغییر توسط مدیر ندارند که بخوام جداگانه جدول طراحی کنم . رنگ : سبز ، بنفش ، قرمز ، آبی سایز : کوچک ؛ متوسط ، بزرگ
×
×
  • جدید...