API - קבלת ערך,החזרת הודעה בהתאם ואפשרות לתיקון.

Nbo
הודעות: 2
הצטרף: 01:48 03/05/2020

API - קבלת ערך,החזרת הודעה בהתאם ואפשרות לתיקון.

שליחהעל ידי Nbo » 14:36 03/05/2020

אשמח לקבל רעיונות כיצד לאפשר למתקשר להזין ערך(ב read), לשמוע הודעה בהתאם לערך שבחר (לדוגמא: הוא מתבקש לבחור שכונה, הקיש 1 ישמע רמת אהרון (ערך זה מגיע מטבלה)) ובמידה שירצה יוכל לתקן את הבחירה שלו כמה פעמים שירצה.
במקרה שאני מחזיר לו את הערך שהוא בחר (בדוגמא שלנו 1), פונקציונליות זו מובנת בהגדרות של המשתנה בימות (ערך 6) אולם פה מכיון שאני מחזיר לו נתון מטבלה אני כבר מקבל את הנתון שהוא בחר.

אציין שמדובר על תהליך של קבלת כ15 נתונים בזה אחר זה.

תודה מראש

קול הירושלמי
הודעות: 439
הצטרף: 14:33 14/06/2018

Re: API - קבלת ערך,החזרת הודעה בהתאם ואפשרות לתיקון.

שליחהעל ידי קול הירושלמי » 20:51 03/05/2020

אפשר להשתמש בהגדרה של ימות שמאפשרת להשתמש שוב בערך של הגדרה אם היא כבר נשלחה פעם אחת (למשל, אם קיבלת בשלוחה אחרת של API את הערך 'value' אפשר להגדיר שהמערכת תשתמש בו שוב בלי לבקש אותו עוד פעם)
מה שמאפשר ליצור שלוחת תיקון שמשתמשת בכל הנתונים שנשלחו עד לערך הטעון תיקון

Nbo
הודעות: 2
הצטרף: 01:48 03/05/2020

Re: API - קבלת ערך,החזרת הודעה בהתאם ואפשרות לתיקון.

שליחהעל ידי Nbo » 23:50 03/05/2020

אם הבנתי אותך נכון, אתה מתכוון שכאשר המשתמש יבקש לתקן את הנתון שמסר אני יחזיר אותו לשלוחת תיקון ושם אני יגדיר (ערך השני) את כל המשתנים שקיבלתי עד עכשיו כ"yes", כך אני ישמור על הערכים שקיבלתי עד כה ואני יתן למשתמש אפשרות לתקן את בחירתו.
הבעיה היא, כפי שציינתי בשאלה מדובר על תהליך קבלה של מספר רב של נתונים שבחלקם הגדול אני צריך לאפשר לו לתקן את בחירתו לאחר שהשמעתי לו הודעה, כך שאני לא יכול להגדיר את כולם כ"yes".

קול הירושלמי
הודעות: 439
הצטרף: 14:33 14/06/2018

Re: API - קבלת ערך,החזרת הודעה בהתאם ואפשרות לתיקון.

שליחהעל ידי קול הירושלמי » 20:25 04/05/2020

אפשר לבנות שלוחה לכל שלב
(זה עדיף מאשר לקבל URL שלא נגמר...)

חוקר
הודעות: 496
הצטרף: 15:44 16/03/2016
מיקום: עיר התורה והחסידות ביתר עילית

Re: API - קבלת ערך,החזרת הודעה בהתאם ואפשרות לתיקון.

שליחהעל ידי חוקר » 18:36 11/05/2020

אם הבנתי נכון את בקשת השואל אז מצורף כאן דוגמת קוד שמאפשרת את זה.
הרעיון הוא לבדוק מה היה הערך האחרון שהתקבל ב URL, ואם הערך האחרון היה הנתון המבוקש אז אני מעביר אותו לאשר את הערך, ואם הערך האחרון הוא השלב של בקשת האישור על הערך, אז אם הוא הקיש 1, זאת אומרת שאישר את בחירתו אז אני פשוט ממשיך הלאה, ואם הקיש 2 אני מכניס אותו ללולאה שמבקשת ממנו לבחור את הנתון מחדש ושוב לאשר ושוב לבחור עד שהוא מאשר

קוד: בחירת הכל

if (isset($_GET['moked']) == false) {
print 'id_list_message=f-מיקוםמצות&read=f-תפריטמיקוםמצות=moked,,1,1,5,No,,,,12345';
exit();
} else {
$moked = $_GET['moked'];
}
$moked_arr = array('במאפיית המצות', 'גבעת זאב','ירושלים', 'ביתר גבעה א', 'ביתר גבעה ב');
if (isset($_GET['conmoked']) == false) {
print 'id_list_message=t-'.$moked_arr[$moked - 1].'&read=f-לאישורתיקון=conmoked,,1,1,5,No,,,,12';
exit();
} else {
$conmoked = $_GET['conmoked'];
}
if ($conmoked == 2){
if (check_lest_query_string() == 'conmoked') {
print 'id_list_message=f-מיקוםמצות&read=f-תפריטמיקוםמצות=moked,,1,1,5,No,,,,12345';
exit();
}else{
print 'id_list_message=t-'.$moked_arr[$moked - 1].'&read=f-לאישורתיקון=conmoked,,1,1,5,No,,,,12';
exit();
}
}
print 'id_list_message=f-בחרת.t-' . $moked_arr[$moked - 1]. '.f-בהצלחה';

function check_lest_query_string()
{
$uri = $_SERVER["QUERY_STRING"];
$exp = explode('&',$uri);
$end0 = end($exp);
$exp1 = explode('=',$end0);
$end = $exp1[0];
return urldecode($end);
}

