مهمان گرامی، خوش‌آمدید!
شما قبل از این که بتوانید در این انجمن مطلبی ارسال کنید باید ثبت نام کنید.

نام کاربری
  

گذرواژه‌
  





جستجوی انجمن‌ها

(جستجوی پیشرفته)

آمار انجمن
» اعضا: 71
» آخرین عضو: amlq3457
» موضوعات انجمن: 52
» ارسال‌های انجمن: 171

آمار کامل

کاربران آنلاین
در حال حاضر 4 کاربر آنلاین وجود دارد.
» 0 عضو | 4 مهمان

آخرین موضوع‌ها
برنامه نویس خائن !
انجمن: بحث آزاد
آخرین ارسال توسط: persianuser
2018/05/13، 02:03 PM
» پاسخ: 7
» بازدید: 2,224
مشکل استفاده از Stored pr...
انجمن: مباحث عمومی
آخرین ارسال توسط: admin
2018/05/04، 05:18 PM
» پاسخ: 1
» بازدید: 141
ده ترفند CSS بسیار مفید ک...
انجمن: HTML/CSS
آخرین ارسال توسط: kelid
2018/03/21، 06:04 AM
» پاسخ: 2
» بازدید: 5,076
شئ گرایی در php
انجمن: مباحث عمومی
آخرین ارسال توسط: farzanmuh
2018/01/25، 08:54 PM
» پاسخ: 0
» بازدید: 313
در یافت رشته عددی
انجمن: جاوا اسکریپت
آخرین ارسال توسط: admin
2018/01/18، 12:27 PM
» پاسخ: 1
» بازدید: 491
بهترین تمپلت انجین برای ک...
انجمن: مباحث عمومی
آخرین ارسال توسط: admin
2018/01/18، 12:26 PM
» پاسخ: 3
» بازدید: 1,289
مقایسه ASP.NET MVC با PHP...
انجمن: MVC
آخرین ارسال توسط: webone
2017/12/10، 12:01 PM
» پاسخ: 0
» بازدید: 440
اسامی رزرو شده
انجمن: کدنویسی
آخرین ارسال توسط: takbit
2017/11/30، 04:49 PM
» پاسخ: 0
» بازدید: 331
کاربرد خط اول در کدایگنای...
انجمن: مباحث عمومی
آخرین ارسال توسط: admin
2017/11/30، 09:51 AM
» پاسخ: 1
» بازدید: 581
سرور مورد نیاز Codeignite...
انجمن: نصب و راه اندازی
آخرین ارسال توسط: takbit
2017/11/29، 11:43 PM
» پاسخ: 0
» بازدید: 370

 
  مشکل استفاده از Stored procedure و buffer
ارسال کننده: h_qorbani - 2018/04/07، 11:55 AM - انجمن: مباحث عمومی - پاسخ (1)

سلام
وقتی از Stored Procedure  استفاده میکنم بدرستی کار میکنه، اما برای کوئری بعدی که قرار هست بعد از stored procedure اجرا بشه با مشکل مواجه میشم و پیام زیر رو نمایش میده:

Cannot execute queries while other unbuffered queries are active. Consider using PDOStatement::fetchAll(). Alternatively, if your code is only ever going to run against mysql, you may enable query buffering by setting the PDO::MYSQL_ATTR_USE_BUFFERED_QUERY attribute.

دوستان کسی این مساله رو میتونه رفع کنه؟

چاپ این مطلب

  شئ گرایی در php
ارسال کننده: farzanmuh - 2018/01/25، 08:54 PM - انجمن: مباحث عمومی - بدون پاسخ

شئ گرایی در پی اچ پی
واژه لاتین برنامه‌نویسی شی‌گرا OOP (بخوانید او او پی) و سرنام عبارت Object Oriented Programming است. در این سبک از برنامه‌نویسی کل پروژه به قسمت‌های مستقل کوچک‌تری تقسیم می‌شود. با این کار وظیفه هر بخش مشخص می‌شود و از طرفی شفافیت و خطایابی در کدهای برنامه ساده‌تر می‌شود. در برنامه‌نویسی روالی (ساخت یافته) هر یک از این بخش‌های جزئی را یک تابع تشکیل می‌داد اما در برنامه‌نویسی شی‌گرا کلاس‌ها این اجزاء را تشکیل می‌دهند. برای کد زنی به شیوه شی‌گرا باید مفاهیم زیر را بدانیم که در ادامه به صورت ساده و خلاصه برای شما بازگو می‌کنیم:

  • کلاس (Class)

  • شی (Object)

  • نمونه‌سازی (Instance)

  • متد (Method)

  • خصوصیت (Property)

  • ارث‌بری (Inheritance)

  • بسته‌بندی (Encapsulation)

  • چند شکلی (Polymorphism)

  • نوع عمومی (Public)

  • نوع محافظت شده (Protected)

  • نوع خصوصی (Private)
