زمان کنونی: ۱۰-۱-۱۴۰۳, ۰۵:۰۴ صبح درود مهمان گرامی! (ورودثبت نام)


ارسال پاسخ 
 
امتیاز موضوع:
  • 0 رأی - میانگین امتیازات: 0
  • 1
  • 2
  • 3
  • 4
  • 5
شرط گذاری در php با دریافت پیام های متفاوت
۵-۹-۱۳۹۷, ۰۷:۴۸ صبح
ارسال: #1
شرط گذاری در php با دریافت پیام های متفاوت
سلام
من ب 3 تا شرط تو زبان php نیاز دارم
از ی سایتی شماره مجازی میگیرم وارد اپ میکنم
حالا دستور ارسال کد رو میفرستم و سایت بهم جواب میده:

اگه کد اماده باشه ب من این جواب رو میده:

1|WhatsApp code 123-456

اگه کد هنوز نرسیده باشه این جواب رو میده:

Message|not receive

اگه خیلی دیر دکمه دریافت کد زده بشه یک همچین جوابی داده میشه:

Message|mobile number not found!

حالا من بر حسب این جواب ها باید شرط مشخص کنم؟؟

چون میخوام با دریافت هر کدومش پاسخ خاصی برای کاربر تعریف کنم
امضاء hamzeh12hh
دیدن لینک ها برای شما امکان پذیر نیست. لطفا ثبت نام کنید یا وارد حساب خود شوید تا بتوانید لینک ها را ببینید.

دیدن لینک ها برای شما امکان پذیر نیست. لطفا ثبت نام کنید یا وارد حساب خود شوید تا بتوانید لینک ها را ببینید.
یافتن تمامی ارسال‌های این کاربر
نقل قول این ارسال در یک پاسخ بازگشت به بالا
۵-۹-۱۳۹۷, ۰۶:۰۴ عصر
ارسال: #2
RE: شرط گذاری در php با دریافت پیام های متفاوت
سلام