קול הירושלמי
הודעות: 439
הצטרף: 14:33 14/06/2018

Re: API - קבלת ערך,החזרת הודעה בהתאם ואפשרות לתיקון.

שליחהעל ידי קול הירושלמי » 23:25 11/05/2020

אם הבנתי נכון את בקשת השואל אז מצורף כאן דוגמת קוד שמאפשרת את זה.
הרעיון הוא לבדוק מה היה הערך האחרון שהתקבל ב URL, ואם הערך האחרון היה הנתון המבוקש אז אני מעביר אותו לאשר את הערך, ואם הערך האחרון הוא השלב של בקשת האישור על הערך, אז אם הוא הקיש 1, זאת אומרת שאישר את בחירתו אז אני פשוט ממשיך הלאה, ואם הקיש 2 אני מכניס אותו ללולאה שמבקשת ממנו לבחור את הנתון מחדש ושוב לאשר ושוב לבחור עד שהוא מאשר

קוד: בחירת הכל

if (isset($_GET['moked']) == false) {
print 'id_list_message=f-מיקוםמצות&read=f-תפריטמיקוםמצות=moked,,1,1,5,No,,,,12345';
exit();
} else {
$moked = $_GET['moked'];
}
$moked_arr = array('במאפיית המצות', 'גבעת זאב','ירושלים', 'ביתר גבעה א', 'ביתר גבעה ב');
if (isset($_GET['conmoked']) == false) {
print 'id_list_message=t-'.$moked_arr[$moked - 1].'&read=f-לאישורתיקון=conmoked,,1,1,5,No,,,,12';
exit();
} else {
$conmoked = $_GET['conmoked'];
}
if ($conmoked == 2){
if (check_lest_query_string() == 'conmoked') {
print 'id_list_message=f-מיקוםמצות&read=f-תפריטמיקוםמצות=moked,,1,1,5,No,,,,12345';
exit();
}else{
print 'id_list_message=t-'.$moked_arr[$moked - 1].'&read=f-לאישורתיקון=conmoked,,1,1,5,No,,,,12';
exit();
}
}
print 'id_list_message=f-בחרת.t-' . $moked_arr[$moked - 1]. '.f-בהצלחה';

function check_lest_query_string()
{
$uri = $_SERVER["QUERY_STRING"];
$exp = explode('&',$uri);
$end0 = end($exp);
$exp1 = explode('=',$end0);
$end = $exp1[0];
return urldecode($end);
}
אני עשיתי את זה עם מסד נתונים...
הבעיה הא רק עם ה-URL הארוך שנוצר כאשר המאזין מתקן שוב ושוב...
יש לך פיתרון לזה?

חוקר
הודעות: 496
הצטרף: 15:44 16/03/2016
מיקום: עיר התורה והחסידות ביתר עילית

Re: API - קבלת ערך,החזרת הודעה בהתאם ואפשרות לתיקון.

שליחהעל ידי חוקר » 01:27 13/05/2020

אם הבנתי נכון את בקשת השואל אז מצורף כאן דוגמת קוד שמאפשרת את זה.
הרעיון הוא לבדוק מה היה הערך האחרון שהתקבל ב URL, ואם הערך האחרון היה הנתון המבוקש אז אני מעביר אותו לאשר את הערך, ואם הערך האחרון הוא השלב של בקשת האישור על הערך, אז אם הוא הקיש 1, זאת אומרת שאישר את בחירתו אז אני פשוט ממשיך הלאה, ואם הקיש 2 אני מכניס אותו ללולאה שמבקשת ממנו לבחור את הנתון מחדש ושוב לאשר ושוב לבחור עד שהוא מאשר

קוד: בחירת הכל

if (isset($_GET['moked']) == false) {
print 'id_list_message=f-מיקוםמצות&read=f-תפריטמיקוםמצות=moked,,1,1,5,No,,,,12345';
exit();
} else {
$moked = $_GET['moked'];
}
$moked_arr = array('במאפיית המצות', 'גבעת זאב','ירושלים', 'ביתר גבעה א', 'ביתר גבעה ב');
if (isset($_GET['conmoked']) == false) {
print 'id_list_message=t-'.$moked_arr[$moked - 1].'&read=f-לאישורתיקון=conmoked,,1,1,5,No,,,,12';
exit();
} else {
$conmoked = $_GET['conmoked'];
}
if ($conmoked == 2){
if (check_lest_query_string() == 'conmoked') {
print 'id_list_message=f-מיקוםמצות&read=f-תפריטמיקוםמצות=moked,,1,1,5,No,,,,12345';
exit();
}else{
print 'id_list_message=t-'.$moked_arr[$moked - 1].'&read=f-לאישורתיקון=conmoked,,1,1,5,No,,,,12';
exit();
}
}
print 'id_list_message=f-בחרת.t-' . $moked_arr[$moked - 1]. '.f-בהצלחה';

function check_lest_query_string()
{
$uri = $_SERVER["QUERY_STRING"];
$exp = explode('&',$uri);
$end0 = end($exp);
$exp1 = explode('=',$end0);
$end = $exp1[0];
return urldecode($end);
}
אני עשיתי את זה עם מסד נתונים...
הבעיה הא רק עם ה-URL הארוך שנוצר כאשר המאזין מתקן שוב ושוב...
יש לך פיתרון לזה?
לכתוב את שמות הערכים באנגלית בלבד וכמה שיותר קצר.
לא זכור לי שלמעשה נתקלתי בבעיות.
כתבתי פעם פוסט כאן על אורך ה URL


חזור אל “פורום מפתחים API”

מי מחובר

משתמשים הגולשים בפורום זה: אין משתמשים רשומים | 9 אורחים