کلاس Class
کلاس‌ها الگوهایی هستند که اشیاء (Objects) از روی آن‌ها ساخته می‌شوند. تمامی اشیایی که در پروژه هم‌نوع هستند از یک کلاس (Class) مشخص سرچشمه گرفته‌اند. یک کلاس شبیه "نقشه" برای یک خانه است.
شیء Object
به یک نمونه بر گرفته از یک کلاس مشخص شیء (Object) گفته می‌شود. یک شیء شبیه یک "خانه ساخته شده" از روی نقشه است.
نمونه Instance
هنگامی که کار کد‌نویسی مربوط به یک کلاس انجام شد، برای بهره‌مندی باید از روی آن کلاس یک شیء بسازیم. به شیء ساخته شده از روی یک کلاس، نمونه (Instance) می‌گوییم. خانه ساخته شده یک "نمونه" برگرفته از نقشه است. تعداد نامحدودی خانه از روی آن نقشه ممکن است ساخته شود.
متد Method
هر کلاس ممکن است توابعی داشته باشد. به این توابع متد (Method) گفته می‌شود. این متدها هستند که رفتارها و قابلیت‌های یک شیء را تعیین می‌کنند. فرضاً سیستم سرمایش خانه را می‌توان یکی از متدهای کلاس خانه در نظر گرفت. اگر استفاده از کولرهای گازی در کلاس تعریف شده باشد پس تمام خانه‌هایی که از روی این کلاس ساخته می‌شوند دارای کولر گازی خواهند بود.
خصوصیت Property
کلاس‌ها  حاوی متغیرهایی نیز هستند. به این متغیرها خصوصیت (Property) می‌گوییم. رنگ خانه یکی از خصوصیات کلاس خانه است که در یک متغیر نگهداری می‌شود.
ارث‌بری Inheritance
یکی از مکانیزم‌هایی که در شی‌گرایی وجود دارد این است که یک کلاس از یک کلاس دیگر متولد شود. به این معنی که کلاس متولد شده علاوه بر ارث‌بری (Inheritance) از کلیه متدها و خصوصیات کلاس پدر، خود می‌تواند شامل متدها و خصوصیات جدیدی نیز باشد. فرض کنید که در حیاط خانه یک استخر آب اضافه شود. این خانه علاوه‌بر کلیه امکانات خانه اول دارای یک قسمت جدید (یا خصوصیت جدید و یا متد جدید) شده است.
بسته‌بندی Encapsulation
قرار دادن کلیه خصوصیات و متدهای یک کلاس در یک بسته‌بندی مشخص (در حافظه RAM) را بسته‌بندی (نهان‌سازی) (Encapsulation) می‌نامند. این کار باعث افزایش امنیت نیز می‌شود به طوری که دسترسی به خصوصیات و متدهای یک شیء، چنانچه از نوع داخلی تعریف شده باشد، توسط سایر اشیاء میسر نخواهد بود. در مثال خانه، حریم داخلی از حریم خارجی جدا است.
چند ریختی Polymorphism
عملکرد متفاوت کلاس‌ها به هنگام به اشتراک‌گذاری  یک رابط عمومی (Common Interface) را چند ریختی گویند.3 زمانی که بخواهید کلاسی تهیه کنید تا سایر کلاس‌های برنامه از آن استفاده کنند بدون اینکه از عملکرد داخلی آن اطلاع داشته باشند چند ریختی (Polymorphism) کاربرد دارد. فرض کنید که شما یک مهندس عمران هستید. برای ساختن هر بنایی اعم از مسکونی یا تجاری به عملیاتی نیاز دارید که برای همه آن‌ها مشترک است. مانند گودبرداری. در نتیجه شما می‌توانید کلاسی تهیه کنید که شیء ساخته شده از روی آن برای شما عملیات حفاری را انجام دهد. سپس به سراغ کلاس ساختمان بروید. کلاسی که متد حفاری دارد به ازای زمین‌های با اندازه متفاوت عملکرد متفاوتی دارد اما این کار برای هر سازه‌ای که شما بخواهید بسازید لازم است. در غیر اینصورت باید متد مربوط به حفاری به طور جداگانه در کلاس‌های مختلف شما نوشته شود (خانه، مغازه، پاساژ، برج و غیره).
نوع عمومی Public
خصوصیات و یا متدهایی از کلاس که از نوع عمومی (Public) تعریف شوند از هر جایی قابل دسترس خواهند بود. مانند پارگینگ یک مجتمع آپارتمانی که همه واحدها به آن دسترسی دارند.
نوع خصوصی Private
این نوع از متدها یا خصوصیات فقط مختص به کلاس خود هستند و دسترسی به آن‌ها از جای دیگر مقدور نیست. مانند اتاق‌های خانه که راهی از اتاق‌های خانه‌های دیگر به آن‌ها وجود ندارد.
نوع محافظت شده Protected
در نوع محافظت شده متدها و خصوصیات کلاس فقط از طریق خود کلاس، والد کلاس و فرزندان کلاس قابل دسترسی هستند. مانند یک خانه دوبلکس که بین طبقات آن ارتباط وجود دارد اما از خانه‌های دیگر ارتباطی وجود ندارد.
تعریف یک کلاس در PHP
برای تعریف یک کلاس از کلمه رزرو شده class به همراه نام انتخابی برای آن کلاس استفاده می‌کنیم. مانند کد زیر:
کد:
<?php
class person{
}
?>

