روز برنامه‌نویس مبارک 🤩🎉 از هدایای روز برنامه‌نویس جا نمونی ⌛
۰ ثانیه
۰ دقیقه
۰ ساعت
۴ الهه شجاعی زاده
اعتبار سنجی فرم با جاوا اسکریپت یا php ?
جامعه پی اچ پی ایجاد شده در ۰۳ آذر ۱۴۰۰
<p>با سلام و احترام</p><p><br></p><p>سوال من در رابطه با اعتبار سنجی فرم است . یک فرم داریم به طوری که کاربر باید تمام فیلد‌های فرم را پر کند و برای فیلد تلفن همراه باید فقط عدد وارد کند و همچنین 11 رقمی باشد در غیر این صورت ارور به کاربر نشان دهد و نتواند فرم را ثبت کند.</p><p><br></p><p>کدهای اعتبار سنجی فرم باید چگونه باشد ؟</p><p><br></p><p>با جاوا اسکریپت بهتر است انجام شود یا php ؟</p><p><br></p><p><br></p><p><br></p>
<p>سلام.</p><p>راه کار به این صورته:</p><ol><li>حتماً باید سمت سرور ولیدیشن ورت گیرید چون تنها قسمتی است که کلاینت نمیتواند داده‌ها را دستکاری کند.</li><li>سمت کلایت هم ولیدیشن باید بذارید البته برای اینکه کاربر تجربه ی بهتری از استفاده ی سایت ببرد. وگرنه کاربر برای هر خطا باید منتظر بماند یک درخواست به سرور ارسال شود و چند ثانیه ای صبر کند تا پاسخ برگردد که تجربه ی خوبی نیست.</li></ol><p>در مورد شماره تلفن میتونید از Regex استفاده کنید. اگر شرط فقط عدد و 11 رقم باشد به این صورته:</p><pre class="ql-syntax" spellcheck="false">^\\d{11}$ </pre>
محسن موحد ۰۳ آذر ۱۴۰۰، ۱۱:۰۸
<p>سپاس . </p><p>من متوجه نشدم یعنی هم با جاوا اسکریپت باید اعتبارسنجی انجام بگیرد هم با php? </p><p>اگر ممکن است لینکی یا راهنمایی میگذارید </p>
الهه شجاعی زاده ۰۳ آذر ۱۴۰۰، ۱۱:۵۸

بله تا جای ممکن بهتره در هر دو سمت کلاینت و سرور اعتبارسنجی رو انجام بدید.

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

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

لقمان آوند ۰۳ آذر ۱۴۰۰، ۱۲:۲۲
<p>سرکار خانم شجاعی سلام </p><p>برای اعتبار سنجی فرم‌ها باید چنتا نکته رو در نظر گرفت اول این که اطلاعات ارسالی چقدر مهم هستن و گزینه دوم نوع اطلاعات هستش بهتر هستش که فیلد‌های فرم تقسیم بندی بشن برای مثال زمانی که از کاربر قرار هستش شماره موبایل ،ایمیل ، شماره ملی رو دریافت کنیم باید ابتدا در سمت کلاینت چک کنیم که آیا این اطلاعات ارسالی با نوع فیلد هم خوانی دارد یا خیر برای مثال اگر ایمیل،شماره موبایل ویا شماره ملی صحیح نبود ویا با فرمت اعلامی سیاست‌های ما نبود اصلا فرم برای پردازش به سمت سرور ارسال نشه تابرای ما بار پردازشی ایجاد نکنه .</p><p><br></p><p>حالا شما در ابتدا باید ببیند این فرم و اطلاعات با چه سیاستی قراره استفاده بشه و نیاز شما در این ویزگی وبسایت چی هستش .</p><p>برای مثال پیشنهاد میشه در فرم ثبتنام بررسی‌های مثل قدرت پسورد (حروف ،اعداد،کارکترهای خاص وطول رشته )سمت کلاینت بررسی بشه و همونجا قبل ارسال فرم به کاربر اعلام بشه که پسورد شما قوی نیست ویا کلید ارسال فرم از دسترس خارج بشه .</p><p>و نکته پایانی : همیشه خودتون رو بزارید جای کاربر و به پیچیدگی هایی فرم دقت کنید در خیلی از موارد بررسی ساختار‌ها و فرمت‌های نوشتاری در فرم‌ها بهتر هستش که در سمت کاربر بررسی بشه چون با ارسال فرم هم بار فنی بالا میره برای نگهداری اطلاعات فرم در صورت اشتباه در یک فیلد‌های فرم باید اطلاعات حفظ بشه تا کاربر اطلاعات صحیح رو مجددا وارد نکنه و قسمت مهم مورد هم حوصله کاربر برای پرکردن مجدد اطلاعات ویا تصیح آنها کم میشه .</p><p>در تمام مراحت توسعه یک ویژگی باید خیلی از موارد رو در نظر بگیرید .</p><p>امیدوارم که به صورت کامل توضیح داده باشم . موفق باشید .</p>
محمد نقلانی ۰۴ آذر ۱۴۰۰، ۰۵:۴۹