نمایش error به کاربر در php
سلام دوستان
یه سیستم عضویت دارم که ارور رو به کاربر در صفحه بعد نشون میده به این شکل
echo '<b align="center"> این نام کاربری وجود دارد<a href="">لطفاً برای ادامه دوباره اینجا کلیک کنید</a>.</b>' . PHP_EOL;
یعنی خطارو بین این دوتا تگ . PHP_EOL و echo که وقتی کاربر فرم رو پر میکنه و رو دکمه ادامه کلیک میکنه خطا میره صفحه بعد نمایش میده که اعصاب ادم خورد میشه باز باس بگم {کاربر فلان جا کلیک کن برگرد عقب فرم رو درستش کن}
ولی من میخام خطارو همونجا تو همون صفحه که فرم ثبت نام هست بهش نشون بده حالا یا با جاوا اسکریپت یا پی اچ پی
یه چیزی هم فکرم هست کاش میشد مثلا همون لحظه که کاربر اسمش مینویسه بصورت آنی اسمش و یا پسورد یا شماره موبایل یا ایمیلش چک بشه
خواهشا تو این مورد کمکم کنین مبتدی هستم
تشکر
نقل قول: نمایش error به کاربر در php
به نظرم هم میتونی از طریق Ajax اقدام کنی و هم از طریق اینکه پیام خطا رو توی سشن ذخیره کنی و در صورت خطا دادن فرم ، کاربر رو به صفحه جدید منتقل نکنی. متن خطا رو از سشن چک کنی و در صورت وجود برای کاربر توی همون صفحه نمایش بدی
نقل قول: نمایش error به کاربر در php
نقل قول:
نوشته شده توسط
thacker
به نظرم هم میتونی از طریق Ajax اقدام کنی و هم از طریق اینکه پیام خطا رو توی سشن ذخیره کنی و در صورت خطا دادن فرم ، کاربر رو به صفحه جدید منتقل نکنی. متن خطا رو از سشن چک کنی و در صورت وجود برای کاربر توی همون صفحه نمایش بدی
ممنون
میتونید کد نمونه سشن که ذخیره میشه رو بهم معرفی کنین که از روی اون بتونم این فرم درست کنم
نقل قول: نمایش error به کاربر در php
مثال برای قسمت تائید فرم :
$name = $_POST['name'];
$email = $_POST['email'];
if(empty($name)) {
$_SESSION['formError'] = 'لطفا فیلد نام را تکمیل کنید';
}
برای نمایش خطا هم این کد رو در قسمتی که میخواهید خطا نمایش داده بشه بگذارید:
if($_SESSION['formError']) { echo $_SESSION['formError']; }
نقل قول: نمایش error به کاربر در php
اونی که پر کردن فیلد هست کد و خطای اونو دارم یعنی نیاز براش خطا نشون بدم سشن اول صفحه وجود داره و بعدش خود مرورگر با هربار کلیک روی دکمه ادامه تشخیص میده میگه که باید فیلد مورد نظر پر بشه
این قسمت رو فقط میخام نمایش بده یعنی بررسی که میکنه نام کاربری وجود داره یا نه
فکر کنم منظورش یه همچین چیزی هست
اگه کاربری با کاربر دیگه مشخصاتش یکی بود و برابر با صفر نبود این ارور رو نشونش بده
کد به شکل زیره
if($user && $user->num_rows > 0) {
// بعد میاد با این خطارو نشون میده
echo'لطفا نام کاربری دیگر انتخاب کنید' . PHP_EOL;
فقط همین نمایش خطارو میخام یا به صورت اسکرین براش ظاهر بشه یا به صورت متن در خود فرم درجایی که مشخص میکنم
نقل قول: نمایش error به کاربر در php
if($user && $user->num_rows > 0) {
$_SESSION['formError'] = 'لطفا نام کاربری دیگر انتخاب کنید';
header("Location:$_SERVER['REQUEST_URI']");
}
نمایش خطا توسط جاوا اسکریپت ( Alert ) :
if($_SESSION['formError']) { echo '<script type="text/javascript"> alert('.$_SESSION['formError'].'); </script>'; }
نمایش خطا بصورت متنی در محل مشخص :
if($_SESSION['formError']) { echo $_SESSION['formError']; }
نقل قول: نمایش error به کاربر در php
هر سه تا رو همه جوره تست کردم درست نشد
وقتی هم این کد میاد صفحه دیگه بالا نمیاد اصلا
header("Location:$_SERVER['REQUEST_URI']");
نقل قول: نمایش error به کاربر در php
سشن رو استارت کردید ؟؟
در صورتی که امکانش هست کدهای صفحه رو بفرستید
نقل قول: نمایش error به کاربر در php
کسی نیست در قبال هزینه ای این فرم رو برام درست کنه؟
نقل قول: نمایش error به کاربر در php
اینکود صفحه رو توی نود پد دلاس بزار روی utf 8 without BOM ببین درست میشه سشن رو هم اول از همه بایست استارت کنی بدون هیچ کد قبلی و در ضمن اگر کدهاتو میذاشتی اینجا بهتر میشد راهنمایی کرد .
نقل قول: نمایش error به کاربر در php
اول از همه که سشن رو درست استارت نکردید قبلا session_start(); هیج چیزی نبایست باشه
در ضمن این کدهایی که نوشتی خیلی زیادی اسپاگتی هست که فکر کنم حتی خود ما هم که نوشتییش یه یک ماه دیگه بهش رجوع کنی هیچی ازش سر در نمیاری من یه لاگین و ریجیستر تمیزتر و البته خب مبتدی هست کدهاش برات فرستادم یه نگاه بهش بیانداز حتی اگر از این کدهای بنده هم استفاده نکنی ارزش یکبار دیدن رو داره.
میتونی یک مسیر بهتری رو باهاش انتخاب کنی .
در ضمن سعی کنید یه فریمورک یاد بگیرید خیلی بهتره مثلا با codeigniter شروع کنید.
در ضمن حتما نیاز نیست از PHP_EOL استفاده کنید همون br کافیست.
1 ضمیمه
نقل قول: نمایش error به کاربر در php
اینم کدهای لاگین و رجیستر