با این کار به سادگی یک کلاس تهی با نام person ایجاد شده است. در ادامه برای این کلاس خصوصیات و متدهایی تعریف می‌کنیم:
کد:
<?php
class person{
   public $name;
   function __construct($inputName){
       $this->name=$inputName;
   }
   public function showName(){
       echo $this->name;
   }
} // End class
$morteza=new person('Morteza');
$morteza->showName();
?>
در کد بالا به کلاس person خصوصیتی به نام name اضافه شده است. پس اشیایی که از این روی این کلاس ساخته می‌شوند در دل خود چنین خصوصیتی خواهند داشت. همانطور که می‌بینید خصوصیت نام شخص از نوع public تعریف شده است پس سایر اشیاء نیز به مقدار این property دسترسی خواهند داشت.
نکته:  پس در PHP به متغیرهای خارج از کلاس، متغیر (Variable) و به متغیرهایی که در درون کلاس قرار دارند خصوصیت (Property) گفته می‌شود.
توابع سازنده Constructor
یکی از قابلیت‌های شی‌گرایی وجود توابع سازنده است. نام این متدها کلمه رزرو شده construct__ است. وظیفه آن‌ها اجرا شدن به محض نمونه‌گیری از کلاس، است. به این معنی که هرگاه از کلاس نمونه گرفته شود این تابع خود به خود و بدون فراخوانی توسط برنامه‌نویس، اجرا خواهد شد. توابع سازنده کاربردهای زیادی می‌توانند داشته باشند که یکی از رایج‌ترین آن‌ها تعیین مقدار اولیه برای خصوصیات (متغیرهای) کلاس است. به عمل مقدار دهی اولیه Initialize نیز گفته می‌شود. در کد بالا از تابع سازنده برای مقدار دهی به خصوصیت name با استفاده از مقدار ورودی (پارامتر) استفاده شده است.
متد کلاس showName
به کلاس فرضی ما یک متد به نام showName نیز اضافه شد. وظیفه این متد به سادگی نمایش خاصیت name است. نوع این متد نیز public است لذا سایر اشیاء خواهند توانست این متد را فراخوانی و اجرا کنند.
ساختن شیء از روی کلاس person
همانطور که می‌دانید متغیرها در PHP می‌توانند انواع مختلفی از داده‌ها را نگهداری کنند. برای نمونه اعداد صحیح، اعشاری، رشته‌ها (دنباله‌ای از کاراکترها)، آرایه‌ها و اشیاء. پس هنگامی که می‌خواهیم از روی یک کلاس یک شیء (Object) تهیه کنیم آن را در یک متغیر قرار می‌دهیم. برای ساختن شیء از کلمه رزرو شده new به همراه نام کلاس و پرانتز، استفاده می‌کنیم. در مثال بالا یک شیء به نام morteza ایجاد شده که رشته کاراکتری Morteza را نیز به تابع سازنده ارسال می‌کند. متعاقباً تابع سازنده این رشته را در درون خصوصیت name قرار می‌دهد تا سایر متدها در صورت نیاز بتوانند از این مقدار استفاده کنند.
دسترسی به متدها و خصوصیات اشیاء
هنگامی که شیء مورد نظر خود را از روی یک کلاس ساختیم برای دسترسی به خصوصیات و یا فراخوانی یکی از متدهای آن شیء، از نماد <- (خط تیره، علامت بزرگتر) استفاده می‌کنیم. برای راحتی اسم این نماد را "نقطه" بگذارید (A->B بخوانید A نقطه B). ابتدا نام شیء سپس نماد مربوطه و بعد نام متد یا خصوصیت مورد نظر خود را ذکر می‌کنیم. برای فراخوانی متدها پس از ذکر نام متد، باید از پرانتز استفاده شود. در صورت نیاز، آرگومان (Argument) نیز می‌توان به متدها ارسال کرد. برای خصوصیات پرانتز نباید تایپ شود. جهت دیدن تاثیر و حوزه دسترسی نوع‌های public private و protected به مثال‌های  این صفحه مراجعه کنید. در نمونه‌های زیر فرض بر نوع public می‌باشد:
کد:
$morteza->showName(); //فراخوانی متد بدون ارسال پارامتر
$circle->draw(50,50,25); //فراخوانی متد رسم از شیء دایره همراه با ارسال داده‌های مورد نیاز از طریق پارامتر
$student->accept_year; //خواندن سال قبولی دانشجو از شی دانشجو
$car->model;
$person->weight;
نکته: برای دسترسی به متد یا خصوصیت یک کلاس از درون خود آن کلاس باید از کلمه رزرو شده this$ استفاده کنیم. یعنی در هنگام نوشتن کد کلاس هرگاه به متدی یا مقدار یکی از خصوصیت‌های کلاس جاری نیاز شد به شکل زیر اقدام می‌کنیم. نکته اینکه فقط یک علامت $ در ابتدا ذکر می‌شود.
کد:
$this->name; //  خواندن مقدار یک خصوصیت
$this->method(); // فراخوانی یک متد خودی

