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

@amin

پارس کلیکی از ٢ سال پیش

تجربه

36900

  • ٢ هفته پیش @amin به گفتگوی شروع برنامه نویسی وب جواب داد.

    @mohammad8604

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

    ببینید مهم نیست کدوم رو یاد بگیری اصن برین زبان Lua یاد بگیرید مهم اینه که از اون بتونی پول دربیاری درسته!؟

    این بحث ها هم که نمیدونم php داره میاد پایین ruby جز top 10 زبان ها نیست نمیدونم پایتون رو رتبه اول هست اینا همش یه آماره صرفاٌ زبان هایی که جز 10 تای برتر هستند خوب نیستن یا اون هایی که جز 10 تا نیستن بد نیستن اینا فقط ذهنتو مشغول میکنه , سعی کن یکی رو شروع کنی به یاد گیری و به سطحی برسی که بتونی از اون پول خوب دربیاری و در آینده اگر احیاناٌ از اون خوشت نیومد با یک هفته داکیومنت خوندن و تمرین میتونی سویچ کنی رو یه زبون دیگه, پس فقط شروع کن مهم نیست کدوم زبون باشه .

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

  • @3aeed_rm6

    تجربه شخصی بنده تا الان بیشتر mysql بوده که تو حجم های بالا با ایندکس گذاری این مشکلی که بالا گفتید بیشترش حل میشه , اگر احساس میکنید تعداد ریکوئست ها یا رکورد های اطلاعاتیتون چند میلیونی میشه پیشنهاد میکنم حتماٌ مهاجرت کنید به nosql

    در مورد بخش دوم که فرمودید به این کار اصولاٌ دیس پچینگ داخل سرور و اپلیکیشن میگن که اکثراٌ تو اپلیکیشن های بسیار بزرگ استفاده میشه حالا توضیح سادش اینه که مثلاٌ سرور گنجایش 1000 تا ریکوئست رو همزمان داره ولی میبینی یک دفعه ای 10000 هزار تا ریکوئست وارد سرور میشه که این رو سرور های پیشرفته خودش فاز بندی میکنه و همون بحث دی پچینگ رو انجام میده و تقسیم میکنه این هارو .

  • ١ ماه پیش @amin به گفتگوی بهترین شیوه پرداخت داخل ایران جواب داد.

    @amir

    در این درگاه های پرداخت فقط پول رو میتونی پرداخت کنی ارز های دیجیتال ندارن و بسیار هم عالی کار می کنن مستنداتش هم خیلی آسونه زرین پال کل پیاده سازیش 1 روز وقت نمیگیره , درضمن مثل paypal کنسلیشن نداره پول رو پرداخت کردی نمیتونی بک بدی. در ضمن تسویه حسابشم عالی هستش.

    در مورد شارژ با ارز های دیجیتال حالا من با بیت کوینشو دیدم که یه آدرس والت میذارن داخل سایت یا qr code والت رو میذارن که هرکی خواست بتونه اون مبلغ رو پرداخت کنه بعد طی سه مرحله تاییدش میکنه سایت و بعد اکانتت شارژ میشه این کل سناریوی هست که من دیدم تو این سایت ها.

    حالا یه راه دیگه هم هست یادم رفت بگم شارژ از طریق perfect mony هست تو ایران از طریق صرافی های آنلاین دسترسی داریم به این مورد البته این شاید برای شما یکم خطر داشته باشه.

  • ١ ماه پیش @amin یک گفتگو به اسم بهترین شیوه پرداخت داخل ایران درست کرد.

    در مورد پادکست جدید شیوه های پرداخت داخل ایران اگر این کار انجام بشه خیلی عالی میشه و بهترین گزینه بین درگاه های پرداخت واسط زرین پال و پی پینگ هستش ,البته شرکت های دیگه ای هم هستند اما بیشتر توسعه دهنده ها و افراد از این ها استفاده میکنند.

    در ضمن یه پیشنهاد داشتم شاید به در بخور باشه اونم این که اگر از ارز های دیجیتال و بلاک چین استفاده بشه خیلی عالی میشه نه مشکلی برای ما که تحریم هستیم و نه برای افرادی که خارج از ایران زندگی میکنن پیش میاد , تازه دسترسی ما به ارزهای دیجیتال خیلی سریع وآسونه و قابل ردیابی توسط هیچ جایی نیست. تو چند تا سایت ایرانی دیدم آوردن که با بیت کوین حسابتو شارژ میکنی . ( تازه لازم هم نیست قوانینی که اروپا وضع میکنه رعایت بشه آزاد آزاد , امریکا هم هر چقدر دوست داره تحریم کنه هیچ اثری در این مورد نمیکنه)

  • ١ ماه پیش نویسنده @amin یک مقاله تازه به اسم ۲۲ شهریور روز برنامه نویسان نوشت.

    شاید اکثر ما جریان بوجود آمدن روز برنامه نویس و اون برنامه نویس روسی رو شنیده باشیم و دیگه نمیخواهیم تکرار کنیم این مسئله رو و روز برنامه نویس رو از یک دیدگاه دیگه میخواهیم تبریک بگیم.

    alt روز برنامه نویس

    اول از همه باید بگم که برنامه نویس فردیه که با میکس کردن منطق و خلاقیت و کمی هنر سعی در طراحی و توسعه برنامه هایی داره که زندگی رو برای ما راحت میکنه , اکثر برنامه نویس ها کنار مدیر شرکت ها و کار آفرینان کمک خیلی زیادی برای توسعه کسب و کارها و تجارت الکترونیک انجام میدن.

    البته لازم به ذکر هست که آزاد کار ها یا همون Freelancer ها هم از این قضیه مستثنا نیستند.

    همه این ها نشان از اهمیت برنامه نویسی در دنیای امروز ماست. برنامه نویس هایی که با نوشتن کدها دنیای امروز ما رو می سازن.برنامه نویسی یکی از شغل هایی هست که در ظاهر بسیار آسونه ؛ولی کسانی که در این حوزه فعالیت می کنند از فشار ذهنی و جسمی که بخاطر این شغل متحمل می شن خبر دارند.برنامه نویسی در کشور ما هم رشد چشمگیری داشته و دانشجویان این حوزه از سیستم آموزشی پیشی گرفته و با شرکت در کلاس های برنامه نویسی یا به صورت خودآموز به یادگیری در این حوزه می پردازند.البته پارس کلیک هم یکی از این کلاس های آموزشی هست که بدون هیچ چشم داشتی برای توسعه وب فارسی کمک شایانی کرده.


    اما یکم از زندگی یک برنامه نویس با چالش های گوناگونی که رو به رو هست بگیم:

    alt چالش های برنامه نویس

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

    اونها در دوران کار خود استرس های فراوانی دارن. با چالشهایی فراوانی رو به رو هستند . برای برخی از چالش ها هیچ منبع مطالعه ای آن وجود نداره . برنامه نویس باید ساعت ها در Stackoverflow از دیگران بپرسه و بپرسه و … حالا می فهمیم چرا قهوه ی برنامه نویس همیشه سرده. زیرا برنامه نویس همیشه غرق در افکار خویش برای حل چالش ها ست و از قهوه و یا چای خود غافل می شه.

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

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


    بنابراین روز برنامه نویس بر همه کسانی که ویرگول میزارن یا نمیذارن, تا صبح بیدارن یا بیدار نیستند, کیبوردشون تق تق میکنه یا نمیکنه,با شرکت کار میکنن یا آزاد کارن, هنر دارن یا ندارن , ایران هستند یا بیرون ایران , انگلیسی هستند یا فارسی تبریک عرض میکنیم. روزمون مبارک ❤️👏👏🌷o

  • ٢ ماه پیش @amin به گفتگوی ساخت اپ با کدهای وب جواب داد.

    @behzad

    مهمترین بحثش همین فرانته بک رو مهم نیست با چی بزنی با php بزن فرقی نمیکنه بازم تاکید میکنم مهمترین بحث فرانته , به نظر من اول تمومش کن بعد به فایل اجرایی تبدیل کن. انگار همون وب سایت رو مینویسی هیچ فرقی نداره.

  • ٢ ماه پیش @amin به گفتگوی چند فروشندگی درلاراول جواب داد.

    @amir

    چه جدول هایی به غیر از این جدول ها ساختی؟

    فعلاٌ همین هاست امیر چیز دیگه ای نیست , آره خودم هم احساس میکنم خیلی پیچیدس واسه همینه گیج شدم نمیدونم چیکار کنم , یعنی این DM هایی که بالا دادی ماله آمازون و ebay هستند؟ هرچی نگا میکنم در مورد کیف پول و برداشت از اون جدولی نیست !

  • @netwons

    ببین اگر عکس ها و فایل هات برات مهم هستند و نمیخوایی کسی از بیرون دسترسی داشته باشه و فقط از سرور اول بهش دسترسی داشته باشه باید واسش تایع بنویسی و رمز گذاری کنی .( نیاز به درک مسئله و برنامه نویسی داره)

    ولی اگر برات عکس ها مهم نیست میتونی همون روشی که گفتم بالا ازش استفاده کنی و لازم نیست فایل htaccess رو دستکاری کنی و خیلی ساده یه مثال مثلاٌ سرور دوم آدرسش به این صورت هست www.server2.com خیلی ساده داخل پوشه پابلیک آپلود میکنی و لینک عکس هارو به این صورت میگیری www.server2.com/pic1 این ساده ترین راه هست . و این آدرس رو هرجا میخوایی استفاده کن

    گرچه راه های دیگه ای هم هست ولی آسون ترین راه هاش این 2 تایی هست که بالا گفتم

  • ٢ ماه پیش @amin به گفتگوی ساخت اپ با کدهای وب جواب داد.

    @behzad

    به این اپلیکیشن ها اصولاٌ وب بیس میگن که ایده بسیار خوبی برای استارت آپ ها و حتی شرکت های بزرگ هست و تازه تازه دارم میبینم که دارن میان به این سمت اکثر شرکت ها برای این کار باید front-end رو خوب بلد باشید مخصوصاٌ ریسپانسیو و css که کلاٌ رو این ها سوار میشه و حالا فرق نداره که با چه زبانی میزنی مهم اینه که دیزاینت خوب و قابل قبول باشه , برای این کار توصیه میکنم اگر رسپانسیو رو به صورت دستی میخوایی بزنی انجام بده اگر هم استاندارد میخوایی bootstrap میتونه کمکت کنه ,

    • مزایای اپلیکیشن های وب بیس اینه که اولاٌ هزینه طراحی و نگهداری کمی نسبت به ios و android داره
    • دوم این که امنیت این سایت ها بیشتره
    • قابلیت توسعه سریع و بدون درد سر
    • استفاده کم منابع سخت افزاری
  • @netwons

    با ftp آپلود کن داخل یه دایرکتوری و بعد htaccess رو یا بردار یا تنظیماتش رو جوری انجام بده که بتونی از خارج بهش دسترسی داشته باشی و بعد به راحتی کدوم عکس رو میخوایی لینکشو بردار استفاده کن به همین راحتی یوسر نیم و پسورد نمیخواد.

  • ٢ ماه پیش @amin به گفتگوی چند فروشندگی درلاراول جواب داد.

    @amir

    بله پایین رو نگاه کنید البته این تا اینجایی که طراحی کردیم هست و هیچ مورد در مورد چند فروشندگی نیست توش دارم تحلیل میکنم :(

    عکس: ایناها

    الان منتظر اینم به یه نتیجه ای برسم بعد جداول wallet و دیگر جداولی که احتمالاٌ لازم بشه طراحی کنم یکم در مورد پروژه هم توضیح بدم که یک سری فروشنده رو تعریف میکنیم به سیستم به عنوان نویسنده یا همون فروشنده تو فروشگاه و یک سری فایل های فیزیکی , الکترونیکی , یا حتی خدماتی میذاره داخل سایت برای فروش و الان میخواهیم این رو به صورت چند فروشندگی در بیاریم که بعد خرید هر 3 حالت که بالا گفته شد براش به نتفیکیشن و پیامک بفرستیم و مقدار خریدی که انجام شد بره مبلغش بره تو کیف پولش , اما این طرف قضیه اگه درخواست برداشت زد فروشنده داخل سیستم ار کیف پولش کم کنه و به ما پیام بده که فروشنده درخواست پول کرده و ما بررسی کنیم و بعد از تایید واریز کنیم به حساب واقعیش داخل بانک ( در ضمن ممکنه چند تا فروشنده یا همون x تا فروشنده داشته باشیم) .

    الان تا جایی که بالا عکسشو دادم رفتم جلو وسیستم به صورت انفرادی کار میکنه برای تک فروشنده و الان هم سایتش تو لوکال سیستمم هست میخوام تغییرش بدم به چند فروشندگی , یا به قول ما برنامه نویس ها توسعش بدم :)) امیدوارم منظورمو فهمیده باشید.

  • ٢ ماه پیش @amin به گفتگوی چند فروشندگی درلاراول جواب داد.

    @salarka

    آها تا اینجا حالی شدم این شد یه راهنمایی :) البته جسارت نباشه , بله با جدول پرداخت مشکلی ندارم , الان میخوام بدونم وقتی یک محصول از یک فروشنده فروش رفت چه طوری اون مبلغ رو به کیف پولش اضافه کنم و جداگانه داخل پنلی که بهش دادم نشون بدم یه مورد هم هست که این وسط امنیت هم داشته باشه که یکی نیاد این وسط کد هارو دستی تنطیم کنه اد کنه به کیف پولش (منظورم کدش نیست اون الگوریتمش هست)

  • ٢ ماه پیش @amin به گفتگوی چند فروشندگی درلاراول جواب داد.

    @salarka

    الان مشکل من دقیقاٌ همینه و نمیدونم اصن چی به چی هست منظور تحلیل و طراحی دیتابیسش هست واقعاٌ گیج شدم , و این موارد رو هیچ جا نمیشه پیدا کرد نه تو دانشگاه ها و نه کتب دانشگاهی نه ویدیو های آموزشی حالا چه فارسی چه انگلیسی (البته انگلیسی وجود داره خیلی گرونه 299 دلار به پول ایران چند ملیون پول میشه) خودم هم میشینم تحلیل کنم به بن بست میخورم الان مواردی رو هم که شما اشاره کردین بعضی هاشو میدونستم بعضی هاشو هم یاد گرفتم ولی مشکل اصلی اون تحلیله هستش تو دیتابیس

    و یه مورد هم داخل پرانتز بگم ( شاید این مورد رو اولین باره که کار میکنم و بلد نیستم این همه گیج شدم چون قبلاٌ هم کد زده بودم ولی این یکی خدایی سخته)

    یکی از مشکل هایی که ما توسعه دهنده ها داریم اینه که تحلیلمون ضعیف هست و این یک واقعیته البته تو بحث مهندسی نرم افزار اینو نمیگه اصن تحلیل آدم های خاص خودشو داره ولی بازم تو ایران باید همه چیرو بلد باشی به قولی به غیر اینه که Full Stack باشی باید از سرور و تنظیماتش نمیدونم سئو و غیره... سر در بیاری . الان اگر میشه یک راهنمایی و یه کمکی که چه باید کنم .

    @amir @shahryarjb @salarka

  • ٢ ماه پیش @amin یک گفتگو به اسم چند فروشندگی درلاراول درست کرد.

    چند وقتی هست روی یک پروژه تمرکز کردم والان به قسمت سخت اون رسیدم یعنی چند فروشندگی داخل یک فروشگاه اینترنتی, قضیه به این صورت هست که عین فروشگاه های بزرگ مثل آمازون و علی بابا و غیره ... ما می خواهیم که سیستمی رو پیاده سازی کنیم که کسانی رو به سیستم به عنوان فروشنده معرفی کنیم که بعد از تایید ما بتونه محصولات خودش رو داخل سایت اضافه کنه و بفروشه الان ۲ تا چالش پیش میاد اول این که چطوری وقتی محصولی از یک فروشنده فروخته شد چه طوری به کیف پولش داخل سایت مبلغ رو اضافه کنیم دوم این که اگر درخواست برداشت از کیف پول داشت به صورت اتوماتیک سیستم برداشت بزنه و اگر موجودی با مبلغ درست بود برداشت بزنه و از کیف پولش کم کنه , این طرف قضیه هم به ما پیام میاد که فروشنده X درخواست برداشت داده میام و بررسی میکنم تایید که کردیم بهش یه اس ام اس یا نوتفیکیشن بفرستیم.

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

  • ٢ ماه پیش @amin به گفتگوی مدیریت دیتابیس های بزرگ جواب داد.

    @shahryarjb

    شهریار ممنون از راهنماییت یه چیزی میگم شاید خنده ات بگیره ولی تازه به حرفت رسیدم و فهمیدم چی میگی:)))

  • ٣ ماه پیش نویسنده @amin یک مقاله تازه به اسم گیت هاب دسترسی کاربران ایرانی را مسدود کرد نوشت.

    گیت‌‌هاب براساس آنچه تبعیت از قوانین تجاری ایالات متحده عنوان می‌کند، در حال مسدودسازی دسترسی کاربران ایرانی است. گیت هاب

    براساس گزارش‌‌های اخیر، گیت‌هاب طی ۲۴ ساعت گذشته با ارسال ایمیلی به کاربران ایرانی، از مسدودشدن دسترسی آن‌ها به سرویس خود با هدف تبعیت از تحریم‌های اِعمال‌شده از سوی ایالات متحده علیه کشورمان خبر می‌دهد. متن ایمیل ارسالی به کاربران ایرانی گیت‌هاب بدین شرح است:

    به‌موجب محدودیت‌های مربوط به قوانین تجارت [خارجی] ایالات متحده‌ی آمریکا، حساب کاربری شما در گیت‌هاب مسدود شده است. کاربران حساب‌های عادی (غیرسازمانی) تنها برای ارتباطات شخصی خود به سرویس‌های مخازن عمومی گیت‌هاب دسترسی محدودی خواهند داشت.

    گیت‌هاب سرویسی است که به توسعه‌دهندگان امکان ذخیره‌سازی کدهایشان برای پروژه‌های مشارکتی متن باز و شخصی را می‌دهد. کاربران گیت‌هاب می‌توانند تغییرات کدها را ردگیری کرده یا باگ‌ها را گزارش کنند. ناگفته‌ نماند که چندی پیش گیت‌هاب به تصاحب مایکروسافت درآمد.

    متن پیام

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

  • @behzad

    این کار به راحتی میشه انجام بدی کافیه موقع تعریف فیلد یوسر نیم در دیتابیس اون رو UNIQUE قرار بدی

    تو بخش ویرایشش هم میتونی اگر بخوایی سیستم رو خوشکل کنی با jquery ولیدیشن کن که اگر خواست عوض کنه و کاربری هم قبلاٌ تو سیستم بود به کار بر سریع پیام بده که این نام کاربری وجود دارد اگر هم که نه با تابع save یا update به راحتی ویرایش رو انجام بده به همین راحتی , و اگر هم ساده میخوایی با همون if که نوشتی میتونی پیام رو بهش نشون بدی.

  • ٣ ماه پیش @amin به گفتگوی ساخت رشته در لحظه اجرای برنامه جواب داد.

    @woohee

    در اندروید زیاد اطلاعی ندارم , ولی سمت سرورش رو میگم که به این شکل هست, میایی اون کلیدی که داری رو با چند تا کلمه یا کاراکتر راندوم یا از قبل تعین شده میکس میکنی و یه key جدید ساخته میشه واست بعد اون رو بلافاصله بعد ساخته شدن encrypt میکنی و حالا برای امنیت زیاد هم اگر خواستی میتونی بهش تایم بدی که بعد یه تایم مشخصی این از بین بره , بعد همون رو ارسال میکنی به برنامت و اونجا decrypt میکنی و ازش استفاده میکنی به همین راحتی .

    یه مورد هم اشاره کنم این کار ها اگر در سمت سرور اپلیکیشنت اجرا بشه دست هکر اصن بهش نمیرسه که بخواد کاری بکنه , اگر هم بدستش آورد چند تا کاراکتر نامفهم میبینه که با الگوریتم sha تولید شده و قابل استفاده نیست.

  • ۴ ماه پیش @amin به گفتگوی انتخاب زبان دوم برای برنامه نویسی جواب داد.

    @shahryarjb

    با نظرت موافقم .

    دقت کرده باشید خیلی ها حتی خود امیر تو پادکست ها چند بار گفته مهم نیست با چه زبانی یا چه فریم ورکی کار میکنی مهم اینه که بتونی با اون پول در بیاری بعد هم بخاطر علاقه هم شده بری دنبال یادگیری یه زبان دوم . مثله اول اینه که اون پوله رو دربیاری!!

  • ۴ ماه پیش @amin به گفتگوی انتخاب زبان دوم برای برنامه نویسی جواب داد.

    @amir @behzad

    الان یکم درست شده سایت نسبت به قبل!

  • ۴ ماه پیش @amin به گفتگوی کار با گیت در ایران جواب داد.

    @mahdi_mahdi

    برای استفاده از گیت لب و بسیاری از اقلام دیگه که تحریم شدیم میتونید dns عوض کنید به شکل زیر:

    راه حل برای انواع پلتفرم ها:

    • ویندوز:

      • روی منوی Start کلیک کنید و سپس روی کنترل پنل (Control Panel) کلیک کنید.

      • روی گزینه Network and Internet کلیک کنید.

      • روی گزینه Change Adapter Settings کلیک کنید.

      • روی شبکه وای‌فای یا شبکه LAN که به آن متصل هستید راست کلیک کنید و سپس Properties را انتخاب کنید.

      • گزینه Internet Protocol Version 4 را انتخاب کنید.

      • دکمه Properties را بزنید.

      • اگر نشانی DNS وجود دارد آن را جایی یادداشت کنید و برای مراجعات بعدی نگه دارید. سپس آنها را پاک کنید. نشانی 178.22.122.100 و 185.51.200.2 را در بخش‌های مربوط به DNS وارد کنید.

        alt برای عکس

      • دکمه OK رو بزنید و پنجره رو ببندید.

      • مرورگر خودتون رو ری‌استارت کنید.

    • مک:

      • System Preferences را باز کنید.
      • DNS Servers را جستجو کنید و آن را از منوی Dropdown انتخاب کنید.
      • روی دکمه + کلیک کنید و یک سرور DNS جدید با نشانی 178.22.122.100 و 185.51.200.2 ایجاد کنید. alt برای عکس
      • روی Ok کلیک کنید و سپس Apply نمایید.
    • لینوکس :

      • به صورت عمومی در لینوکس می‌توانید با ویرایش /etc/resolv.conf آی‌پی‌های شکن را به عنوان سرورهای DNS تنظیم کنید. دقت کنید که در صورت وجود NetworkManager این تنظیمات ممکن است بازنویسی شوند.

      • در ادامه، تنظیمات مربوط به پراستفاده‌ترین توزیع لینوکس (اوبونتو) ارائه می‌شه:

      • روی آیکن اپلیکیشن در منوبار سمت چپ کلیک کنید.

      • روی Settings کلیک کرده و سپس Network را انتخاب کنید.

      • کانکشن اینترنت خود را از فضای سمت راست انتخاب کنید و سپس روی آیکن چرخ‌دنده کلیک کنید.

      • روی برگهIPv4 کلیک کنید تا تنظیمات دی ان اس خودتان را ببینید.

      • دی ان اس را از حالت Automatic به Off تغییر دهید.

      • نشانی 178.22.122.100 و 185.51.200.2 را در بخش DNS وارد کنید. alt برای عکس

      • دکمه Apply را فشار دهید و یک بار کانکشن را قطع و وصل کنید.

      • حال مرورگر خود را ری‌استارت کنید.

    در آخر با این کار تقریباٌ به تمام سایت هایی که ایرانی هارو تحریم کرده میتونید به دون هیچ کار اضافه ای وصل بشید و استفاده کنید. و یه مورد دیگه این حرکت رو یکی از استارتاپ ها تو ایران رواج داده و خیلی هم جواب میده و یه مورد دیگه اگر واسه پلتفرم های دیگه میخوان بگید بذارم xbox ps4 ios.

  • ۵ ماه پیش @amin به گفتگوی ایجاد بخش فعالیت کاربری جواب داد.

    @behzad

    اگر از لاراول استفاده میکنی به راحتی میتونی مدل User رو بگیری و به راحتی بگی id رو میخوام . و اگر نیاز به رابطه داری رابطه هاشونو هم اوکی کن و بعد همشو داخل کنترلر جدول جدیدت فراخوانی کن و استفاده کن.

  • ۵ ماه پیش @amin به گفتگوی آپلود ایجکس فایل پس از انتخاب جواب داد.

    @rubik

    شما ۲ تا راه داری هم از jQuery و هم Vue.js میتونی استفاده کنی هر دو تا راهشو اینجا میگم ,

    • اول این که میتونی از ایجکس استفاده کنی که کتابخانه dropzone.js برای این کار فوق العادس همون کاری که شما میخواین انجام میده یه چیز باحالی هم که داره فایل رو میتونی بکشی و رها کنی خودش آپلود میشه و به سرور ارسال میکنه

    • دوم میتونی از vue.js هم استفاده کنی و برای ارسال هم از Axios میتونی استفاده کنی ( البته این روش باید ویو رو خوب بلد باشی )

    در هر حال از دو روش زیر میتونید استفاده کنید.

  • ۵ ماه پیش @amin به گفتگوی چگونگی ایجاد لایو فیلترینگ جواب داد.

    @MAHDI_MAHDI

    کلیات کارت درسته نگاه کن الان اون سویچ که اینجا زدی به نظرم بی معنی هست شما میتونی از دیتابیس مستقیم جواب بگیری لازم به این همه بررسی نیست,

    اون شیوه ای که گفتی چه یه فیلد درست باشه چه همش یعنی 6 تا بازم هم تو کارت مشکل ایجاد نمیکنه و با یه شرط ساده میتونی مدیریتش کنی.

    یه مثال ساده : تو یه فروشگاه اینترنتی مثلاٌ میخوایی واسه قسمت لباس همچین شیوه ای رو پیاده سازی کنی مثلاٌ فیلد رنگ داری میخوایی با توجه به رنگ لباس فیلتر رو اعمال کنی . برای این کار میایی اول از طریق ui از کار بر میگیری مثلا انتخاب کرد قرمز یه کوئری میفرستی به دیتابیس که آیا تو جدول محصولات و دسته بندی لباس و تو ستون رنگ آیا قرمز هست یا نه , اگر هست نتیجه رو با هرکدوم از فیلد های دلخواهی که میخوایی نشون بدی بده مثلاٌ عکس, سایز,جنس , اما اگر نیست یه پیغام نشون بده .

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

    درضمن این شیوه ای که گفتم از اصول mvc هم پشتیبانی میکنه و برای آینده کارتون و توسعه نرم افزار خیلی به درد میخوره, در آخر هم اگر موضوع براتون گنگ بود بگید کد های همون فروشگاه قسمت لباس رو که تو پروژه های خودم استفاده کردم براتون همینجا با جزییات بذارم تا بتونید استفاده کنید.

  • ۶ ماه پیش @amin به گفتگوی آپدیت آنلاین پروژه های لاراول جواب داد.

    @amir

    این بسیار راه خوبی برای آپدیت هست به نظر خودم تاحالا نرسیده بود.

    یک branch دیگه بساز مثلا به اسم staging. بعد با dns تنظیم کن که هر وقت push کردی به github بره به این domain.

    الان یه مشکل بسیار مهم دیگه ,اینه که از اون جایی که کد های ما پولی هست , و برای هر آپدیت یا کلاٌ سورس اصلی باید پول پرداخت کنی تا دریافت کنی آیا تکنیکی هست که بزنی رو پروژه که که هم از کد هات در برابر کپی جلوگیری کنی و هم اگر سورس رو هم کپی کرد نتونه استفاده کنه و باید ( یه چیزی مثل لایسنس بزنه روش ) ممنون میشم در این مورد هم کمکم کنید.

    @shahryarjb @m0h314-hasani @tilkacoder

  • ۶ ماه پیش @amin یک گفتگو به اسم آپدیت آنلاین پروژه های لاراول درست کرد.

    در مورد ورژن بندی اپلیکیشن(لاراول) چند تا موضوع پیش میاد اول این که شماره گذاری خاصی داره یا نه .

    موضوع بعدی رو با یک مثال توضیح بدم :

    اپلیکیشن رو نوشتیم و ورژن مثلاٌ 1.1 رو به مشتریامون دادیم و چند ماهی ازش استفاده کردند و حالا ما یک ورژن جدید از اون رو با امکانات اضافی تر در قالب ورژن1.2 عرضه کردیم الان اساسی ترین مشکلی که پیش میاد اینه که چطوری آپدیت رو بزنیم روش یعنی همین الان دستی این کار رو میکنیم . و خیلی خیلی وقتمون رو میگیره و مشکلات خاص خودشو داره .

    الان راه حل به روز برای این مشکل چیه آیا باید از داکر یا گیت یا کامپوزر استفاده کرد یا یک سری مخازن دیگه که هم مشتری کارش راحت باشه هم ما یا نه کلاٌ داستانش فرق میکنه!؟

  • ۷ ماه پیش @amin به گفتگوی اضافه نشدن foreign key جواب داد.

    @m-p

    بحث زیاد بودن کلید نیست . زمانی این ارور نشون داده میشه که نوع اون ستون هایی که میخواهید join بدید با هم فرق میکنه و نمیتون با هم مچ بشن یک مثال کوچیک

     $table->bigIncrements('id');
    
     $table->increments('id');

    (حالا یک مثال کوچیک بود و تو همه موارد این یکیه.) این 2 تا با هم خیلی فرق دارن و مچ نمیشن باید نوعشون با هم برابر باشه از هر لحاظ.

    حالا راه حال چیه 3 تا راه حل دارید شما:

    • راه اول اینه که نوع ستون های کلید هاتونو باهم برابر کنید .
    • راه دوم اینه که جدول هاتونو با مایگریشن بفرستید به دیتابیس و اونجا به صورت دستی کلید هارو انجام بدید.( همیشه کار میکنه)
    • راه سوم اینه که همه این هارو باهم تو یک جدول بنویسید و داخل همون باهم جویین بدید و بعد مایگریت کنید. دقت کنید که اینجا هم مقدار ها باید برابر باشند. ( یعنی همه جدول های زیر و ستون هاشو تو یه جدول مایگرت کنید) که این موضوع یه راه حل آماتور هستش که غالباٌ جواب میده.(پیشنهاد میشه)
  • ۷ ماه پیش @amin به گفتگوی مشکل object not found در laravel voyager admin panel جواب داد.

    @amin1972

    ویجرتون پولی هست یا رایگان؟ (اینو به خاطر این میپرسم که تو رایگان بعضی از دسترسی هارو نمیده)

    قطعاٌ مشکل از مسیریابی و روتینگ شما هست. اگر به فایل web.php دسترسی دارید به راحتی میتونید روتتون رو درست کنید و مشکلتون حل بشه .

  • ۷ ماه پیش @amin به گفتگوی فریمورک yii2 جواب داد.

    @amir_hossein

    درکتون میکنم خودم هم این مشکل رو داشتم حتیٌ امیر هم تو پاد کست ها به این مثله اشاره کرده, ولی اگه بتونید مدیرتون رو راضی و با دلیل قانعش کنید که به لاراول مهاجرت کنن خیلی هم برای شما خوب میشه هم برای شرکت.

  • ۷ ماه پیش @amin به گفتگوی فریمورک yii2 جواب داد.

    @amir_hossein

    یه چیز سلیقه ای هست که با کدومFramework کار کنی و با کدوم بیشتر راحتی با همون کد بزن, yii2 هم از دوستانی که هستند پرس و جو کردم میگن که سرعت میده به کارت ولی در عوض لاراول هم خیلی قدرتمند تره و پکیج هاش هست که اونو تاپ کرده اینو از گوگل ترند هم میتونی نگاه کنی رتبه لاراول و yii2 اینجا

    یه مورد جالب اینه که ما ایرانی ها رتبه یک از نظر توسعه و پیشرفت تو برنامه نویسی داریم که رتبه لاراول رو تو الکسا نگاه کنید رتبه ی اول هستیم رتبه اول بیشترین سرچ لاراول ,مورد های دیگه رو هم میتونید سرچ کنید.

    یه چیز دیگه هم اینجا بگم چون ما اینجا بیشتر تو انجمن از لاراول بحث میشه و طبق این دلایلی که بالا گفتم و بیشتر از لاراول حمایت میکنیم. و قطعاٌ هرکی باشه با این شرایط میاد سمت لاراول که اگه تو laravel-news عضو باشی میبینی که روز به روز در حال توسعه هست و انجمن بسیار قوی داره تو laracasts ولی دیگر فریم ورک های php اینطوری نیست مثلcodeigniter,yii و ...

    حالا انتخاب با خودتون هست که میخواهید وقتتون رو کدوم بذارید. در ضمن اینارو گفتم که یک مقایسه کنید و بعد برید دنبال آموزش yii2

  • ۷ ماه پیش @amin به گفتگوی پیدا کردن حفره امنیتی جواب داد.

    @woohee

    تقریباٌ این چیز هایی که گفتید هستند با کمی فرق و باید باید باید این هارو به ترتیب بگذرونی که دلایلش رو بالا گفتم چند تا مثال هم زدم.

  • ۷ ماه پیش @amin به گفتگوی ارور ۵۰۳ جواب داد.

    @netwons

    با این اطلاعات کمی که از مشکلتون دادید فقط تنها مشکلی که میتونید داشته باشید و چون هم رو هاست هست , سرویس هاستتون رو ارتقا بدید سرویس فعلی جوابگوی request های شما نیست.

    چون ارور های 500 به بالا مربوط به سرور میشه اکثراٌ , با پشتیبانی هاستتون تماس بگیرید و مشکلتون رو مطرح کنید.

  • ۷ ماه پیش @amin به گفتگوی مشکل اپلود لاراول 5.8 روی هاست اشتراکی جواب داد.

    @psobhanlo

    منم چند روز پیش با خطای 500 رو برو شدم و Composer رو آپدیت کردم درست شد . بعد آپدیت هم ,dump کردم و مشکلم حل شد دستوراتش هم اینه

    @amir یا این یکی رو:

    composer update
    
    composer dump-autoload
    

    اول آپدیت کردم و بعد dump.

  • ۷ ماه پیش @amin به گفتگوی پیدا کردن حفره امنیتی جواب داد.

    @woohee

    همه این هایی که دوستمون @tilkacoder عرض کردند درسته و به صورت طبقه بندی هست , ولی قبل از همه اینها باید یکی از توزیع های لینوکس رو بلد باشی و یک مورد دیگه هم که هست اگر مسلط به اپلیکیشن نویسی و طراحیش باشید کارتون خیلی راحت میشه و ساختار هارو درک میکنید و موارد بالا هم که @tilkacoder مراحلی هست که باید بگذرونید که به این مباحث باید مسلط باشید

    یک مثال کوچیک اینجا میرنم :

    • اگر شما ساختار دیتابیس هارو ندونید یادگیری Injection DB واستون مشکل خواهد بود

    • اگر ساختار شبکه رو بلد نباشید اگر جمع آوری اطلاعات هم کرده باشید باز هم به مشکل بر میخورید که این اطلاعاتی مثل پورت ها یا سرور ها به چه کاری میان و یا چی هستند

    • اگر درک درست از برنامه نویسی نداشته باشید اصن درک اکسپلویت خیلی سخت میشه واستون

    همون طور هم که @tilkacoder گفتن یادگیری اینا زمان بر هست و باید تجربه زیادی داشته باشید در این موضوع و همه اینا داخل یک سوال و بحث جا نمیشه چون مبحث خیلی خیلی گشترده ای هست.

  • ۷ ماه پیش @amin به گفتگوی فریمورک جنگو جواب داد.

    @woohee

    اون لینک هایی که دادید نگاه کردم موضوع Django Admin به این صورت هستش که اومدن با جنگو CMS ساختند که در بالا هم @farahmand اشاره کردند به این موضوع و در مورد جنگو و سیستم مدیریت محتوا توضیحات دادند.

    جنگو ادمین هم ،همون نوا با ویجر تو لاراول هستش که تو این موضوع در انجمن راجبش بحث شده میتونید اطلاعات بیشتری در موردش بگیرید .

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

  • @tesla

    در مورد این موضوع چون تست نکردم نمیتونم زیاد نظر بدم اما میتونه دلایلی مثل این داشته باشه که چون کد php به صورت ساده هست و از هیچ معماری استفاده نمیکنه سرعت پردازش و لودش زیاد باشه و در لاراول این طوری نیست چون هم بحث روتینگ و مسیریابی و هم چون از معماریMVC استفاده میکنه شاید این کارها سرعت رو کم کنه تنها دلیلی که به نظرم میرسه همین بحث سرعت پردازش هست.(بر اساس گفته شما که میگید سریع ریدایرکت میشه) ولی بازم میتونید از دیگر دوستان هم یک مشورتی بگیرید.

  • @tesla

    کد های شما تقریباٌ درسته و یه مشکل کوچیکی که داره داخل کنترلرتون شما داخل هدرتون مدل 'Article' رو اضافه کردید و لازم نیست که تو تابع Create دوباره بیارید و کنار Request بنویسید.

    تابع Create شما :

    public function create(ArticleRequest $request)
        {
    
            Article::create([
                'user_id' => 1,
                'title' => $request->input('title'),
                'body' => $request->input('body')
            ]);
    
            return redirect('/');
        }

    راه اول : در کد های شما چون بحث Auth مطرح نیست و فقط میخواهید ثبت مقاله کنید با یک if و یک DB Query میتونید از این کار جلوگیری کنید. که مکانیزم کد اینطوری هستش میاد بررسی میکنه اگر مقاله ای با اون نام داخل دیتابیس باشه یک پیغام خطا بده و از ادامه کار صرف نظر کنه

    راه دوم: میتونید به وسیله jquery بیاید و همون اول اعتبار سنجیش کنید که اگر داخل دیتابیس موجود بود دیگه تو همون فیلد اول بمونه و اجازه نده کاربر فیلد های دیگر رو پرکنه ( که این اصولاٌ راه درستش هست )

    چون شما فقط میخواهید رو باتون هر چند بار کلیک کنه یکبار ثبت بشه راه اول بهترین راه هست که به صورت زیر میتونید به تابع Create خودتون اضافه کنید:

    if ($request->isMethod('post')){
        $data = $request->all();
        //شرط بررسی مقاله موجود که اگر بود یک پیام خطا میده برای کاربر
        $articleCount = Article::where('title',$data['title'])->count();
        if ($articleCount>0){
            return redirect()->back()->with('flash_message_error','این مقاله قبلاٌ ثبت شده است');
        }else{
            $article = new Article;
            $article->title =$data['title'];
            $article->body = $data['body'];
            $article->save();
    
                return redirect('/');
    
        }
    }

    چند تا نکته :

    • اول: این که مقایسه کردن با عنوان مقاله زیاد جالب نمیشه پیشنهاد میکنم اسم مقاله هم بذارید تو دیتا بیس و با اون مقایسه کنید
    • دوم: این که اگر از Bootstrap استفاده کرده باشید که با توجه به کدهای شما میبینم که استفاده کردید ارور رو نمایش میده .
    • سوم: این که راه دوم که بالا گفتم بسیار کاربردی تره ولی به هر حال یک پیشنهاد بود
    • چهارم: این که برای این که مورد دوم عملی بشه داخل کد های html فرمتون در یک جای مناسب کد های زیر رو قرار بدید که ارور رو نمایش بده:
    @if (Session::has('flash_message_error') )
                        <div class="alert alert-danger alert-block">
                            <button type="button" class="close" data-dismiss="alert">×</button>
                            <strong>{!! session('flash_message_error') !!}</strong>
                        </div>
                    @endif
                    @if (Session::has('flash_message_success') )
                        <div class="alert alert-success alert-block">
                            <button type="button" class="close" data-dismiss="alert">×</button>
                            <strong>{!! session('flash_message_success') !!}</strong>
                        </div>
    
                    @endif

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

  • @kamran_tofig

    بهترین پکیج برای شمسی و جلالی پکیج hekmatinasser/verta که با مراجعه به مخزن گیت هاب نویسنده به راحتی میتونید راه اندازی کنید که به صورت فارسی تو گیت هاب توضیح داده لینک مخزن نویسنده: مخزن نویسنده

  • ۸ ماه پیش @amin به گفتگوی در نظر گرفتن چند نقش برای یک کاربر جواب داد.

    @amin1972

    در خود آموزش های پارس کلیک به این قضیه اشاره شده که بسیار هم کار آسونی هستش که اصطلاحاٌ به این کار ACL میگن که با یه سرچ تو اینترنت بسیار مطالب مفیدی میتونید بگیرید. که لاراول هم پکیج های خوبی داره برای این کار و با کامپوزر به راحتی نصب میشه .

    اگر خواستین میتونید این ویدیو از سری ویدیو های لاراول سایت مشاهده کنید :این ویدیو

  • ۸ ماه پیش @amin به گفتگوی استفاده از php نه به عنوان سمت سرور جواب داد.

    @behzad

    چرا احمقانه؟

    با نظر @farahmand موافقم تازه یه همچین متد هایی نداره که شما بالا گفتین. سوالت یکم جالب نیست پی اچ پی در واقع میاد مدریریت اون چیز هایی که @farahmand گفتند رو انجام میده. مثالت مثل این میمونه که میگی میخوام یه ساختمون بسازم و اون رو با لوله کشی آب گاز و پارتیشن بندی و انواع اقسام اجزای داخلی بسازم با اینا نمیشه ساختمون ساخت باید اول ستون های ساختمون رو بسازی , ( منظور این که php همون لوله ها و پارتیشن ها و خیلی چیز های دیگه هست که اصن خنده دار میاد واست که با اینا بخوایی یه سازه یا ساختمون بسازی یعنی اصن نمیشه همچین چیزی, یعنی اینا قابلیت ساخت ستون و پایه های ساختمون رو نداره)

  • ۹ ماه پیش @amin به گفتگوی آپلود چند تصویر با Dropzone.js در Laravel جواب داد.

    @nastaran2018

    لطفاٌ کنترلرتون رو داخل تابع upload بنویسید و فرمت زیر رو رعایت کنید. با store هم میشه چون هر دوتاش post هستند ولی استاندارد رو رعایت کنید. کد بهینه شده شما:

     public function upload(Request $request)
        {
            $id=$request->get('id');
            $files=$request->file('file');
            $name=rand()."-".$id."-".$files->getClientOriginalName();
            if($files->move('uploads/gallery',$name)){
                $ProductImage=new ProductImage();
                $ProductImage->product_id=$id;
                $ProductImage->url=$name;
                $ProductImage->save();
            }
        }

    البته نمونه کدی که دادم به شما برای عکس های محصولات فروشگاه اینترنتی هستش لطفاٌ این فرمت رو رعایت کنید.و نسبت به پروژه خودتون تغییر بدید.