چون فقط رشته بر می گردونه میتونید پاسخی که بر می گردونه رو تو یه متغیر ذخیره کنید و اینجوری کد بزنید بزنید
if($answer='Message|not receive'){

---------
}
elseif(
$answer='Message|mobile number not found!'){-------}
else{
------------------------------------


یا اینکه ازتابع switch استفاده کنید.
امضاء alim123
طراحی قالب جوملا -طراحی کامپوننت و ماژول
طراحی سایت - گرافیک
تماس :09156611674 ایدی :amasroor2003
مشاهده‌ی وب‌سایت کاربر یافتن تمامی ارسال‌های این کاربر
نقل قول این ارسال در یک پاسخ بازگشت به بالا
 سپاس شده توسط hamzeh12hh
۵-۹-۱۳۹۷, ۰۷:۱۴ عصر
ارسال: #3
RE: شرط گذاری در php با دریافت پیام های متفاوت
بله این کاملا منطقیه
و یک سوال دیگه
من شک دارم ک همیشه در صورت عدم ارسال موفق کد اون دوتا پیام رو بده چون اینها رو خودم شرط رو یک گذاشتم و در شرایط متفاوت مقدار متغیر رو خروجی گرفتم
ولی در مورد پیام موفق همیشه همیشه ب همون سبکه

و اینم پاسخ پشتیبانی سایت:

if receive code will return 1|xxxxx
from 1|
you can judge this

بر حسب این چطور میشه قضاوت کرد؟
البته خب در این صورت فقط ب صورت دو شرطی میشه عمل کرد
امضاء hamzeh12hh
دیدن لینک ها برای شما امکان پذیر نیست. لطفا ثبت نام کنید یا وارد حساب خود شوید تا بتوانید لینک ها را ببینید.

دیدن لینک ها برای شما امکان پذیر نیست. لطفا ثبت نام کنید یا وارد حساب خود شوید تا بتوانید لینک ها را ببینید.
یافتن تمامی ارسال‌های این کاربر
نقل قول این ارسال در یک پاسخ بازگشت به بالا
 سپاس شده توسط شماره مجازی
۶-۹-۱۳۹۷, ۰۲:۱۳ صبح
ارسال: #4
RE: شرط گذاری در php با دریافت پیام های متفاوت
البته همون روشی ک گفتین رو استفاده کردم فعلا داره جواب میده و فک نکنم متن اون پیام ها متغیر باشه

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


like this

$answerarr=explode("|",$answer);
if (
$answerarr[0]==1){
echo 
$answerarr[1];
}else{
echo 
$answerarr[1];

امضاء hamzeh12hh
دیدن لینک ها برای شما امکان پذیر نیست. لطفا ثبت نام کنید یا وارد حساب خود شوید تا بتوانید لینک ها را ببینید.

دیدن لینک ها برای شما امکان پذیر نیست. لطفا ثبت نام کنید یا وارد حساب خود شوید تا بتوانید لینک ها را ببینید.
یافتن تمامی ارسال‌های این کاربر
نقل قول این ارسال در یک پاسخ بازگشت به بالا
۶-۹-۱۳۹۷, ۰۲:۳۱ صبح
ارسال: #5
RE: شرط گذاری در php با دریافت پیام های متفاوت
ی سوال دیگه؟
من وقتی شماره دریافت میکنم شماره ها ب صورت عددی مثلا 956554 برگردونده میشه
برای تحویل شماره در صورتی ک دریافت موفق باشه از این شرط استفاده کردم


if(is_numeric($number)){
echo 
$number


ولی اشکالی ک داره اینه ک این شرط برای برخی کشور ها اجرا نمیشه و وقتی شرط رو برابر true قرار میدم برای همون کشور ها هم اجرا میشه و شماره رو میده بهم
اشکال کجاست؟؟
امضاء hamzeh12hh
دیدن لینک ها برای شما امکان پذیر نیست. لطفا ثبت نام کنید یا وارد حساب خود شوید تا بتوانید لینک ها را ببینید.

دیدن لینک ها برای شما امکان پذیر نیست. لطفا ثبت نام کنید یا وارد حساب خود شوید تا بتوانید لینک ها را ببینید.
یافتن تمامی ارسال‌های این کاربر
نقل قول این ارسال در یک پاسخ بازگشت به بالا
۶-۹-۱۳۹۷, ۰۷:۳۳ صبح
ارسال: #6
RE: شرط گذاری در php با دریافت پیام های متفاوت
با درود!

با توجه به مواردی که فرمودید یک سیستم بسیار ساده رو برای تایید دریافت پیام استفاده میکنه یعنی هرگاه عدد 1 برگردونده بشه پیام به درستی دریافت شده و نمایش داده میشه در غیر این صورت پیام خطا نمایش داده میشه
همون طور که تو سایتش هم آورده: All error will response start from Message همه پیغام های خطا با عبارت Message شروع میشه بنابراین شما هر جا این عبارت رو دریافت کردید حتما خطایی رخ داده به نظرم میتونید شرط هاتون رو بر همین اساس استوار کنید کاری که در کد پیشنهادی خودشون هم انجام شده:
$answerarr=explode("|",$answer);
if ($answerarr[0]==1){
echo $answerarr[1]; و سایر دستوراتی که در صورت دریافت اس ام اس باید انجام بشه
}else{
echo $answerarr[1]; و سایر دستوراتی که در صورت دریافت پیام خطا باید انجام بشه
}
هر جا که عدد 1 دریافت نشه پیام خطای مورد نظر رو نمایش میده در واقع به کمک دستور explode طرف چپ و راست علامت | رو از هم جدا می کنه. اگه سمت چپ عدد 1 دریافت شده باشه جواب اس ام اس و اگر چیز دیگری دریافت شده باشه پیغام خطا رو نمایش میده.

در مورد دریافت خود شماره تلفن هم بهتره از همین سیستم استفاده کنید یعنی ببینید آیا عبارت message رو دریافت کردید یا نه، اگه دریافت کردید حتما خطایی در کار بوده، اگر نه شماره دریافت شده رو نمایش بدید

باز طبق اونچه در سایت نوشته شده اگه دریافت شماره با خطا همراه باشه این عبارت رو دریافت میکنید Message|Not got mibile
امضاء hsmtech
دیدن لینک ها برای شما امکان پذیر نیست. لطفا ثبت نام کنید یا وارد حساب خود شوید تا بتوانید لینک ها را ببینید.
مشاهده‌ی وب‌سایت کاربر یافتن تمامی ارسال‌های این کاربر
نقل قول این ارسال در یک پاسخ بازگشت به بالا
 سپاس شده توسط hamzeh12hh
۶-۹-۱۳۹۷, ۰۷:۵۹ صبح
ارسال: #7
RE: شرط گذاری در php با دریافت پیام های متفاوت
مساله اینجاست ک در بخش دریافت شماره ظاهرا خطایی وجود نداره ولی شرطی ک من قرار دادم برابر true قرار نمیگیره و قسمت else اجرا میشه
با این توضیحات ک اگه ب صورت دستی شرط رو برابر 1 قرار بدم شماره ب صورت کاملا عددی دریافت میشه و تحویل داده میشه یعنی مشکل از شرط هست، از طرفی هم با همون شرط صحیح بودن مقدار دریافتی، برای بعضی دیگه از کشور ها شماره ارسال میشه
و تنها حدثی ک من میزنم اینه ک شاید همون شماره برای برخی کشور ها ب صورت عددیه و برای بعضی دیگه رشته شناخته میشه که چون من با php دارم می نویسم باید خودکار عدد تشخیصش بده دیگه
امضاء hamzeh12hh
دیدن لینک ها برای شما امکان پذیر نیست. لطفا ثبت نام کنید یا وارد حساب خود شوید تا بتوانید لینک ها را ببینید.

دیدن لینک ها برای شما امکان پذیر نیست. لطفا ثبت نام کنید یا وارد حساب خود شوید تا بتوانید لینک ها را ببینید.
یافتن تمامی ارسال‌های این کاربر
نقل قول این ارسال در یک پاسخ بازگشت به بالا
۷-۹-۱۳۹۷, ۰۴:۵۶ صبح
ارسال: #8
RE: شرط گذاری در php با دریافت پیام های متفاوت
نقل قول: باز طبق اونچه در سایت نوشته شده اگه دریافت شماره با خطا همراه باشه این عبارت رو دریافت میکنید Message|Not got mobile

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

if ($answer=="Message|Not got mobile"){
دستوراتی که در صورت عدم دریافت شماره باید انجام بشه
}else{
دستوراتی که در صورت دریافت شماره باید انجام بشه
}
امضاء hsmtech
دیدن لینک ها برای شما امکان پذیر نیست. لطفا ثبت نام کنید یا وارد حساب خود شوید تا بتوانید لینک ها را ببینید.
مشاهده‌ی وب‌سایت کاربر یافتن تمامی ارسال‌های این کاربر
نقل قول این ارسال در یک پاسخ بازگشت به بالا
 سپاس شده توسط hamzeh12hh
۸-۹-۱۳۹۷, ۱۰:۴۷ عصر
ارسال: #9
RE: شرط گذاری در php با دریافت پیام های متفاوت
تشکر از جناب alim123 و hsmtech عزیز
مشکل این قسمت حل شد
و با روش هایی ک مطرح شد برای متصل شدن ب پنل های دیگه هم سعی میکنم انجام بدم.
ولی الان میخوام این قسمت از سورس رو ب عنوان لایسنس روی سرور خودم نگه دارم و کسانی ک سورس رو بهشون دادم با فرستادن متغیر هایی ک لازم دارم ب سمت سرور من پردازشها انجام بشه و نتایج براشون برگرده
ب چ صورت باید عمل کنم؟
امضاء hamzeh12hh
دیدن لینک ها برای شما امکان پذیر نیست. لطفا ثبت نام کنید یا وارد حساب خود شوید تا بتوانید لینک ها را ببینید.

دیدن لینک ها برای شما امکان پذیر نیست. لطفا ثبت نام کنید یا وارد حساب خود شوید تا بتوانید لینک ها را ببینید.
یافتن تمامی ارسال‌های این کاربر
نقل قول این ارسال در یک پاسخ بازگشت به بالا
۱۳-۹-۱۳۹۷, ۰۵:۱۶ صبح
ارسال: #10
RE: شرط گذاری در php با دریافت پیام های متفاوت
ی سوال دیگه:
این پاسخ رو که از یک سایت دیگه هست چطوری تحلیل کنم؟

{"response":"1","number":"9932137041","id":12554744,
"again":0,"text":null,"extra":"","karma":47.740000000000023,"pass":null,
"sms":null,"balanceOnPhone":0,"service":null,"country":null,
"CountryCode":"+7","branchId":0,"callForwarding":false
امضاء hamzeh12hh
دیدن لینک ها برای شما امکان پذیر نیست. لطفا ثبت نام کنید یا وارد حساب خود شوید تا بتوانید لینک ها را ببینید.

دیدن لینک ها برای شما امکان پذیر نیست. لطفا ثبت نام کنید یا وارد حساب خود شوید تا بتوانید لینک ها را ببینید.
یافتن تمامی ارسال‌های این کاربر
نقل قول این ارسال در یک پاسخ بازگشت به بالا
ارسال پاسخ 


پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 1 مهمان