نکته: برای دسترسی به متد یا خصوصیت یک کلاس از درون کلاس (و نه شیء) دیگر از دو کاراکتر کولِن (Colon) به دنبال هم :: استفاده می‌شود. مثال:
کد:
parent::__construct($name);

نحوه‌ی ارث‌بری یک کلاس
برای این کار از کلمه رزرو شده extends بعد از نام کلاس و سپس ذکر نام کلاس والد، استفاده می‌کنیم. در هنگام تعریف کلاس، تنها مجاز به یک بار ارث‌بری هستیم، یعنی نمی‌توان از چند واژه extends برای ارث‌بری همزمان از چند کلاس استفاده کرد و PHP این اجازه را نمی‌دهد(single inheritance languages).  در کد زیر یک کلاس دانشجو تعریف شده است. از آن‌جا که دانشجو نیز یک شخص است لذا برای بهره‌مندی از خصوصیات و متدهای کلی از کلاس person ارث‌بری شده است. فرضاً اگر کلاسی برای ورزشکاران نیز بخواهیم بنویسیم می‌توانیم همین روال را تکرار کنیم.
کد:
<?php
class person{
   public $name;
   function __construct($inputName){
       $this->name=$inputName;
   }
   public function showName(){
       echo $this->name;
   }
} // End class


کد:
// نحوه ارث بری از کلاس شخص


کد:
class student extends person{
   private $major;
   public function __construct($name,$major){
       parent::__construct($name);
       $this->major=$major;
   }
   public function showMajor(){
       return $this->major;
   }
} // End class

$Elina=new student('Elina','Computer Software');
echo "<p>Hello, my name is ";
echo $Elina->showName();// از کلاس شخص به ارث رسیده است
echo "</p><p>";
echo "I am study ";
echo $Elina->showMajor();
echo "</p>";
?>
نکته: پس از ارث‌بری می‌توانید متدهای نوع عمومی (Public) و یا محافظت شده (Protected) را بازنویسی (Redeclare) کنید و تغییراتی در آن‌ها ایجاد کنید اما نمی‌توان این کار را برای متدهای نوع خصوصی (Private) انجام داد.
خاتمه
در پایان توصیه اکید بنده به دوستان علاقمند به برنامه‌نویسی این است که هرگز به یادگیری کد از طریق خواندن، شنیدن یا دیدن اکتفا نکنند و حتماً با دستان خود کد بنویسند. از کدهای بسیار ساده تا پیشرفته. تنها زمانی از copy و paste بخش‌های مختلف پروژه خود استفاده کنید که قبل از آن، کدنویسی ملکه ذهن شما شده باشد. برای کسب درآمد از طریق برنامه‌نویسی مراحل زیر باید سپری شوند:

  • یادگیری (از هر طریقی که دوست دارید مانند کتاب، ویدئو، فایل صوتی و غیره)

  • تکرار و تمرین زیاد و متنوع به صورت علمی و عملی

  • تبدیل آموخته‌ها به ملکه ذهن

  • کسب تجربه

  • شروع فعالیت تجاری هدفمند
از توجه شما سپاس گزارم

چاپ این مطلب

  در یافت رشته عددی
ارسال کننده: fsohrabiii - 2018/01/08، 07:43 AM - انجمن: جاوا اسکریپت - پاسخ (1)

سلام دوستان.
من میخوام که یک ورودی ایجاد کنم که یه رشته عددی 1 و -1 رو در یافت کنه. مثلا رشته 11-11-11-1-.
این اعداد رو میخوام بریزم توی یک آرایه.
اول باید این اعداد رو از هم جدا کنم.
در مرحله بعد باید این ها رو به آرایه تبدیل کنم.
این کار رو انجام میدم اما متد split میاد اعداد رو به رشته تبدیل می کنه که به درد من نمیخوره. چون میی خوام این اعداد در هم ضرب بشن که کاری که من انجام داد NaN رو بر میگردونه.
کسی راه حلی داره؟

چاپ این مطلب

  مقایسه ASP.NET MVC با PHP Symfony
ارسال کننده: webone - 2017/12/10، 12:01 PM - انجمن: MVC - بدون پاسخ

