انجمن سایت کلیدستان


رتبه موضوع:
  • 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
ساخت قسمت لاگین برای سایت (یکی بودن صفحه دریافت اطلاعات و پردازش اطلاعات) (PHP)

ساخت قسمت لاگین برای سایت (یکی بودن صفحه دریافت اطلاعات و پردازش اطلاعات) (PHP)

#2
سلام.
بله ساخت دو یا چند فایل برای یک فرم و پردازش های مربوط به آن، انتخاب مناسبی نیست (البته نه همیشه) و تجربه نشان داده که اختصاص تنها یک فایل به این موارد (و بعد حالت بندی کدهای آن)، بهترین انتخاب است.
در زبان PHP ، معمولا در صفحه فرم، بر اساس متغیرهای ارسال شده به صفحه (با روش POST)، حالت بندی می کنیم. یعنی مثلا در فرم، یک field به صورت hidden تعریف می شود :

کد پی‌اچ‌پی:
<input type="hidden" name="my_form_process" value="1"/> 

بعد با کد PHP زیر چک می کنیم که آیا کاربر دکمه submit فرم را فشار داده یا نه :

کد پی‌اچ‌پی:
if(isset($_POST['my_form_process'])){ 

یا مثلا برای عدم submit فرم (به علامت ! دقت کنید) :

کد پی‌اچ‌پی:
if(!isset($_POST['my_form_process'])){ 

یک مثال :

کد پی‌اچ‌پی:
<?php
// ذخیره اطلاعات دریافت شده توسط فرم
if(isset($_POST['my_form_process'])){
    
$message $_POST['message'];
    
// پردازش اطلاعات دریافتی از فرم
    
?>
    نمایش نتیجه
    <?php
}
?>




<br /><br />
<div> 
    <form method="post" action="#">
        <input type="hidden" name="my_form_process" value="1"/>
        <br /><br />متن پیام :<br /><br />
        <textarea name="message" cols="100" rows="20"></textarea>
        <br /><br />
        <input type="submit" value="ارسال پیام">
    </form>
</div> 

مثال بالا، یک کد پایه است. یعنی می توانید حالت بندی ها را گسترش دهید، یعنی در ابتدای صفحه که اطلاعات دریافتی از فرم پردازش می شوند (البته تنها در حالتی که دکمه submit فرم را زده باشند)، اگر پردازش موفقیت آمیز بود، تعیین می کنیم که دیگر فرم نمایش داده نشود و کاربر، یک سری اطلاعات دیگر را ببیند و اگر موفقیت آمیز نبود، فرم نمایش داده می شود. این کار را می توان با تعریف یک متغیر که مقدار 0 یا 1 می گیرد، انجام داد و بر اساس حالت پیش آمده، یک مقدار را در آن ذخیره می کنیم. بعد در قسمت نمایش فرم، تعیین می کنیم که اگر مقدار آن برابر 1 بود، فرم نمایش داده شود.

کد پی‌اچ‌پی:
<?php
if($my_variable==1){
    
?>
    نمایش فرم
    <?php
}
?>

همچنین در بخش دریافت متغیرهای POST شده به صفحه، مسائل امنیتی دریافت مقادیر رعایت شوند.

bookbook 
لطفا برای درج کد، از دکمه مخصوص درج کد در ادیتور انجمن استفاده کنید.
در مورد برنامه نویسی، مدیران تنها راهنمایی می کنند و نوشتن برنامه نهایی، به عهده کاربران می باشد (اینجا محلی برای یادگیری است، نه سفارش کدنویسی).
کاربران باید ابتدا خود به خطایابی برنامه بپردازند، نه اینکه به محض دیدن خطا، کدها را در انجمن، copy و paste کرده و از مدیران انتظار بررسی داشته باشند.
پاسخ


پیام‌های این موضوع
RE: ساخت قسمت لاگین برای سایت - توسط admin - ۱۳۹۴/۰۸/۰۴, ۰۹:۴۱ ق.ظ

پرش به انجمن:


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