איך אני מקבל קובץ ymgr שאוכל להוציא ממנו מידע, וכן גם במערך
-
אני רוצה לקבל קובץ ymgr ולהוציא ממנו כמה ערכים שאני צריך, אני יודע איך עושים את זה בגוגל סקריפט-המרה לג'סון ומעבר על כל המערך ע"י לולאת for ... of.
איך עושים את הנ"ל ב PHP? -
@שמואל-ש
הרעיון הוא בדיוק אותו דבר, גם ב PHP יש לולאת for
כדי לקבל את הקובץ יש גם פונקציה שמקבלת תוכן של קובץ
הסינטקס קצת שונה אבל הרעיון אותו דבראם תעלה כאן דוגמא של קוד שכתבת ב google script נוכל לנסות להמיר אותו ל PHP
-
@amp-Software-0 אמר באיך אני מקבל קובץ ymgr שאוכל להוציא ממנו מידע, וכן גם במערך:
אם תעלה כאן דוגמא של קוד שכתבת ב google script נוכל לנסות להמיר אותה ל PHP
function copy() { const token = ('077****:****'); const url = ('https://www.call2all.co.il/ym/api/'); const urlfetch = (url + 'RenderYMGRFile?wath=ivr2:8/1/999999/ApprovalAll.ymgr&convertType=json¬LoadLang=0&token=' + token); Logger.log ('סטטוס החיבור:' + urlfetch); const renderFile = UrlFetchApp.fetch(urlfetch); Logger.log ('הנתונים חדשים:' + renderFile); const renderFileJson = JSON.parse(renderFile); if (renderFileJson.responseStatus === 'OK') { for (const row of renderFileJson.data) { var alef = row["P050"]; Logger.log('נתון א:' + alef); var kablat2 = row["מספר זיהוי"]; Logger.log('נתון ב:' + kablat2); const FileActioncopy = UrlFetchApp.fetch (url + 'FileAction?token=' + token + '&action=copy&what=ivr2:8/1/999999/999&target=ivr2:8/1/'+kablat2+'/'+alef); Logger.log ('סטטוס הפעולה:' + FileActioncopy);
אני גם רוצה להבין הרבה מה כל פעולה כדי להבין גם ב PHP
-
@שמואל-ש אמר באיך אני מקבל קובץ ymgr שאוכל להוציא ממנו מידע, וכן גם במערך:
@amp-Software-0 אמר באיך אני מקבל קובץ ymgr שאוכל להוציא ממנו מידע, וכן גם במערך:
אם תעלה כאן דוגמא של קוד שכתבת ב google script נוכל לנסות להמיר אותה ל PHP
function copy() { const token = ('077****:****'); const url = ('https://www.call2all.co.il/ym/api/'); const urlfetch = (url + 'RenderYMGRFile?wath=ivr2:8/1/999999/ApprovalAll.ymgr&convertType=json¬LoadLang=0&token=' + token); Logger.log ('סטטוס החיבור:' + urlfetch); const renderFile = UrlFetchApp.fetch(urlfetch); Logger.log ('הנתונים חדשים:' + renderFile); const renderFileJson = JSON.parse(renderFile); if (renderFileJson.responseStatus === 'OK') { for (const row of renderFileJson.data) { var alef = row["P050"]; Logger.log('נתון א:' + alef); var kablat2 = row["מספר זיהוי"]; Logger.log('נתון ב:' + kablat2); const FileActioncopy = UrlFetchApp.fetch (url + 'FileAction?token=' + token + '&action=copy&what=ivr2:8/1/999999/999&target=ivr2:8/1/'+kablat2+'/'+alef); Logger.log ('סטטוס הפעולה:' + FileActioncopy);
אני גם רוצה להבין הרבה מה כל פעולה כדי להבין גם ב PHP
לא יודע אם שמת לב, אבל הבאת חצי קוד..
-
-
@Liy אמר באיך אני מקבל קובץ ymgr שאוכל להוציא ממנו מידע, וכן גם במערך:
לא יודע אם שמת לב, אבל הבאת חצי קוד..
למה חצי קוד?
-
@שמואל-ש אמר באיך אני מקבל קובץ ymgr שאוכל להוציא ממנו מידע, וכן גם במערך:
@Liy אמר באיך אני מקבל קובץ ymgr שאוכל להוציא ממנו מידע, וכן גם במערך:
לא יודע אם שמת לב, אבל הבאת חצי קוד..
למה חצי קוד?
חסרים שם כמה
}
{
-
@שמואל-ש
בבקשה
שים לב שאין שינויים משמעותים
שרשור מחרוזות מתבצע עם.
במקום עם+
קצת שינוי בסינטקס של הלולאה
תריץ את הסקריפט בדפדפן, מה שהודפס לך תמיד ללוג - יודפס לך לדפדפן (שים לב שאם תריץ את זה בשלוחת API זה יחזיר את זה גם ולא יעבוד)
שינתי את השם של הפונקציה, כיון שהפונקציהcopy
היא פונקציה שמורה ב PHP<?php const token = '077****:****'; const url = 'https://www.call2all.co.il/ym/api/'; const urlfetch = url . 'RenderYMGRFile?wath=ivr2:8/1/999999/ApprovalAll.ymgr&convertType=json¬LoadLang=0&token=' . token; copy_file(); function copy_file() { echo 'סטטוס החיבור:' . urlfetch . '<br>'; $file = file_get_contents(urlfetch); echo 'הנתונים חדשים:' . $file . '<br>'; $file_json = json_decode($file, true); if ($file_json['responseStatus'] == 'OK') { foreach ($file_json['data'] as $row) { $alef = $row["P050"]; echo 'נתון א:' . $alef . '<br>'; $kablat2 = $row["מספר זיהוי"]; echo 'נתון ב:' . $kablat2 . '<br>'; $url = url . 'FileAction?token=' . token . '&action=copy&what=ivr2:8/1/999999/999&target=ivr2:8/1/' . $kablat2 . '/' . $alef; $FileActioncopy = file_get_contents($url); echo 'סטטוס הפעולה:' . $FileActioncopy; } } }
-
@amp-Software-0 קודם כל תודה ענקית!!!
ושנית, מה זה file_get_contents, זה לא שם משתנה, אז מה זה כן?
ושלישית, כן הייתי רוצה את זה לשלוחת API מהם השינויים הנדרשים? רק שההדפסה לא תהיה על כל דבר אלא על הדברים שאני צריך או על התוצאה הסופית? -
@שמואל-ש
file_get_contents
זה פונקציה שמקבלת תוכן של קובץ בהינתן url, מקביל לUrlFetchApp.fetch
אכן, אם אתה רוצה את זה לשלוחת API פשוט תדפיס לדף רק את הדברים הרלוונטים שאתה רוצה להשמיע בשלוחה, על פי האפיון של המודולאם אתה רוצה להדפיס לך נתונים ללוג את יכול לבצע את זה באמצעות
error_log()
-
@amp-Software-0 זה הקוד שהכנסתי בשרת
<?php const token = '07777777:******'; const url = 'https://www.call2all.co.il/ym/api/'; const urlfetch = url . 'RenderYMGRFile?wath=ivr2:Log/LogApi.ymgr&convertType=json¬LoadLang=0&token=' . token; copy_file(); function copy_file() { echo 'סטטוס החיבור:' . urlfetch . '<br>'; $file = file_get_contents(urlfetch); echo 'הנתונים חדשים:' + $file . '<br>'; $file_json = json_decode($file, true); if ($file_json['responseStatus'] == 'OK') { foreach ($file_json['data'] as $row) { $alef = $row["ApiAnswer"]; echo 'נתון א:' + $alef . '<br>'; $kablat2 = $row["תאריך עברי"]; echo 'נתון ב:' + $kablat2 . '<br>'; } } }
וזה מה שאני מקבל בדפדפן
ושים לב למה שמסומן בחץ-מה שכתוב שם במקום
json¬LoadLang
-
@שמואל-ש
תוכל להעלות כאן הקובץ עצמו? -
@amp-Software-0 איזה קובץ? הלוג?
-
@שמואל-ש
הסקריפט -
@amp-Software-0 אמר באיך אני מקבל קובץ ymgr שאוכל להוציא ממנו מידע, וכן גם במערך:
@שמואל-ש
הסקריפטמה זאת אומרת? זה כל הסקריפט-מה שהעליתי לך למעלה
-
@שמואל-ש
זה נראה שיש לך בעיית קידוד בקובץ
כן אני מבקש שתעלה את הקובץ עצמו ולא את התוכן שלו -
-
@שמואל-ש ממליץ לך להסיר את התווים בעברית ואז להריץ מחדש
העורך החינמי של 000webhost לפעמים משבש את העריכה כאשר יש דף שמשלב תווים בעברית ובאנגלית -
פוסט זה נמחק! -
@amp-Software-0 אמר באיך אני מקבל קובץ ymgr שאוכל להוציא ממנו מידע, וכן גם במערך:
@שמואל-ש ממליץ לך להסיר את התווים בעברית ואז להריץ מחדש
<?php const token = '07777:*****'; const url = 'https://www.call2all.co.il/ym/api/'; const urlfetch = url . 'RenderYMGRFile?wath=ivr2:Log/LogApi.ymgr&convertType=json¬LoadLang=0&token=' . token; copy_file(); function copy_file() { echo 'status:' . urlfetch . '<br>'; $file = file_get_contents(urlfetch); echo 'netunym:' + $file . '<br>'; $file_json = json_decode($file, true); if ($file_json['responseStatus'] == 'OK') { foreach ($file_json['data'] as $row) { $alef = $row["ApiAnswer"]; echo 'a:' + $alef . '<br>'; } } } ?>
ולא עזר!
ואגב, מה עם זה שרואים בדפדפן?ומה רצה @MGM-IVR ?