باتوجه به اینکه شرکت های زیادی نیز وجود دارند که از PHP استفاده میکنند، به مقایسه ASP.NET و PHP در دو معماری مشابه بر اساس کلیدی ترین فاکتور ها می پردازیم:
1- سرعت
در مقایسه های مختلف انجام شده و طبق بررسی ساختار این دو،  PHP برای پروژه های متوسط به پایین سرعت بیشتری دارد اما برای پروژه های متوسط و روبه بالا سرعت ASP.NET بیشتر است. لازم به ذکر است همیشه پروژه ها در حال رشد و بزرگتر شدن هستند بنابراین در نهایت می بایست آینده را مورد توجه قرار داد. در بسیاری موارد شبکه اجتماعی FaceBook که با PHP اجرا شده است جهت مثال پروژه های بزرگ بیان میشود اما لازم به ذکر است در FaceBook  از نسخه تغییر یافته PHP و همچنین کامپایلری متفاوت استفاده شده است. بنابراین این مثال صحیح نیست. برای ASP.NET در این زمینه میتوان شبکه اجتماعی Myspace را مثال زد.

2- امنیت
باتوجه به اینکه PHP به صورت متن باز است بنابراین یافتن نقاط ضعف در آن بسیار آسان بوده و بیشتر در معرض آسیب است. از طرفی دیگر با گذشت زمان قطعاً در نسخه های مختلف PHP و ASP.NET ضعف های امنیتی  آشکار میگردد و این در حالی است که با توجه به اینکه ASP از NET. استفاده میکند که به صورت مستقل  بر روی سیستم عامل ویندوز وجود دارد و همگام با بروز رسانی خودکار ویندوز نسخه NET. نیز بروز میگردد و در نتیجه ضعف های شناخته شده نیزخودکار برطرف میگردند اما در PHP می بایست به صورت دستی این بروز رسانی انجام گردد و علاوه بر آن معمولاً نیاز به تغییراتی جهت سازگاری با بروز رسانی های جدید است اما در NET. نیازی به انجام تغییرات نیست و به صورت خودکار انجام میشود. این قابلیت با نام Backward Compatibility شناخته شده است.
3- ساختار
در   asp.net به اجبار طراحی شیء گرا خواهد بود اما در PHP ممکن است طراحی شیء گرا مورد استفاده قرار نگیرد و در نتیجه ساختاری مستحکم در نظر گرفته نشود.
مزایای استفاده از MVC :
- با تقسیم یک برنامه به سه قسمت مدل، نمایشگر و کنترلگر، مدیریت برنامه یا پروژه  آسانتر میشود.
- از ViewState و فرم های سروری استفاده نمی کند . به همین خاطر برای برنامه نویسانی که تسلط کامل بر رفتار برنامه را می خواهند عالی است.
- از الگوی کنترلگر جلو استفاده میکند که درخواست های برنامه را توسط یک کنترلگر پردازش میکند. این مسئله باعث میشود تا بتوانیم برنامه هایی را طراحی کنیم که از زیر ساخت های غنی مسیریابی پشتیبانی میکند.
- پشتیبانی بهتری از طراحی و توسعه آزمون محور دارد.
- برای برنامه های پشتیبانی شده توسط تیم های بزرگ برنامه نویسان که کنترل بسیار بر رفتار برنامه را می خواهند، بهتر کار میکنند.
MVC  به زبان ساده تر :
ام وی سی یک مدل طراحی سایت است که تکنولوژی به روزی محسوب میشود، این تکنولوژی تحت چهارچوب هایی ارائه شده اند، ابتدا باید بدانیم که mvc چیست؟
ام وی سی از کلمات model ، view، controller گرفته شده است در این نوع از برنامه نویسی همه چیز سر جای خود است بطوری که هر یک از این بخش ها مسئولیت اجرا و یا ارتباط با بخشی را دارند.
در مدل mvc تمامی برنامه نویسان مجبور میشوند تا از این چهارچوب پیروی کنند و همین مسئله باعث میشود تا کدهای نوشته شده خوانایی کامل را داشته باشد و هر برنامه نویسی بتواند کدهای برنامه نویس دیگری را ویرایش نماید در صورتی که در کدنویسی به صورت pure هر برنامه نویسی از روش و عادت خود پیروی میکند.
طراحی سایت توسط mvc  دنیای برنامه نویسی را نظم بخشیده است و به برنامه نویسان قدرت بیشتر به همراه سرعت فراوان را هدیه کرده است.
در طراحی سایت با mvc هر کدام از بخش های گفته شده مسئول اجرای فرآیندی هستند که در زیر به معرفی این موارد پرداخته میشود:
– لایه model: این لایه از معماری mvc ، مسئول ارتباط با پایگاه داده است به این صورت که شما وقتی می خواهید اطلاعاتی را از پایگاه داده بخوانید و یا اطلاعاتی را استخراج کنید مجبور هستید تا اطلاعات را به لایه مدل بفرستید.
– لایه view: این لایه همانطور که از نام آن پیداست مربوط به نمایش است، اما نمایش چه چیزی؟
لایه ی view از تکنولوژی طراحی سایت mvc نزدیکترین لایه به کاربر است و مواردی را که کاربر در صفحه می بیند توسط این لایه تولید میشود و وقتی که می خواهید اطلاعات پایگاه داده را استخراج کرده و به کاربر نمایش دهید باید ابتدا اطلاعات را توسط لایه مدل استخراج کرده و در قسمت view نمایش دهید.
– لایه controller : این لایه مسئول کنترل است ولی نه به این معنی که مسئول امنیت وب سایت شما باشد. البته با امنیت وب سایت بی ارتباط نیست ولی برای این منظور طراحی نشده است. لایه ی کنترلر در معماری طراحی سایت توسط mvc به کنترل لینک ها می پردازد یعنی زمانی که کاربر می خواهد به صفحه ای برود، درخواست او به لایه کنترلر ارسال میشود و این لایه فرآیندی که برنامه نویس برای آن لینک تدارک دیده است را نمایش میدهد.

