PDA

View Full Version : سوال: باقی موندن اطلاعات در فرم بعد از پیغام required field



enidra
دوشنبه 12 تیر 1391, 10:53 صبح
من یک فرم دارم , کاربر فرم رو پر می کنه , بعضی از فیلد ها پر کردنشون الزامیه و کار بر یادش رفته , پیغام به کاربر نشون داده میشه که فلان فیلد رو پر کن ولی صفحه ریفرش میشه و اطلاعاتی که قبلا پر کرده بود پاک میشه و دوباره باید پر کنه در واقع باید از اول یه فرم خام رو پر کنه, برای اینکه اطلاعات قبلی پاک نشه و کاربر مجبور نشه از اول پر کنه باید چی کار کنم؟

reza10wert
دوشنبه 12 تیر 1391, 11:37 صبح
از این الگو استفاده کن

<input type=text
value="<?php if (isset($_POST['username']) OR !empty($_POST['username'])) {
echo $_POST['username'];
} ?>"
name="username" />

ayub_coder
دوشنبه 12 تیر 1391, 11:59 صبح
یا می تونی کد دوستمون رو بدون if اینطوری بنویسی


<input type=text value="<?php echo (isset($_POST['username']) && !empty($_POST['username']))? $_POST['username'] : ""; ?>" name="username" />

و فکر کنم اون or وسط && باشه بهتری چون تکست باکسی که ست نشده مسلما خالیه

idocsidocs
دوشنبه 12 تیر 1391, 14:39 عصر
!empty($_POST['username']
بنظرم این نمونه بهتره:

value="<?php if (isset($_POST['username')'])) {echo $_POST['username'];} ?>
چون تابع empty مقدار 0 رو رو خالی در نظر می گیره و کاربرها هم ممکنه توی فیلد مقدار 0 رو بذارن و برای چک کردن پر بودن فرمها مناسب نیست. تابع isset به تنهایی می کتونه جوابگو باشه.