נפתר עדכון הגדרות בשלוחה
-
@קו-כשר-מערכות-טל נראה לי שעובד ומה לגבי הכנסת נתונים בהגדרת לדוג' זה
api_add_0=text=type=menu%26digits=איך אני עושה שהמאזין יבחר את כמות הספרות? -
@121244 כתב בעדכון הגדרות בשלוחה:
@הלי זה הקוד אין לי מה לומר עוד....
<?php //אין להסיר את הקרדיט $did = $_REQUEST['did']; $password = $_REQUEST['pass']; $path = $_REQUEST['path']; $text = "ההגדרה"; //להכנסת מספר הגדרות יחד יש להחליף ל מעבר שורה ב %26 if($did == null){print "read=t-אנא הקישו את מספר המערכת שברצונכם להגדיר=did,yes,10,9,15,Digits,yes,,,,,,,"; exit(); } elseif($password == null){print "read=t-אנא הקישו את סיסמת הניהול של המערכת שברצונכם להגדיר=pass,yes,100,1,24,Digits,,,,,,,,"; exit(); } elseif($path== null){print "read=t-אנא הקישו את מספר השלוחה וסולמית בסיום=path,no,10000,0,14,Alpha,no,no,*/,,,ok,,"; exit(); } $url = json_decode(file_get_contents("https://www.call2all.co.il/ym/api/UpdateExtension?token={$did}:{$password}&path=ivr2:{$path}&{$text}&"), true); $status = $url['responseStatus']; if($status == "OK"){ print "id_list_message=t-ההגדרה עודקנה בהצלחה בשלוחה .d-$path.t-תודה שהשתמשתם בשרותינו להזמנת פיתוחים חייגו 0733515252"; exit(); }else{ print "id_list_message=t-חלה שגיאה בהגדרת המערכת, יתכן שהמספר מערכת או הסיסמא שגויים, או שהשרת נחסם מימות המשיח עד לשלושים דקות הבאות &go_to_folder=hangup"; exit(); } exit(); ?>
הדרך הנכונה למנוע שגיאות היא לבדוק האם הערך התקבל כבר ב-
$_REQUEST
או לא
חישבו על ה-$_REQUEST
כמערך, כשאתם מנסים לגשת בשורות הראשונות לערך שעדיין לא התקבל מהמשתמש זו טעות, וגם אם זה לא יודפס על המסך זה ישמר בדו"ח השגיאות של PHP בשרתהדרך הנכונה במקרה כזה היא להשתמש בפונקציה
isset
כך:<?php //אין להסיר את הקרדיט $text = "ההגדרה"; //להכנסת מספר הגדרות יחד יש להחליף ל מעבר שורה ב %26 if( !isset( $_REQUEST['did'] ) ) exit( "read=t-אנא הקישו את מספר המערכת שברצונכם להגדיר=did,yes,10,9,15,Digits,yes,,,,,,," ); $did = $_REQUEST['did']; if( !isset( $_REQUEST['pass'] ) ) exit( "read=t-אנא הקישו את סיסמת הניהול של המערכת שברצונכם להגדיר=pass,yes,100,1,24,Digits,,,,,,,," ); $password = $_REQUEST['pass']; if( !isset( $_REQUEST['path'] ) ) exit( "read=t-אנא הקישו את מספר השלוחה וסולמית בסיום=path,no,10000,0,14,Alpha,no,no,*/,,,ok,," ); $path = $_REQUEST['path']; $url = json_decode(file_get_contents("https://www.call2all.co.il/ym/api/UpdateExtension?token={$did}:{$password}&path=ivr2:{$path}&{$text}&"), true); $status = $url['responseStatus']; if($status == "OK"){ exit( "id_list_message=t-ההגדרה עודקנה בהצלחה בשלוחה .d-$path.t-תודה שהשתמשתם בשרותינו להזמנת פיתוחים חייגו 0733515252" ); }else{ exit( "id_list_message=t-חלה שגיאה בהגדרת המערכת, יתכן שהמספר מערכת או הסיסמא שגויים, או שהשרת נחסם מימות המשיח עד לשלושים דקות הבאות &go_to_folder=hangup" ); } exit;
-
@הלי כתב בעדכון הגדרות בשלוחה:
@121244 תראה אני ניסיתי להיכנס אליך מהדפדפן ואתה חייב להבין שיש משהו בשרת שלך שגורם שקודם כל מודפסים השגיאות אני לא יודע איך מבטלים את זה אבל מה שבטוח שבצורה הזאת לימות אין מה לעשות עם התשובה הזאת כי אין שם בהתחלה תשובה תיקנית מצרף לך תמונה שתבין את כוונתי
ימות המשיח בודקים תמיד את ההתחלה ותשובת ה READ חייבת להופיע מיד בהתחלה חוץ מזה יתכן והכל טוב ,
על מנת לראות שאני צודק תוכל להיכנס לקו שלך בתיקיית לוג ושם בקובץ לוגאפאי באנגלית ושם תראה שהתשובה שמופיעה שם מהשרת זה רק ירידת שורה (יותר קל למצוא את הקובץ באתר החדש שם זה תמיד מופיע האחרון ברשימה)
בברכהאגב מתנצל לא הייתי על המחשב עד עכשיולגבי הבעיה בשרת יש מודלים שכן עובדים לי כגון זה יש לזה הסבר?
<?php $from=@$_GET['from']; $to=@$_GET['to']; $did=@$_GET['did']; $password=@$_GET['password']; if($did == null){print "read=t-אנא הקישוא את מספר המערכת שברצונכם לבדוק=did,yes,10,9,15,Digits,yes,,,,,,,"; exit(); } elseif($password == null){print "read=t-אנא הקישוא את סיסמת הניהול של המערכת שברצונכם להגדיר=password,yes,100,1,24,Digits,,,,,,,,"; exit(); } elseif($from==null){print "read=t-הקש את התאריך ממנו יתחיל לבדוק בשמונה ספרות שנה חודש ויום=from,,8,8,Date,,,*/,"; exit(); } elseif($to==null){print "read=t-הקש את התאריך עד שם יבדוק בשמונה ספרות שנה חודש ויום=to,,8,8,Date,,,*/,"; exit(); } $from1 = mb_substr($from, 0, 4, "UTF-8"); $from2 = mb_substr($from, 4, 2, "UTF-8"); $from3 = mb_substr($from, 6, 2, "UTF-8"); $to1 = mb_substr($to, 0, 4, "UTF-8"); $to2 = mb_substr($to, 4, 2, "UTF-8"); $to3 = mb_substr($to, 6, 2, "UTF-8"); $from4="{$from1}-{$from2}-{$from3}"; $to4="{$to1}-{$to2}-{$to3}"; $url1="https://www.call2all.co.il/ym/api/GetIncomingSum?token={$did}:{$password}&from={$from4}&to={$to4}"; $url = json_decode(file_get_contents("$url1"), true); $status = $url['responseStatus']; $direct=$url['direct']; $transferIn=$url['transferIn']; $transferOut=$url['transferOut']; $A111=$direct+$transferIn-$transferOut; if($status == "OK"){ $direct = str_replace("." , ".noop-" , $direct); $transferIn = str_replace("." , ".noop-" , $transferIn); $transferOut = str_replace("." , ".noop-" , $transferOut); $A111 = str_replace("." , ".noop-" , $A111); print "id_list_message=t-דקות בחיוג ישיר למערכת.n-$direct.t-דקות ממערכות אחרות.n-$transferIn.t-דקות שיצאו למערכות אחרות.n-$transferOut.t-סך כלל הדקות שנותרו הוא.n-$A111&"; exit(); }else{ print "id_list_message=m-1425 &go_to_folder=hangup"; exit(); } exit(); ?>
תיקנתי משהו בשרת יתכן וזה היתה הבעיה ואגב זה כבר עובד מצוין
-
-
@121244 כתב בעדכון הגדרות בשלוחה:
@הלי כתב בעדכון הגדרות בשלוחה:
@121244 תראה אני ניסיתי להיכנס אליך מהדפדפן ואתה חייב להבין שיש משהו בשרת שלך שגורם שקודם כל מודפסים השגיאות אני לא יודע איך מבטלים את זה אבל מה שבטוח שבצורה הזאת לימות אין מה לעשות עם התשובה הזאת כי אין שם בהתחלה תשובה תיקנית מצרף לך תמונה שתבין את כוונתי
ימות המשיח בודקים תמיד את ההתחלה ותשובת ה READ חייבת להופיע מיד בהתחלה חוץ מזה יתכן והכל טוב ,
על מנת לראות שאני צודק תוכל להיכנס לקו שלך בתיקיית לוג ושם בקובץ לוגאפאי באנגלית ושם תראה שהתשובה שמופיעה שם מהשרת זה רק ירידת שורה (יותר קל למצוא את הקובץ באתר החדש שם זה תמיד מופיע האחרון ברשימה)
בברכהאגב מתנצל לא הייתי על המחשב עד עכשיולגבי הבעיה בשרת יש מודלים שכן עובדים לי כגון זה יש לזה הסבר?
<?php $from=@$_GET['from']; $to=@$_GET['to']; $did=@$_GET['did']; $password=@$_GET['password']; if($did == null){print "read=t-אנא הקישוא את מספר המערכת שברצונכם לבדוק=did,yes,10,9,15,Digits,yes,,,,,,,"; exit(); } elseif($password == null){print "read=t-אנא הקישוא את סיסמת הניהול של המערכת שברצונכם להגדיר=password,yes,100,1,24,Digits,,,,,,,,"; exit(); } elseif($from==null){print "read=t-הקש את התאריך ממנו יתחיל לבדוק בשמונה ספרות שנה חודש ויום=from,,8,8,Date,,,*/,"; exit(); } elseif($to==null){print "read=t-הקש את התאריך עד שם יבדוק בשמונה ספרות שנה חודש ויום=to,,8,8,Date,,,*/,"; exit(); } $from1 = mb_substr($from, 0, 4, "UTF-8"); $from2 = mb_substr($from, 4, 2, "UTF-8"); $from3 = mb_substr($from, 6, 2, "UTF-8"); $to1 = mb_substr($to, 0, 4, "UTF-8"); $to2 = mb_substr($to, 4, 2, "UTF-8"); $to3 = mb_substr($to, 6, 2, "UTF-8"); $from4="{$from1}-{$from2}-{$from3}"; $to4="{$to1}-{$to2}-{$to3}"; $url1="https://www.call2all.co.il/ym/api/GetIncomingSum?token={$did}:{$password}&from={$from4}&to={$to4}"; $url = json_decode(file_get_contents("$url1"), true); $status = $url['responseStatus']; $direct=$url['direct']; $transferIn=$url['transferIn']; $transferOut=$url['transferOut']; $A111=$direct+$transferIn-$transferOut; if($status == "OK"){ $direct = str_replace("." , ".noop-" , $direct); $transferIn = str_replace("." , ".noop-" , $transferIn); $transferOut = str_replace("." , ".noop-" , $transferOut); $A111 = str_replace("." , ".noop-" , $A111); print "id_list_message=t-דקות בחיוג ישיר למערכת.n-$direct.t-דקות ממערכות אחרות.n-$transferIn.t-דקות שיצאו למערכות אחרות.n-$transferOut.t-סך כלל הדקות שנותרו הוא.n-$A111&"; exit(); }else{ print "id_list_message=m-1425 &go_to_folder=hangup"; exit(); } exit(); ?>
תיקנתי משהו בשרת יתכן וזה היתה הבעיה ואגב זה כבר עובד מצוין
מה תיקנת?
הוספת @?
@שואל-ברצינות@שואל-ברצינות כתב בעדכון הגדרות בשלוחה:
הדרך הנכונה למנוע שגיאות היא לבדוק האם הערך התקבל כבר ב-$_REQUEST או לא
חישבו על ה-$_REQUEST כמערך, כשאתם מנסים לגשת בשורות הראשונות לערך שעדיין לא התקבל מהמשתמש זו טעות, וגם אם זה לא יודפס על המסך זה ישמר בדו"ח השגיאות של PHP בשרתזה משנה אם משתמשים ב "$_GET" או ב "$_REQUEST['did'];"
כי עשה רושם שבמודל שעבד על GET זה כן עבד ובשני לא
לפחות בהתחלה. -
@הלי כתב בעדכון הגדרות בשלוחה:
זה משנה אם משתמשים ב "$_GET" או ב "$_REQUEST['did'];"
כי עשה רושם שבמודל שעבד על GET זה כן עבד ובשני לא
לפחות בהתחלה.בשתי המקרים השגיאה תירשם בדוחו"ת של PHP
ההבדל הוא אם הגדרת בקובץ במפורש להציג שגיאות -
@שואל-ברצינות שאז?
-
-
@הלי כתב בעדכון הגדרות בשלוחה:
@121244 כתב בעדכון הגדרות בשלוחה:
@הלי כתב בעדכון הגדרות בשלוחה:
@121244 תראה אני ניסיתי להיכנס אליך מהדפדפן ואתה חייב להבין שיש משהו בשרת שלך שגורם שקודם כל מודפסים השגיאות אני לא יודע איך מבטלים את זה אבל מה שבטוח שבצורה הזאת לימות אין מה לעשות עם התשובה הזאת כי אין שם בהתחלה תשובה תיקנית מצרף לך תמונה שתבין את כוונתי
ימות המשיח בודקים תמיד את ההתחלה ותשובת ה READ חייבת להופיע מיד בהתחלה חוץ מזה יתכן והכל טוב ,
על מנת לראות שאני צודק תוכל להיכנס לקו שלך בתיקיית לוג ושם בקובץ לוגאפאי באנגלית ושם תראה שהתשובה שמופיעה שם מהשרת זה רק ירידת שורה (יותר קל למצוא את הקובץ באתר החדש שם זה תמיד מופיע האחרון ברשימה)
בברכהאגב מתנצל לא הייתי על המחשב עד עכשיולגבי הבעיה בשרת יש מודלים שכן עובדים לי כגון זה יש לזה הסבר?
<?php $from=@$_GET['from']; $to=@$_GET['to']; $did=@$_GET['did']; $password=@$_GET['password']; if($did == null){print "read=t-אנא הקישוא את מספר המערכת שברצונכם לבדוק=did,yes,10,9,15,Digits,yes,,,,,,,"; exit(); } elseif($password == null){print "read=t-אנא הקישוא את סיסמת הניהול של המערכת שברצונכם להגדיר=password,yes,100,1,24,Digits,,,,,,,,"; exit(); } elseif($from==null){print "read=t-הקש את התאריך ממנו יתחיל לבדוק בשמונה ספרות שנה חודש ויום=from,,8,8,Date,,,*/,"; exit(); } elseif($to==null){print "read=t-הקש את התאריך עד שם יבדוק בשמונה ספרות שנה חודש ויום=to,,8,8,Date,,,*/,"; exit(); } $from1 = mb_substr($from, 0, 4, "UTF-8"); $from2 = mb_substr($from, 4, 2, "UTF-8"); $from3 = mb_substr($from, 6, 2, "UTF-8"); $to1 = mb_substr($to, 0, 4, "UTF-8"); $to2 = mb_substr($to, 4, 2, "UTF-8"); $to3 = mb_substr($to, 6, 2, "UTF-8"); $from4="{$from1}-{$from2}-{$from3}"; $to4="{$to1}-{$to2}-{$to3}"; $url1="https://www.call2all.co.il/ym/api/GetIncomingSum?token={$did}:{$password}&from={$from4}&to={$to4}"; $url = json_decode(file_get_contents("$url1"), true); $status = $url['responseStatus']; $direct=$url['direct']; $transferIn=$url['transferIn']; $transferOut=$url['transferOut']; $A111=$direct+$transferIn-$transferOut; if($status == "OK"){ $direct = str_replace("." , ".noop-" , $direct); $transferIn = str_replace("." , ".noop-" , $transferIn); $transferOut = str_replace("." , ".noop-" , $transferOut); $A111 = str_replace("." , ".noop-" , $A111); print "id_list_message=t-דקות בחיוג ישיר למערכת.n-$direct.t-דקות ממערכות אחרות.n-$transferIn.t-דקות שיצאו למערכות אחרות.n-$transferOut.t-סך כלל הדקות שנותרו הוא.n-$A111&"; exit(); }else{ print "id_list_message=m-1425 &go_to_folder=hangup"; exit(); } exit(); ?>
תיקנתי משהו בשרת יתכן וזה היתה הבעיה ואגב זה כבר עובד מצוין
מה תיקנת?
הוספת @?
@שואל-ברצינות@שואל-ברצינות כתב בעדכון הגדרות בשלוחה:
הדרך הנכונה למנוע שגיאות היא לבדוק האם הערך התקבל כבר ב-$_REQUEST או לא
חישבו על ה-$_REQUEST כמערך, כשאתם מנסים לגשת בשורות הראשונות לערך שעדיין לא התקבל מהמשתמש זו טעות, וגם אם זה לא יודפס על המסך זה ישמר בדו"ח השגיאות של PHP בשרתזה משנה אם משתמשים ב "$_GET" או ב "$_REQUEST['did'];"
כי עשה רושם שבמודל שעבד על GET זה כן עבד ובשני לא
לפחות בהתחלה.לא מחקתי משהו וחץ מזה יש לך את הערך שמחיך ערכים שהתקבלו בקבלת נתונים לדוג' התקבל/// יחליף לכוכבית
-
@121244 אני חושב שכותבים את זה ככה
לדוגמא מקבלים במשתנה אחד ואחרי זה משנים$1="jhj"; $2=str_replace("j" , "$1" , "g");
ואז במשתנה שתיים יחליף איפה שהיה באחד j ל g מקווה שלא טעיתי
-
-
@הלי כתב בעדכון הגדרות בשלוחה:
@121244 אני חושב שכותבים את זה ככה
לדוגמא מקבלים במשתנה אחד ואחרי זה משנים$1="jhj"; $2=str_replace("j" , "$1" , "g");
ואז במשתנה שתיים יחליף איפה שהיה באחד j ל g מקווה שלא טעיתי
יתכן וצריך לכתוב קודם את ה"g" ואחר כך את שם המשתנה לא זוכר תבדוק ותעדכן
-
@הלי כתב בעדכון הגדרות בשלוחה:
$1="jhj"; $2=str_replace("j" , "$1" , "g");
יתכן וצריך לכתוב קודם את ה"g" ואחר כך את שם המשתנה לא זוכר תבדוק ותעדכן
אכן, צריך לכתוב קודם את ה"g" שזה מה שרוצים לשנות אליו, ואח"כ את המשתנה. כך -
$2=str_replace("j" , "g" , "$1");
כמו"כ שים לב שאפשר לכתוב עם הפקודה
str_ireplace
, כדלהלן..$2=str_ireplace("j" , "g" , "$1");
שההבדל ביניהם הוא, שההגדרה
str_replace
שהבאת לעיל, (השורה הראשונה מבין השתיים), הוא מבדיל בין אותיות קטנות לגדולות (אם יש לך בזה נפק"מ), משא"כ ההגדרה שאני הבאתי (השני), הוא לא מבדיל בין אותיות קטנות לגדולות... -
-
@HMJE22 כתב בעדכון הגדרות בשלוחה:
הוא מבדיל בין אותיות קטנות לגדולות (אם יש לך בזה נפק"מ), משא"כ ההגדרה שאני הבאתי (השני), הוא לא מבדיל בין אותיות קטנות לגדולות.
לא ממש הבנתי את ההבדל
אשמח אם תסביר
תודה -
@121244 מה הקישור?
-
@הלי כתב בעדכון הגדרות בשלוחה:
@HMJE22 כתב בעדכון הגדרות בשלוחה:
הוא מבדיל בין אותיות קטנות לגדולות (אם יש לך בזה נפק"מ), משא"כ ההגדרה שאני הבאתי (השני), הוא לא מבדיל בין אותיות קטנות לגדולות.
לא ממש הבנתי את ההבדל
אשמח אם תסביר
תודההפקודות הנ"ל הם מחליפים נתון מסויים מתוך מחרוזת, וכך בדוגמא שלעיל הוא מחליף מתוך המחרוזת את האות
j
לאותg
.
עכשיו מה יקרה אם מה שכתוב במחרוזת הואJ
גדולה (דהיינו אותיות באנגלית גדולות וקטנות), ואתה כתבת בפקודה שיחליףj
קטנה, אז כאן מגיע ההבדל בין הפקודות, הפקודהstr_replace
מבדילה בין אותיות גדולות לקטנות, ולכן בדוגמא הנ"ל היא לא תחליף, כי כתבת בפקודה אות קטנה, ובמחרוזת כתוב אות גדולה. משא"כ בפקודהstr_ireplace
היא כן תחליף, כי היא לא מבדילה בין אותיות גדולות לקטנות, ואפי' שכתבת בפקודה אות קטנה הוא יחליף גם מה שכתוב במחרוזת כאות גדולה...מקווה שהסברתי את זה טוב.
בהצלחה -
@HMJE22 והוא יחליף את זה לאות גדולה או קטנה?
-
-
@הלי כתב בעדכון הגדרות בשלוחה:
@HMJE22 והוא יחליף את זה לאות גדולה או קטנה?
הוא יחליף למה שתכתוב (כמו שתכתוב - אם קטן אז קטן אם גדול אז גדול), כל הנקודה היא בחיפוש בתוך המחרוזת האם להתייחס שיהיה בדיוק כמו שכתבת שיחפש, או שאפי' אם כתבת גדול שימצא גם קטן וכן להיפך... אבל לגבי ההחלפה הוא מחליף למה שתכתוב בדיוק...
-
@HMJE22 תודה רבה
ותודה על כל ההסברים שלך פה ובכל הפורום