چاپ این مطلب

  اسامی رزرو شده
ارسال کننده: takbit - 2017/11/30، 04:49 PM - انجمن: کدنویسی - بدون پاسخ

اسامی رزرو شده‌ای که در کد ایگنایتر نمی‌توان از آن‌ها استفاده کرد

به دنبال خدمت رسانی بیشتر، فریم ورک Codeigniter از یک سری توابع و اسامی در عملیات خود استفاده می‌کند. به همین خاطر برنامه‌نویس نمی‌تواند از برخی اسامی استفاده کند. از آن‌جا که کلاس کنترلر شما، کنترلر اصلی برنامه را گسترش خواهد داد لذا شما باید مراقب باشید تا هنگام تعریف‌های خود، عیناً از نام‌هایی که قبلاً توسط فریم‌ورک کدایگنایتر بکار رفته‌اند، استفاده نکنید، زیرا این کار باعث می‌شود تا به طور مثال، توابع جدید توابع کلاس اصلی را لغو (Override) کنند. در ادامه اسامی رزرو شده به تفکیک آمده‌اند. از این اسامی استفاده نکنید.


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

Controller
CI_Base
_ci_initialize
Default
index

اسامی رزرو شده توابع
()is_really_writable
()load_class
()get_config
()config_item
()show_error
()show_404
()log_message
()exception_handler_
()get_instance

اسامی رزرو شده متغیرها
$config
$mimes
$lang

اسامی رزرو شده ثابت‌ها
ENVIRONMENT
EXT
FCPATH
SELF
BASEPATH
APPPATH
CI_VERSION
FILE_READ_MODE
FILE_WRITE_MODE
DIR_READ_MODE
DIR_WRITE_MODE
FOPEN_READ
FOPEN_READ_WRITE
FOPEN_WRITE_CREATE_DESTRUCTIVE
FOPEN_READ_WRITE_CREATE_DESTRUCTIVE
FOPEN_WRITE_CREATE
FOPEN_READ_WRITE_CREATE
FOPEN_WRITE_CREATE_STRICT
FOPEN_READ_WRITE_CREATE_STRICT

چاپ این مطلب

  سرور مورد نیاز Codeigniter
ارسال کننده: takbit - 2017/11/29، 11:43 PM - انجمن: نصب و راه اندازی - بدون پاسخ

برای اجرای Codeigniter به چه سروری نیاز داریم؟

برای اجرای فریم‌ورک Codeigniter به یک سرور با امکانات زیر نیاز داریم:

  • PHP نسخه 5.1.6 یا جدیدتر.
  • بانک اطلاعاتی. در حال حاضر از بانک‌های زیر پشتیبانی می‌شود:
  • MySQL (4.1+)
  • MySQLi
  • MS SQL
  • Postgres
  • Oracle
  • SQLite
  • ODBC
منبع:
منبع: تکبیت

چاپ این مطلب

  کاربرد خط اول در کدایگنایتر چیه؟ defined
ارسال کننده: h_qorbani - 2017/11/29، 07:40 PM - انجمن: مباحث عمومی - پاسخ (1)

سلام
کاربرد خط اول در کلاسهای کدایگنایتر چیه و اگه بکاربرده نشه چه مساله ای رو بوجود میاره؟ منظورم خط زیر است:

کد php:
defined('BASEPATH') OR exit('No direct script access allowed'); 

چاپ این مطلب

  معرفی اپلیکیشن مناسب برای خرید بلیط هواپیما
ارسال کننده: eskandari - 2017/11/21، 12:35 PM - انجمن: بحث آزاد - بدون پاسخ

[تصویر:  zoraq.jpg-hamyarit.com-zoraq.jpg]

خرید بلیط مشهد و رزرو هتل مشهد با تخفیف
 چه به قصد زیارت تصمیم گرفته باشید به مشهد سفر کنید، چه برای تفریح یا حتی سفری کاری یا شرکت در نمایشگاه‌های شهر، خرید بلیط هواپیما و انتخاب هتل مناسب در مشهد مهم‌ترین بخش برنامه‌ریزی سفر به مشهد است. هرکدام از این دو کار هم نکاتی دارد که بد نیست قبل از خرید بلیط هواپیما مشهد و رزرو هتل مشهد آن‌ها را بدانید.
 
