من مدت زیادی است که می خواهم با استفاده از VK API برنامه ای مانند این بنویسم. ایده این بود که نوعی چارچوب بنویسیم و پلاگین هایی را اضافه کنیم که بتوان انواع وظایفی را که در حال حاضر مورد نیاز است به آن پیاده سازی کرد: از جذابیت موسیقی تا پشتیبانی پیش پا افتاده از ضبط ابری آنلاین. قرار بود این نسخه هم روی سرور و هم روی رایانه شخصی راه اندازی شود. من می خواهم شما را در مورد مشکلاتی که در طول ساعت کشف در زندگی من به وجود آمد از جمله موارد ذکر شده در عنوان مطلع کنم.

Krok 0. مستندات Vivchennia

اکنون که کار تکمیل شده است، اکنون باید پلتفرم VK API را نصب کنید. پس از آشنایی با روش ها، اشاره شد که می توان از آنها چیزهای زیادی به دست آورد نشانه دسترسی، یا به بیان ساده، مجوز koristuvach است.
  1. مجوز OAuth
  2. مجوز مستقیم
  3. مجوز با برنامه های رسمی محلی (موجود در SDK)
حال گزارشی در مورد روش ها به منظور افزایش ارزش آنها:
مجوز با استفاده از مکمل رسمی
این برنامه با یک افزونه رسمی برای اندروید یا iOS یکپارچه شده است که رابطی برای تعامل با API برای آن فراهم می کند.
لطفا، بدون نظر، روشی برای پلتفرم ها و دستورالعمل های دیگر.
مجوز OAuth
لازم است در صورتی که هنوز مجوز حضور در سایت را ندارید، صفحه مجوز را در مرورگر خود باز کنید، لاگین و رمز عبور خود را وارد کرده و اجازه دسترسی به حساب کاربری خود را بدهید.
این روش به دو دلیل جواب نداد: اول اینکه توکن باید به این روش ظرف 24 سال برداشت شود، در غیر این صورت برای بدست آوردن آن، باید بلافاصله به سرور بروید، Lynx را باز کنید، وارد شوید و اجازه دسترسی را بدهید. خیلی خوش دست نیست بله، البته، این یک گزینه است، اما هنوز هم می شد به دنبال چیز دیگری بود.
مجوز مستقیم
انتقال لاگین و رمز عبور مستقیماً با استفاده از درخواست GET به یک URL خاص. توکن به دست آمده بدون رشته و بدون اتصال IP است.
به نظر می رسد که به طور ایده آل مناسب است، گویی که فقط یک «همه» نیست:
توجه! دسترسی به این نوع مجوز را می توان رد کرد مگر اینکه ابتدا با مدیریت VKontakte تماس بگیرید.

برای درخواست دسترسی، باید به خدمات پشتیبانی برای آدرس مراجعه کنید vk.com/support، که شناسه برنامه شما را نشان می دهد.

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


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

Krok 1. مسیرهای دور زدن

من که از این واقعیت گیج شده بودم که برای فانی ها انکار دسترسی به مجوز مستقیم دشوار است، دیگر ایده خود را دوست نداشتم.
با این حال، یک روز خوب، هنگام خواندن صفحه ای از اخبار در برنامه رسمی VK در تبلتی که ویندوز 8 دارد، این فکر به ذهن خطور کرد: چرا مصرف نکنیم. نشانه دسترسیبا این برنامه ها نیز بدون خط و بدون اتصال به IP است. خوب، حتی سردتر است، از آن عبور کنید app_idі app_secretدر ساعت مجوز برنامه رسمی. اگر مجوز، البته پشت پروتکل https نبود، همه چیز خوب بود.
درگیر ایده دزدی app_idі app_secretایده دیگری به ذهن خطور کرد - کلاینت را دیکامپایل کنید و سعی کنید در آنجا شوخی کنید.
گفته شده است - تجزیه شده است: Metro-Addendum VK به زبان C# نوشته شده است، همچنین باید یک دیکامپایلر C# را بشناسید. اولین انتخاب گوگل JetBrains dotPeek است. باشه سعی کنیم
شرم آور است که خود برنامه VK را بشناسیم. چندی پیش، مشخص شد که برنامه های مترو در ویندوز 8.1 در پوشه C: Program Files Windows Apps ذخیره می شوند.
معجزه! از شما دعوت می کنیم وارد شوید و یاد بگیرید:

