اتصال فرم به وب سایت

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

برای اتصال فرم های کریت به وب سایت مراحل زیر را انجام دهید:

1- در مد ادمین بر روی فرم ساخته شده در ربات ضربه بزنید.

2- در منوی مدیریت ربات بر روی تغییر اتصال ضربه بزنید.

3- در منوی ظاهر شده بر روی کلید اتصال به وب ضربه بزنید.

4- آدرسی که قرار است نتایح به آن اسال شود را در این قسمت وارد کنید.

   توجه: برای امنیت بیشتر بهتر است که از ssl استفاده شود.

5- فرم به وب سایت شما متصل شده است.

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

برای اطلاعات بیشتر در خصوص نحوه تغییر تاییدیه فرم ها به راهنمای تغییر وضعیت تاییدیه فرم ها مراجعه کنید.

مستندات پردازش فرم ها

برای اینکه شما بتوانید فرم های خود را پردازش کنید لازم است از استاندارهای زیر پیروی کنید.

1- نحوه ارسال مقادیر به وب سایت

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

حالت اول:در صورتی که شما برای فرم خود فرمت بندی ایجاد نکرده باشید، شما می توانید به صورت زیر به مقادیر ارسالی دسترسی داشته باشید:

$_POST['question-1'] = ANSWER_TO_QUESTION_1;

$_POST['question-2'] = ANSWER_TO_QUESTION_2;

$_POST['question-3'] = ANSWER_TO_QUESTION_3;

...

$_POST['question-n'] = ANSWER_TO_QUESTION_n;

حالت دوم: شما همچنین می توانید نام متغیرهای ارسالی را با تغییر فرمت بندی متن نهایی ارسالی تعیین کنید.

برای این کار بر روی کلید تغییر فرمت بندی متن نهایی ارسالی در منوی مدیریتی فرم ضربه بزنید. سپس نام متغیر ها را به ترتیب هر کدام در یک خط وارد کنید. به عنوان نمونه فرمت زیر را می توان در تعیین کرد:

first_name

last_name

email_address

...

variable_name_for_question_n

که در این صورت کریت به صورت خودکار نام متغیر برای پاسخ اول را first_name، برای پاسخ دوم را last_name و ... قرار می دهد. در این حالت شما در برنامه هود می توانید به صورت زیر به مقادیر دسترسی داشته باشید:

$_POST['first_name'] = ANSWER_TO_QUESTION_1;

$_POST['last_name'] = ANSWER+TO_QUESTION_2;

$_POST['email_address'] = ANSWER_TO_QUESTION_3;

...

$_POST['variable_name_for_question_n'] = ANSWER_TO_QUESTION_n

  توجه کنید که فرمت بندی متن نهایی در مورد اتصال فرم به وب سایت با حالت های دیگر متفاوت است و در این حالت نیازی به استفاده از عباراتی به شکل ANSWER1 و ... نیست. تنها کافی است نام متغیر ها را به ترتیب هر کدام در یک خط وارد کنید.

2- نحوه بازگشت مقادیر از وب سایت

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

header('Content-type: application/json');

 

$processResult = some_process_function($_POST);

 

if ($processResult) $data = ['success' => 'Your answers processed successfully!' ];

else $data = ['error' => 'Your answers failed to be processed!!' ];

 

echo json_encode($data);

3- مقادیر اضافی ارسالی به همراه فرم

هر بار که فرم به آدرس وب سایت شما ارسال می شود، مقادیر دیگری نیز به همراه فرم ارسال خواهد شد که شما می توانید از این مقادیر به صورت زیر استفاده کنید:

$_POST['tg_unique_code']   = USER_TELEGRAM_ACCOUNT_UNIQUE_ID;

$_POST['tg_firstname']        = USER_TELEGRAM_ACCOUNT_FIRST_NAME;

$_POST['tg_lastname']         = USER_TELEGRAM_ACCOUNT_LAST_NAME;

$_POST['tg_username']        = USER_TELEGRAM_ACCOUNT_USERNAME;

$_POST['tg_date']                = USER_FIRST_ANSWER_TIMESPAN_IN_ECHO_TIME;

$_POST['tg_bot']                  = ROBOT_ID_WITHOUT_@;

$_POST['tg_form']               = THE_NAME_OF_BUTTON_TO_WHICH_FORM_IS_CONNECTED;

4-بررسی کاربر پیش از پر کردن فرم

شما می توانید قبل از اینکه کاربر فرم خود را پر کند از کریت بخواهید آیدی تلگرامی او را در متغیری تحت عنوان tg_unique_code به آدرس خاصی ارسال کند تا کریت بر اساس خروجی که از آن آدرس دریافت می کند در خصوص صدور مجوز پر کردن فرم تصمیم گیری نماید. برای این کار کافی است پیام آغازین فرم را به صورت CHECK   YOUR_URL_HERE تغییر داده که در این عبارت به جای YOUR_URL_HERE آدرس وب سایت شما قرار می گیرد. سپس در وب سایت خود یک خروجی به صورت json شامل یکی از مقادیر success و یا error به کریت برگردانید. آنگاه کریت در صورتی که مقدار بازگشتی شامل success باشد به کاربر اجازه می دهد که فرم را پر کند و مقدار موجود در success را به عنوان پیام آغازین به کاربر نشان خواهد داد و در صورتی که شامل مقدار error باشد اجازه پر کردن فرم را به کاربر نخواهد داد و مقدار موجود در error را برای کاربر اسال می کند.

همچنین درصورتی که به همراه sucess متغیری به نام start به کریت ارسال کنید، کریت عنوان کلید شروع پاسخگویی را به مقدار ارسال شده تغییر خواهد داد.

یک نمونه از کد PHP بررسی کاربر در زیر قابل مشاهده است:

header('Content-type: application/json');

 

if (check_user($_POST['tg_unique_code'])) $data = ['success' => 'You can fill the form!', 'start' => 'Start here!' ];

else $data = ['error' => 'Your can not fill this form, sorry!' ];

 

echo json_encode($data);