שליפת נתונים באמצעות api ב-php

עיטורים פלוס

משתמש סופר מקצוען
מנוי פרימיום
בוגר/תלמיד פרוג
עיצוב גרפי
הנדסת תוכנה
צילום מקצועי
D I G I T A L
עימוד ספרים
שלום וברכה,

לצורך שליפת רשימת ישובים בישראל, על מנת שלא אצטרך לאחסן אותם בDataBase אצלי,
אני רוצה לשלוף את הנתונים באמצעות api מכאן: https://data.gov.il/dataset/citiesandsettelments/resource/b7cf8f14-64a2-4b33-8d4b-edb286fdbd37
הם נותנים דוגמא לjs, העתקתי ונסתי לעבוד עם הקוד שלהם, אך לא הצליח לי.
משהו יכול לתת כיוון לאופן שליפת נתונים באמצעות api בphp, או בjs?

תודה רבה!
 

למדן וידען

משתמש סופר מקצוען
עיצוב גרפי
הנדסת תוכנה
D I G I T A L
שלום וברכה,

לצורך שליפת רשימת ישובים בישראל, על מנת שלא אצטרך לאחסן אותם בDataBase אצלי,
אני רוצה לשלוף את הנתונים באמצעות api מכאן: https://data.gov.il/dataset/citiesandsettelments/resource/b7cf8f14-64a2-4b33-8d4b-edb286fdbd37
הם נותנים דוגמא לjs, העתקתי ונסתי לעבוד עם הקוד שלהם, אך לא הצליח לי.
משהו יכול לתת כיוון לאופן שליפת נתונים באמצעות api בphp, או בjs?

תודה רבה!
השאלה מה הכוונה לא הצליח לך...
הקוד שהם מביאים:
PHP:
var data = {
[LEFT]    resource_id: 'b7cf8f14-64a2-4b33-8d4b-edb286fdbd37', // the resource id
    limit: 5, // get 5 results
    q: 'jones' // query for 'jones'
  };
  $.ajax({
    url: 'https://data.gov.il/api/action/datastore_search',
    data: data,
    dataType: 'jsonp',
    success: function(data) {
      alert('Total results found: ' + data.result.total)
    }
  });[/LEFT]

מה הוא מחזיר לך?
 

עיטורים פלוס

משתמש סופר מקצוען
מנוי פרימיום
בוגר/תלמיד פרוג
עיצוב גרפי
הנדסת תוכנה
צילום מקצועי
D I G I T A L
עימוד ספרים
השאלה מה הכוונה לא הצליח לך...
הקוד שהם מביאים:
PHP:
var data = {
[LEFT]    resource_id: 'b7cf8f14-64a2-4b33-8d4b-edb286fdbd37', // the resource id
    limit: 5, // get 5 results
    q: 'jones' // query for 'jones'
  };
  $.ajax({
    url: 'https://data.gov.il/api/action/datastore_search',
    data: data,
    dataType: 'jsonp',
    success: function(data) {
      alert('Total results found: ' + data.result.total)
    }
  });[/LEFT]

מה הוא מחזיר לך?
upload_2019-11-19_21-4-40.png
 

עיטורים פלוס

משתמש סופר מקצוען
מנוי פרימיום
בוגר/תלמיד פרוג
עיצוב גרפי
הנדסת תוכנה
צילום מקצועי
D I G I T A L
עימוד ספרים
צלם את הקוד.
ותעלה איך נראה הnetwork (אני רוצה לראות איך נראית הפניה שלך לשרת לבסוף)
עשיתי העתק הדבק בדיוק לקוד שהם כתבו, חיברתי את הקובץ לקובץ html,
אם החיבור לשרת בajax מצליח, צריך לקפוץ אזשהו alert, כשראיתי שקבלתי שגיאת 500 שהיא שגיאת שרת, נשארתי שם ולא התקדמתי לעוד נסיונות.
 

זה אני :)

משתמש מקצוען
מנוי פרימיום
הנדסת תוכנה
D I G I T A L
יש לך jQuery על האתר?
אם לא - תנסה להוסיף.
 

ש.ב.ח.

משתמש מקצוען
מנוי פרימיום
בוגר/תלמיד פרוג
עיצוב גרפי
D I G I T A L
דרך אגב
הקוד שהם מביאים
מחזיר 5 תוצאות בלבד
ובתנאי שהם מכילים את המחרוזת "jones"
כך שהוא לא יחזיר כלום!

ואם תעלו את הקובץ לכאן יהיה יותר קל להבין איפה השגיאה...
 

ש.ב.ח.

משתמש מקצוען
מנוי פרימיום
בוגר/תלמיד פרוג
עיצוב גרפי
D I G I T A L
@עיטורים פלוס
תשתמשו בקוד כך (זה עובד):
PHP:
var data = {
    resource_id: 'b7cf8f14-64a2-4b33-8d4b-edb286fdbd37', // the resource id
    limit: 5, // get 5 results
    q: 'בני ברק' // query for 'jones'
  };
  $.ajax({
    url: 'https://data.gov.il/api/action/datastore_search',
    data: data,
    dataType: 'json',
    success: function(data) {
      alert('Total results found: ' + data.result.total)
    }
  });
 