ابتدا با داشتن حقوق مدیر، روی «ادامه» کلیک کنید:

از آن لذت ببرید، بیایید به برگه "امنیت" برویم، در آنجا می توانیم وظایفی را با مجوز ویژه به "Dodatkovo" اختصاص دهیم، بیایید به "Dodatkovo" برویم:

ما با کلیک بر روی "تغییر"، وارد کردن حساب ایمیل حساب مایکروسافت خود یا نام یک حساب محلی و کلیک بر روی "بررسی نام ها"، نام مالک را به خود تغییر می دهیم. بیایید همه چیز را ذخیره کنیم و اکنون می توانیم با افزونه های مترو خود به پوشه برویم. ما پوشه را با VK پیدا می کنیم، VK.exe را انتخاب می کنیم و آن را به دیکامپایلر خود می فرستیم. ساختار برنامه برای ما عالی است، همه نام‌های توابع و کلاس‌ها ذخیره شده‌اند، برای پیاده‌روی‌های اخیر در کلاس‌ها تابع Authorize را می‌شناسیم که ردیف req را قرار می‌دهد که در آن دو پارامتر فوق‌العاده وجود دارد:

حجاب! شناسه مشتریі client_secretمال ما

client_id و client_secret برای کپی کردن

client_id=3697615
client_secret=AlVXZFMUqyrnABp8ncuU


اکنون می توانیم از طریق مجوز مستقیم وارد شوید!
دعوای سریع با دنیمی شناسه مشتریі client_secretبالاخره متوجه شدم که این تشویقی برای زنده ماندن آنهاست. پس از یک بحث کوتاه، شواهد زیر پس گرفته شد:

بدیهی است که تسیکاوا موقعیت دارد. باشه بیا راحت بشیم و توبه کنیم

Krok 2. قاب Vlasne

قاب بازانی همچنان نوشته شده است. در نتیجه برنامه نویسی در پایتون انجام شد.
این شامل هسته ها و پلاگین هایی است که متصل هستند. هسته شامل مجوز، کار با پایگاه داده sqlite، وارد کردن پلاگین ها، اجرای سرور longpoll است.
پلاگین ها با هسته تعامل نزدیک دارند. درباره ساختار افزونه:
برای اینکه هسته فایل را به عنوان یک افزونه در نظر بگیرد، با تغییر زیر از آن خواسته می شود:

Vkbuddyplugin__ = درست است
برای افزودن پارامترها به فایل کانفیگ، افزونه باید تغییر را رای دهد config_parameters:

Config_parameters = [("name": "parameter_name"، # نام پارامتر "required": False، # bool، که پارامتر "description": "parameter_description"، # شرح پارامتر "default": "parameter_value" است. ، # مقدار پارامتر بعد از "typ" سفارشی: str)، # نوع پارامتر... ]
برای ایجاد جداول در پایگاه داده (از آنجایی که بوی بد هنوز ناپدید نشده است)، باید به تغییر رای دهید sql_tables:

Sql_tables = [("نام": "نام_جدول"، # نام جدول "ساختار":(# ساختار جدول: شرط بندی (نام جدول، نوع جدول) ("id"، int)، ("نام_ستون"، شناور )))، ...]
مجموعه‌ای از کنترل‌کننده‌های استاندارد نیز پیاده‌سازی شده‌اند (هندلرهای جدیدی را می‌توان به افزونه‌ها اضافه کرد، همچنین پیاده‌سازی کنترل‌کننده فرمان متنی).

کنترل کننده های استاندارد:

  • before_auth_handlers- توابع قبل از مجوز فراخوانی می شوند، با یک پارامتر واحد - شی اصلی، که در آن می توانید در صورت تمایل، قبل از مجوز دسترسی به VK API را رد کنید.
  • after_auth_handlers- توابع پس از مجوز، با همین پارامتر واحد فراخوانی می شوند
  • exit_handlersتوابع قبل از خروج فراخوانی می شوند، بنابراین با یک پارامتر واحد
  • longpoll_handlers- هنگام انتخاب سرور longpoll، توابع فراخوانی می شوند، پارامترهای زیادی در اینجا وجود دارد، معنی آنها را می توان در اسناد VK API مشاهده کرد: (vkbuddy، کد، msgid، flags، from_id، ts، subj، متن، پیوست ها )
در github می توانید با نتیجه، نمونه هایی از افزونه ها و موارد دیگر آشنا شوید و همچنین در توسعه شرکت کنید.

از احترام شما سپاسگذارم!

ارسال شده در 23 اکتبر ساعت 11:15 ب.ظ.

برای ارتقای سطح امنیت رکورد ابری، تایید نام مشتری الزامی است

به عنوان بخشی از بررسی امنیتی اضافی، یک سیستم تأیید نام مشتری را به شما معرفی می کنیم که می تواند به اطمینان از امنیت حساب ابری شما در همه حساب های EA، از جمله حساب حساب EA شما، کمک کند.

  • احترام به قبور فیفا:این عملکرد برای دسترسی به سرورهای FIFA Ultimate Team و برنامه های وابسته مورد نیاز است.

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


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

1. به ea.com بروید و وارد شوید.

2. بر روی نام حساب کلیک کنید و سپس مورد " رکورد حساب من" را انتخاب کنید.

3. برگه "امنیت" را انتخاب کنید، جایی که می توانید بخش "تأیید نام مشتری" را پیدا کنید.

4. برای فعال کردن عملکرد تأیید نام مشتری، دکمه «پایین» را فشار دهید، تأییدیه را روی کنترل برق وارد کنید و یکی از گزینه‌های ایمیل، برنامه برای شناسایی بیشتر پیامک برای دریافت کد تأیید را انتخاب کنید.

  • اگر گزینه "E-mail" را به جای پیامک انتخاب کنید، به آنچه برای رکورد ابر آدرس ایمیل مشخص شده است بروید - این آدرس صحیح است تا مرتباً پیام های جدید را بررسی کنید.
  • افزونه‌ای برای شناسایی تبلت‌ها و تلفن‌های همراه به شما امکان می‌دهد کدهای تأیید را در این دستگاه‌ها برای ورود به حساب ابری خود ایجاد کنید.
  • یک نوع دستگاه را از لیست انتخاب کنید و Google Authenticator را برای دستگاه‌های مبتنی بر Apple و Android یا Authenticator را برای دستگاه‌هایی که از سیستم عامل ویندوز استفاده می‌کنند انتخاب کنید.
  • بازیکنانی که FIFA 15 را روی پلی‌استیشن 3 و ایکس‌باکس 360 بازی می‌کنند، نیازی به وارد کردن لاگین‌های امنیتی اضافی در حین تأیید نام مشتری با یک برنامه شناسایی ندارند.

5. اکنون قبل از اینکه بخواهید از یک دستگاه ناشناس وارد سیستم شوید، کد تأیید را دریافت خواهید کرد. هر 90 روز یک کد تأیید را هنگام ورود به سیستم قبل از ثبت نام در دستگاه های مورد اعتماد دریافت خواهید کرد. به این ترتیب، تنها در صورت استفاده از یک کد منحصر به فرد، می توانید دسترسی به حساب EA خود را ممنوع کنید.


اگر نیاز به تأیید نام کاربر دارید، می‌توانید آن را خاموش کنید، به صفحه حساب کاربری بروید و «خاموش کردن» را انتخاب کنید.*

توجه داشته باشید

  • *اگر برای FIFA Ultimate Team بازی می کنید، تأیید حساب خود را فعال نکنید، در غیر این صورت از دسترسی شما منع می شود.
  • بررسی کنید که چه کارهایی انجام دادید و عرضه مخفی و تایید بازی FIFA Ultimate Team را تایید کردید.

برنامه شناسایی خود را تنظیم کنید

مکمل شناسایی بهترین راه برای تأیید ایمن فرد شما است. برنامه احراز هویت را روی دستگاه تلفن همراه خود تنظیم کنید تا بتوانید با استفاده از کد تولید شده برای احراز هویت دوگانه وارد سیستم شوید.

1. برگه "امنیت" را در صفحه "حساب من" باز کنید و بخش "تأیید نام خبرنگار" را بیابید.

2. "کاهش" را فشار دهید تا سیستم "تأیید نام مشتری" فعال شود، کنترل برق را تأیید کنید، "افزودن برای شناسایی" را انتخاب کنید و "ادامه" را فشار دهید.

3. سیستم عامل مورد نیاز خود را بر روی تلفن خود از لیست کشویی انتخاب کنید و کد QR را با یک برنامه اضافی برای خواندن بارکد اسکن کنید، یا برنامه ای را برای گوشی خود در فروشگاه پیدا کنید تا یک تأیید کننده درخواست کنید. در: Google Authenticator در Android و iOS یا Authenticator در Windows Phone.

4. برنامه شناسایی را باز کنید و اضافه کردن یک حساب ابری به صورت دستی را انتخاب کنید.

5. کد QR را اسکن کنید یا کد مخفی را وارد کنید تا برنامه احراز هویت را به حساب EA خود پیوند دهید.

6. راه‌اندازی برنامه‌های شناسایی را با دستور دادن به آنها برای ایجاد کدی برای حساب ابری Electronic Arts و کلیک کردن روی «تأیید نام حساب خود» به پایان برسانید.

اگر می خواهید نام koristuvach را با آینده تأیید کنید:

1. برنامه را برای شناسایی باز کنید.

2. کد شش رقمی حساب الکترونیک آرتز خود را وارد کنید.

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

اگر در صورت نیاز به کد نتوانم سریع با تلفن همراه یا ایمیل خود تماس بگیرم، چه کاری باید انجام دهم؟ چگونه می توانم کدهای اضافی ایجاد کنم؟

اگر تلفن، شناسه یا صفحه الکترونیکی شما در دسترس شما نیست، تنها راه دسترسی به حساب ابری EA از یک رایانه ناشناس استفاده از کدهای اضافی است. مطمئن شوید که آنها را در مکانی که برای شما امن و در دسترس باشد ذخیره کنید. می‌توانید این کدها را در حساب EA خود در بخش کنترل‌های حریم خصوصی مشتری Origin یا به‌صورت آنلاین مشاهده و به‌روزرسانی کنید.

  • روی «ایمنی»، سپس «بازبینی» و «کدهای اضافی» کلیک کنید.*
  • همچنین می‌توانید عملکرد «یک کد جدید را پس از ورود به FIFA Ultimate Team وارد کنید» را افزایش دهید.

*اگر کدهای اضافی شما تمام شده است، می توانید کدهای جدید را در صفحه "Keruvannya oblikovym record" ایجاد کنید.

اطلاعات تماس خود را برای اطمینان از داشتن کد صحیح تأیید کنید.

اگر با کد تأیید نام تاجر مشکل دارید، لطفاً مطمئن شوید که آدرس ایمیل یا شماره تلفن شما به درستی وارد شده باشد. وقتی شناسه خود را تغییر می دهید، بررسی کنید که برنامه به درستی نصب شده باشد.

  • اگر گزینه ارسال کد به ایمیل خود را قبل از فعال کردن تأیید حساب خود انتخاب کرده اید، می توانید آدرس ایمیل خود را در بخش «درباره من» در صفحه «مدیریت حساب» یا از طریق مشتری Origin بررسی و به روز کنید.
  • هنگامی که "افزونه برای شناسایی" را انتخاب کردید، می توانید به سرعت بارکد یا کد QR را اسکن کرده و کد را بین?secret= и& جستجو کنید.
  • اگر قبل از فعال‌سازی تأیید نام مشتری، گزینه ارسال کد از طریق پیامک را انتخاب کرده‌اید، می‌توانید شماره تلفن خود را در قسمت «امنیت» در صفحه حساب مشتری یا از طریق مشتری مبدا بررسی و به‌روزرسانی کنید.
  • تامین و تایید مخفی را ایجاد و تایید کنید.

پس از تأیید اطلاعات تماس خود، این فرصت را خواهید داشت که نام مشتری را برای دریافت کد جدید تأیید کنید.

سلام، بچه ها آماده هستند، امروز توضیح می دهیم که حتی دستکش قهوه ای هم یکباره همراه شماست. در درس امروز یک فرم تماس ساده با استفاده از angularJS و php ایجاد می کنیم.

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

ما Angularjs را برای قسمت جلویی و php در سمت سرور بررسی می کنیم. ما کدی را در PHP می نویسیم که داده ها را از فرم های Angular دریافت کرده و از طریق ایمیل برای مدیر سایت ارسال می کند. یک پوشه با نام "contact-form" در کاتالوگ افزونه های وب خود ایجاد کنید و یک نماد طراحی صفحه HTML - index.html ایجاد کنید. حالا کد زیر را کپی کرده و در فایل index.html قرار دهید.

نسخه ی نمایشی - فرم تماس ساده برای کمک به Angularjs و php

فرم تماس برای کمک در مورد angularjs و PHP


کد پی اچ پی برای ارسال ایمیل

یک صفحه contact.php ایجاد کنید و کد زیر را کپی کنید. در زیر کد پی اچ پی آمده است که با یک فرم زاویه ای و یک ایمیل قدرتمند و به دنبال آدرس ایمیل مشخص شده ترکیب شده است.

< ?php $post_data = file_get_contents("php://input"); $data = json_decode($post_data); //Just to display the form values echo "Name: " . $data->نام؛ پژواک "ایمیل:". $data->email; echo "پیام:". $data->message; // یک ایمیل به $to = $data->email ارسال کرد. $subject = "تست برگه سایت برای تست فرم تماس angularjs"; $message = $data->message; $headers = "از: " . $data->name .. "\r\n" .. "\r\n" . "ایکس میلر: PHP/". phpversion(); //عملکرد پست PHP برای تحمیل ایمیل به ایمیل آدرس ایمیل ($to، $subject، $message، $headers); ?>

"محافظت در برابر حماقت" مجموعه ای از مراحل برای جلوگیری از ورود اطلاعات نادرست به یک فرم است. به عنوان مثال، اگر می خواهید یک عدد مثبت از 0 تا 10 را در یک فیلد وارد کنید، مطمئن شوید که متن یا عددی که در محدوده مشخص شده قرار ندارد وارد نکنید. این عدد ممکن است کمتر از صفر و بیشتر از ده باشد.

چرا وارد کردن اطلاعات نادرست ضروری است؟ این عمدتا به سه دلیل است.

  1. به عنوان مثال، کوریستوواچ با بی احترامی آنچه را که باید نشان داده شود خواند.
  2. در صفحه وب، درخواست برای وارد کردن داده ها مبهم است، بنابراین کوریستوواچوا باید جادو و کار کند، اما واقعاً چه می خواهید؟ با این کار هرگز فرار از افکار خرده فروش و مزدور را فراموش نخواهید کرد.
  3. برای مردم سخت است که دستورالعمل هایی مانند تماس را بپذیرند و سعی کنند کاری اشتباه انجام دهند. چنین کوریستوواچ هایی چیزی شبیه به این می گویند: "آره، لطفا شماره را به من بگویید. اگر حروف را وارد کنم چه اتفاقی می‌افتد؟» پس از آن اطلاعات واضح نادرست را می‌پرسید و تعجب می‌کنید که به چه چیزی منجر شده است.

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

میدان Obov'yazkovo

تمام فیلدهای فرم باید به سرعت قبل از ارسال به سرور پر شوند. به عنوان مثال، به فرم ثبت نام بروید، جایی که باید یک لاگین و رمز عبور وارد کنید. برای فیلدهای الزامی، همانطور که در پیوست 1 نشان داده شده است، ویژگی مورد نیاز انتخاب می شود.

لب به لب 1. ویژگی مورد نیاز است

HTML5 IE 10+ Cr Op Sa Fx

میدان Obov'yazkovo

وارد شدن:

کلمه عبور:

قبل از ارسال فرم باید فیلدهای الزامی پر شود، در غیر این صورت فرم به سرور ارسال نمی شود و مرورگر مراحل را از قبل مشاهده می کند. شما باید اعلان را در مرورگر مشاهده کنید؛ برای مثال، کروم یک راهنمایی نمایش می دهد، همانطور که در شکل نشان داده شده است. 1.

برنج. 1. میدان Obov'yazkovo حفظ نشده است

صحت داده ها

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

  • آدرس های وب ( ) خطا مربوط به پروتکل (http://, https://, ftp://) است.
  • آدرس ایمیل ( ) موظف است حروف یا اعداد را قبل از علامت @، بعد از علامت جدید و سپس نقطه و دامنه سطح اول را با هم مخلوط کند.

مرورگرها ممکن است سیاست های متفاوتی برای تأیید داده های مشتری داشته باشند. به عنوان مثال، اپرا پروتکل http:// را قبل از وارد کردن متن به طور خودکار معرفی می کند، درست مانند مرورگرهای دیگر که نوع جدیدی از کاربر را بررسی می کنند. کروم و اپرا نیاز دارند که یک نقطه در آدرس پستی وجود داشته باشد، اما برای فایرفاکس هیچ تعهدی وجود ندارد.

شکل 2 فرمی را با فیلدهای اجباری نشان می دهد که در آن دو فیلد توسط مرورگر تأیید می شود.

مثال 2. صحت داده ها

HTML5 IE 10+ Cr Op Sa Fx

صحت داده ها

فرم را پر کنید (همه فیلدها الزامی است)

من هستم:

پست الکترونیک:

سایت اینترنتی:

Opera فقط عنصر فرم را برای وجود ویژگی name بررسی می کند.

آنچه Opera هنگام وارد کردن داده های نادرست انتظار دارد در شکل نشان داده شده است. 2.

برنج. 2. هشدار در مورد داده های نادرست

الگوی معرفی

داده ها را نمی توان در یکی از انواع عناصر فرم ذخیره کرد، که نیاز به تغییر فیلد متن دارد. در این حالت ورودی از استاندارد قبلی پیروی می کند. بنابراین، آدرس های IP شامل تعداد بخش هایی است که با یک نقطه از هم جدا شده اند (192.168.0.1)، کد پستی روسیه با شش رقم (124007)، تلفن حاوی کد مکان و تعداد مشخصی از ارقام است که اغلب تقسیم می شوند. با خط فاصله (391 555-341-42) و در. الگوی ورودی را وارد کنید تا بتوانید اطلاعات وارد شده توسط مشتری را به دقت بررسی کنید. که برای آن از ویژگی الگو استفاده می شود و از عبارت منظم برای مقادیر آن استفاده می شود. مقادیر معمولی زیر در جدول گنجانده شده است. 1.

در برنامه 3 از شما خواسته می شود که مقدار رنگ شانزدهم (#ffcc00) را وارد کنید و اگر در این محدوده نباشد، مرورگر اعلان خطا را نمایش می دهد.

مثال 3. الگوی مقدمه

HTML5 IE 10+ Cr Op Sa Fx

مقدمه ای بر رنگ

مقدار رنگ شانزدهم را وارد کنید (با # شروع می شود)

در شکل شکل 3 رفتار مرورگر کروم را نشان می دهد.

برنج. 3. داده های وارد شده با الگو مطابقت ندارد

دامنه اعتبار سنجی

اعتبار سنجی همیشه برای فرم مورد نیاز نیست، به عنوان مثال، توسعه دهنده به استفاده از یک راه حل جهانی در جاوا اسکریپت و تأیید مضاعف توسط مرورگر نیاز دارد، اما دیگر لازم نیست. در چنین شرایطی لازم است اعتبارسنجی اجباری فعال شود. که برای آن ویژگی novalidate تگ تنظیم شده است

. شکل 4 ویژگی مربوطه را نشان می دهد.

مثال 4. زمینه اعتبار سنجی

HTML5 IE 10+ Cr Op Sa Fx

اعتبار جدید

برای یک تگ مشابه، ویژگی formnovalidate اضافه می شود که به دکمه ارسال فرم در این قسمت به تگ اضافه می شود. . این مرد یونیفرم با لب به لب 4 مات و چنین قیافه ای دارد.

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

در صورت خالی شدن فیلدهای الزامی، فرم ارسال نمی شود. Opera، Firefox، Internet Explorer 10+ و Chrome اطلاعات مربوط به لغو را مشاهده می کنند. مثلا، " این فیلد را پر کنید" یا " پر کردن فیلدهای خالی الزامی است».

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

در CSS، می‌توانید از کلاس :focus برای استایل دادن به عناصری که در حال حاضر قابل مشاهده هستند استفاده کنید.

ویژگی مورد نیاز برای هر نوع عنصر ورودی، پشت دکمه، ارسال، تصویر، رنگ و مخفی تنظیم شده است. همه این عناصر برای تولیدکنندگان اهمیت دارند، بنابراین ما یک ویژگی اضافی را اضافه خواهیم کرد. چون از نحو XHTML استفاده می‌کنید، نحو این ویژگی به سادگی مورد نیاز یا الزامی است.

ویژگی ورودی HTML مورد نیاز را به فرم ثبت نام اضافه کنید. فیلدهای زیر الزامی است: نام، آدرس ایمیل، رمز عبور و تاریخ پیش پرداخت:

  • (کمتر از 6 کاراکتر، بدون فاصله)

در تصاویر زیر، می‌توانید نحوه فعال کردن ویژگی HTML مورد نیاز هنگام تلاش برای تأیید فرم را مشاهده کنید:

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

در اپرا نیز وضعیت به همین منوال است.

که در گوگل کروم

سبک سازی زمینه های یکنواخت

می‌توانید هر دو فیلد فرم را با استفاده از شبه کلاس اضافی :required,:optional یا شبه کلاس منفی :not(:required)) استایل کنید. همچنین می‌توانید فیلدهای معتبر و نامعتبر را با استفاده از کلاس‌های شبه :valid و :invalid استایل کنید. با کمک این کلاس های شبه مورد نیاز ورودی HTML، می توانید قبل از پر کردن، به مشتریان خود نشان دهید که کدام فیلدها مورد نیاز است:

ورودی (موقعیت پس‌زمینه: 0% 50%؛ پس‌زمینه-تکرار: بدون تکرار؛ padding-left: 15 پیکسل؛ ) ورودی: مورد نیاز (پس‌زمینه-تصویر: url("../images/required.png")؛ ) ورودی :focus:invalid (background-image: url("../images/invalid.png"); ) input:focus:valid (background-image: url("../images/valid.png")؛ )

در این حالت یک تصویر پس زمینه (ستاره) به فیلدهای صحافی فرم اضافه می کنیم. یک عنصر ورودی نمی تواند شامل محتوایی باشد که در حال تولید است. به همین دلیل است که بهتر است تصویر پس‌زمینه را ویکریستوات کنید. کدام فیلدهای معتبر و نامعتبر را می توان با تصاویر پس زمینه مختلف مشاهده کرد. تغییرات تنها در صورتی قابل مشاهده خواهند بود که کاربر بتواند عنصر فرم نهایی را ببیند.

پیشرفت: فایرفاکس عناصر غیر معتبر را سبک می کند

لطفاً اطمینان حاصل کنید که مرورگر فایرفاکس تمام عناصری را که معتبر نیستند با سبک سازی سنگین (سایه قرمز) ثابت کند، همانطور که در یکی از تصاویر بالا نشان داده شده است. برای فعال کردن این افکت برای HTML مورد نیاز، از کد CSS زیر استفاده کنید:

:invalid (box-shadow: هیچکدام؛ )

نکته: استایلینگ برای مرورگرهای قدیمی‌تر هدف‌گذاری شده است

مرورگرهای قدیمی‌تر مبتنی بر IE8 و IE9 از کلاس شبه :required پشتیبانی نمی‌کنند، اما می‌توانید با استفاده از یک انتخابگر ویژگی اضافی، سبک‌های هدف را اضافه کنید:

ورودی:نیازی، ورودی (تصویر پس زمینه: url("../images/required.png")؛ )

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