بهترین وقت خرید بلیط هواپیما مشهد چه‌زمانی است؟
بلیط هواپیما مشهد در فصل‌های مختلف سال، عید نوروز، و مناسبت‌های مختلف دینی تغییر می‌کند، و وقت‌هایی که شهر شلوغ و پر مسافر است قیمت بلیط هواپیما هم بالاتر می‌رود. قیمت هتل مشهد هم همین‌طور است و وقت‌های شلوغی باید انتظار قیمت‌های بالاتری را داشته باشید.
برای این‌که به این گرانی بلیط هواپیما مشهد و هتل مشهد برنخورید، دو راه دارید. یکی این‌که اگر از سفرتان مطمئن هستید می‌توانید از ماه‌ها قبل از سفر بلیط هواپیما مشهد و هتل مشهد را رزرو کنید، تا هم به شلوغی‌ها و روزهای پیدا نشدن بلیط هواپیما و هتل مشهد برنخورید و هم بتوانید بلیط ارزان مشهد و هتل ارزان مشهد پیدا کنید. معمولاً اگر از مدت‌ها قبل از تاریخ سفر بلیط هواپیما و هتل را رزرو کنید تخفیف‌هایی هم می‌گیرید.
راه دوم این است که تا می‌توانید در انتخاب تاریخ سفرتان به مشهد انعطاف‌پذیر باشید، و اگر می‌توانید سفر را به روزها و ماه‌های کم‌مسافر بیاندازید. معمولاً بلافاصله پس از فصل‌های شلوغی فصل‌های خلوتی از راه می‌رسند، و قیمت بلیط هواپیما و هتل مشهد و هزینه‌های دیگر سفر خیلی پایین‌ می‌آیند. بنابراین اگر می‌توانید سفر بعدی‌تان به مشهد را به بعد از عید نوروز و در روزهای بهاری اردییهشت، یا بعد از تابستان و روزهای زیبای پاییز، بیندازید.
 
چطور بلیط ارزان مشهد پیدا کنیم؟
مشهد مثل هر شهر توریستی بزرگ دیگر در همه‌ی ماه‌ها و روزهای سال مسافر دارد و هر روز از سال چندین پرواز از شهرهای مختلف به مشهد انجام می‌شود. برای این‌که بتوانید از بین این پروازها ارزان‌ترین و بهترین را انتخاب کنید باید به اطلاعات همه‌ی پروازهای شرکت‌های هواپیمایی دسترسی داشته باشید و بین آن‌ها مقایسه کنید و بهترین و ارزان‌ترین بلیط هواپیما مشهد را پیدا کنید.
برای این‌ کار کافی است به سایت زورق بروید، و در بخش خرید بلیط هواپیما شهر مقصد، این‌جا مشهد، را وارد کنید و بعد از آن‌که تاریخ سفر و تعداد مسافران را مشخص کردید، زورق فهرستی از انواع بلیط هواپیما مشهد به شما می‌دهد که از ارزان‌ترین به گران‌ترین بلیط هواپیما مشهد مرتب شده است. در این فهرست می‌توانید بلیط ارزان مشهد پیدا کنید، یا با فیلترهای مختلف زورق بلیط هواپیما چارتر پیدا کنید، انواع بلیط مشهد را براساس کلاس پروازی یا ساعت پرواز مرتب کنید، و بلیط‌های تخفیف‌دار را ببینید.
زورق اطلاعات 1000 شرکت هواپیمایی مختلف در سراسر جهان و ایران را یک‌جا جمع کرده، و بعد از مقایسه بین انواع بلیط هواپیما، پیدا کردن بهترین و ارزان‌ترین بلیط هواپیما براساس برنامه و بودجه‌ی سفرتان، و خواندن شرایط کنسلی یا قوانین مسافران خردسال بلیط، با چند کلیک ساده و با کارت شتاب‌تان انواع بلیط هواپیما خارجی و داخلی را می‌خرید و بلافاصله رسید قطعی خرید می‌گیرید. زورق علاوه‌ بر این‌که کار مقایسه انواع بلیط هواپیما و خرید بلیط هواپیما را راحت کرده، با رسید قطعی خرید، تضمین قیمت، به‌ویژه تضمین قیمت بلیط هواپیما چارتر، تضمین حضور در لیست پرواز بلیط هواپیما چارتر، و امکان کنسلی آنلاین خرید، دیگر به هیچ چیز دیگری نیاز نخواهید داشت و اگر هم در هرجای کار، از خرید بلیط هواپیما تا پرواز به شهر مقصد، به مشکلی برخوردید پشتیبانی 24 ساعته زورق آماده است آن مشکل را برای شما برطرف کند.
 