נערך לאחרונה ב:

עיטורים פלוס

משתמש סופר מקצוען
מנוי פרימיום
בוגר/תלמיד פרוג
עיצוב גרפי
הנדסת תוכנה
צילום מקצועי
D I G I T A L
עימוד ספרים
דרך אגב
הקוד שהם מביאים
מחזיר 5 תוצאות בלבד
ובתנאי שהם מכילים את המחרוזת "jones"
כך שהוא לא יחזיר כלום!

ואם תעלו את הקובץ לכאן יהיה יותר קל להבין איפה השגיאה...
הבנתי, רציתי לראות קודם תגובה, שהקוד עובד ואח"כ לשנות לפי העניין
 

ש.ב.ח.

משתמש מקצוען
מנוי פרימיום
בוגר/תלמיד פרוג
עיצוב גרפי
D I G I T A L
הבנתי, רציתי לראות קודם תגובה, שהקוד עובד ואח"כ לשנות לפי העניין
נו, וראיתם שזה עובד?
לא יודע למה בJSONP הוא הורס את כל הGET
שימי לב לפרמטרים בדפדפן עם תנסי להיכנס עליו ישירות מהשגיאה של הconsole
 

עיטורים פלוס

משתמש סופר מקצוען
מנוי פרימיום
בוגר/תלמיד פרוג
עיצוב גרפי
הנדסת תוכנה
צילום מקצועי
D I G I T A L
עימוד ספרים
נו, וראיתם שזה עובד?
לא יודע למה בJSONP הוא הורס את כל הGET
שימי לב לפרמטרים בדפדפן עם תנסי להיכנס עליו ישירות מהשגיאה של הconsole
כן עובד משהו, הוספתי הדפסה של הdata לconsole, הוא הדפיס לי רשימת ערים עם מידע נוסף עליהם כמו מחוז וכו', לא ידוע לי איך לשלוף משם את המידע להצגת רשימה של הערים בלבד מעמודה בודדת מתוך טבלת הנתונים שלהם.
 

עיטורים פלוס

משתמש סופר מקצוען
מנוי פרימיום
בוגר/תלמיד פרוג
עיצוב גרפי
הנדסת תוכנה
צילום מקצועי
D I G I T A L
עימוד ספרים
כן עובד משהו, הוספתי הדפסה של הdata לconsole, הוא הדפיס לי רשימת ערים עם מידע נוסף עליהם כמו מחוז וכו', לא ידוע לי איך לשלוף משם את המידע להצגת רשימה של הערים בלבד מעמודה בודדת מתוך טבלת הנתונים שלהם.
בסוף הסתדרתי והצלחתי להדפיס את רשימת הערים כולה, ניסיתי בלי לשלוח את המאפיין limit, אך קיבלתי רק 100 רשומות, הכנסתי את מספר הרשומות 1273 וקיבלתי את כולן, השאלה אם יש דרך לא לציין את הlimit ולקבל את כל הרשומות, למקרה שיהיו עדכונים ויתווספו רשומות, שהקוד יהיה מעודכן.
הקוד שלי כרגע הוא:

PHP:
var data = {
    resource_id: 'b7cf8f14-64a2-4b33-8d4b-edb286fdbd37', // the resource id
    limit: 1273, // get 5 results
};
$.ajax({
    url: 'https://data.gov.il/api/action/datastore_search',
    data: data,
    dataType: 'json',
    success: function(data) {

      var a = [];

    for (var i = 0; i < data.result.records.length; i++) {
        var d = data.result.records[i].שם_ישוב;
        console.log( "index: " + i + "עיר: "+ d);
      }
  }
  });
 

אולי מעניין אותך גם...

הפרק היומי

הפרק היומי! כל ערב פרק תהילים חדש. הצטרפו אלינו לקריאת תהילים משותפת!


תהילים פרק קכג

א שִׁיר הַמַּעֲלוֹת אֵלֶיךָ נָשָׂאתִי אֶת עֵינַי הַיֹּשְׁבִי בַּשָּׁמָיִם:ב הִנֵּה כְעֵינֵי עֲבָדִים אֶל יַד אֲדוֹנֵיהֶם כְּעֵינֵי שִׁפְחָה אֶל יַד גְּבִרְתָּהּ כֵּן עֵינֵינוּ אֶל יְהוָה אֱלֹהֵינוּ עַד שֶׁיְּחָנֵּנוּ:ג חָנֵּנוּ יְהוָה חָנֵּנוּ כִּי רַב שָׂבַעְנוּ בוּז:ד רַבַּת שָׂבְעָה לָּהּ נַפְשֵׁנוּ הַלַּעַג הַשַּׁאֲנַנִּים הַבּוּז לִגְאֵיוֹנִים:
נקרא  6  פעמים

לוח מודעות

למעלה