JS הבעיה הכי מוזרה שנתקלתי בה

  • הוסף לסימניות
  • #1
אשמח אם מישהו יוכל לעזור לי, במהלך עבודה על פרויקט מסוים שבו אני מפתח גם את צד הלקוח וגם את צד השרת נתקלתי בבעיה הבאה:

בתחילה בניתי את הפרויקט באמצעות פאפ וג'אווה סקריפט ונילה ובניתי קובץ api שמקבל שאילתות מהג'אווה סקריפט באמצעות fetch והכל עבד מצוין, אחר כך ניסיתי להחליף את צד הלקוח לריאקט ולפתע הfetch לא עובד (השאילתה חוזרת ריקה), ואם זה לא מספיק מוזר, גיליתי שבמידה ואני מוסיף לקובץ הפאפ פונקציית פרינט עם מחרוזת כל שהיא, לפתע הוא מתחיל לעבוד ומדפיס גם את המידע שרציתי וגם את הטקסט שבתוך המחרוזת פרינט.
הנה הקוד:

PHP

PHP:
            $map_name = $_POST['map_name'];
            $connection = mysqli_connect(DB_HOST ,DB_USER ,DB_PASS ,DB_NAME);   
            $query_string = "SELECT * FROM maps WHERE map_name='{$map_name}'";
            if($result = mysqli_query($connection, $query_string)){
                $map_results = mysqli_fetch_array($result, MYSQLI_ASSOC);
            }
            $map_results_json = json_encode($map_results);
            print_r($map_results_json);

JS

JavaScript:
    const options = {
        method: 'POST',
        body: "action=get_map&map_name="+map_name,
        mode: 'no-cors',
        credentials: 'include',
        headers: {
            'Content-type': 'application/x-www-form-urlencoded; charset=UTF-8',
        }
    };
      
    return fetch('http://localhost/api.php', options)
    .then((response) => {
        return response.json();
    })
 
  • הוסף לסימניות
  • #2
ב content type צריך שיהיה משהו json אם זכור לי טוב. אין לי אפשרות לבדוק כעת.
 
  • הוסף לסימניות
  • #3
ב content type צריך שיהיה משהו json אם זכור לי טוב. אין לי אפשרות לבדוק כעת.
headers של json ב-PHP יעזרו ל-JS לפענח את התוכן כ-JSON
אפשר לבדוק איך הקובץ PHP מקבל את ה-POST עם הדפסה שלו ב-var_dump
 
  • הוסף לסימניות
  • #4
  • הוסף לסימניות
  • #5
  • הוסף לסימניות
  • #6
כן, הוא מחזיר לי שהשאילתה חזרה ריקה
 
  • הוסף לסימניות
  • #7
  • הוסף לסימניות
  • #8
בסף הסתדרתי, התברר שזה היה בעיה של CORS
 

פרוגבוט

תוכן שיווקי
פרסומת

הצטרפות לניוזלטר

איזה כיף שהצטרפתם לניוזלטר שלנו!

מעכשיו, תהיו הראשונים לקבל את כל העדכונים, החדשות, ההפתעות בלעדיות, והתכנים הכי חמים שלנו בפרוג!

לוח מודעות

הפרק היומי

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


תהילים פרק כה

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