کجا برای رزرو هتل مشهد بهتر است؟
بعد از خرید بلیط هواپیما به رزرو هتل مشهد می‌رسیم، و شاید مهم‌ترین نکته در رزرو هتل مشهد موقعیت مکانی هتل باشد. در مشهد هم مثل هر شهر بزرگ دیگر ایران و جهان فاصله‌ها طولانی هستند و خیلی وقت‌ها خیابان‌ها اسیر ترافیک‌اند. به همین دلیل پیش از رزرو هتل مشهد به قصدتان از سفر توجه کنید، و بسته به این‌که به کجای شهر رفت‌وآمد خواهید کرد هتل مشهد را نزدیک به آن‌جا رزرو کنید. مثلاً اگر قصد زیارت از حرم امام رضا (ع) را دارید، بین هتل‌های نزدیک به حرم بگردید، و اگر می‌خواهید به نمایشگاهی بین‌المللی بروید، یا می‌خواهید از شلوغی شهر دور باشید و جای خلوت‌تری اقامت کنید، سراغ هتل‌های نزدیک به نمایشگاه یا دور از مرکز شهر را بگیرید.
برای این‌که هتل مناسب با موقعیت مکانی خوب پیدا کنید، بعد از خرید بلیط هواپیما به بخش رزرو هتل زورق بروید و در آن‌جا بعد از انتخاب شهر مقصد، تاریخ سفر و تعداد مسافران و اتاق‌ها، فهرستی از انواع هتل مشهد را ببینید که از ارزان‌ترین هتل ارزان مشهد و انواع هتل آپارتمان مشهد تا هتل‌های لوکسی مثل هتل درویشی، هتل هما 2 مشهد، یا هتل الماس مشهد، را در بر می‌گیرد.
بعد از مقایسه قیمت انواع هتل مشهد با فیلترهای زورق هتل‌ها را براساس ستاره‌های هتل مشهد، امکانات هتل مثل اینترنت و فضاهای ورزشی و تفریحی، یا تخفیف داشتن هتل در تاریخ موردنظرتان، مرتب کنید و روی نقشه هتلی را پیدا کنید که به محل رفت‌وآمد شما نزدیک‌تر است.
زورق اطلاعات بیش از 400 هزار هتل جهان و ایران را جمع کرده است و این اطلاعات در لحظه به‌روز می‌شوند و می‌شود از ماه‌ها قبل از سفر در میان آن‌ها جست‌وجو کرد و بهترین و ارزان‌ترین هتل را پیدا کرد. علاوه بر اطلاعات قیمت و ستاره‌های هتل و موقعیت مکانی هتل، هر هتل مشهد و هر شهر دیگری در جهان در زورق صفحه‌ای جداگانه دارد که توی آن‌ عکس‌های نمای بیرونی و اتاق‌های هتل، اطلاعات قیمت و امکانات اتاق‌های مختلف هتل، شرایط کنسلی و خدمات ویژه‌ی هتل، نظر مسافران قبلی هتل، رتبه‌ی هتل بین هتل‌های دیگر، و کلی اطلاعات دیگر هست.
 
[تصویر:  2c97100e-6a5f-4b11-8c14-05644648647a.jpg]

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

چاپ این مطلب

Information کدایگنایتر ۳.۱.۶
ارسال کننده: farhadhp - 2017/11/05، 06:44 AM - انجمن: اخبار کدایگنایتر - بدون پاسخ

با سلام

کدایگنایتر نسخه ۳.۱.۶ در ۲۵ سپتامبر ۲۰۱۷ ریلیز شد.

مثل چند ریلیز قبلی تغییرات خاصی به همراه نداشته و فقط چند ایراد بر طرف شدند.


امنیتی:

  • Fixed a potential object injection in Cache Library ‘apc’ driver when save() is used with $raw = TRUE (thanks to Tomas Bortoli).


تغییرات عمومی:

دانلود کدایگنایتر نسخه ۳.۱.۶

چاپ این مطلب

  از دست رفتن سشن هنگام لاگین
ارسال کننده: h_qorbani - 2017/11/04، 05:51 AM - انجمن: مباحث عمومی - پاسخ (5)

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


وضعیت فعلی بعد از بارگذاری:

autoload.php

کد php:
$autoload['libraries'] = array('database','template','session','encryption','form_validation');

$autoload['helper'] = array('url','cookie','form','file'); 


config.php
کد php:
$config['base_url'] = 'http://domainname.com/admin/';

$config['uri_protocol']    = 'AUTO';

$config['sess_driver'] = 'files';
$config['sess_cookie_name'] = 'east';
$config['sess_expiration'] = 7200;
$config['sess_save_path'] = NULL;
$config['sess_match_ip'] = TRUE;
$config['sess_time_to_update'] = 300;
$config['sess_regenerate_destroy'] = FALSE;



$config['cookie_prefix']    = '';
$config['cookie_domain']    = 'http://domainname.com';
$config['cookie_path']        = '/admin/';
$config['cookie_secure']    = FALSE;
$config['cookie_httponly']     = FALSE

چاپ این مطلب