אני מעלה ב API כמה קבצים ביחד וחלק לא עולים ומתקבל השגיאה Invalid WS request
-
פוסט זה נמחק! -
@תן-חיוך-1 אמר באני מעלה ב API כמה קבצים ביחד וחלק לא עולים ומתקבל השגיאה Invalid WS request:
אלא מקבלים את השגיאה Invalid WS request
בעיקרון התגובה הזו אומרת שפנית לWS לא קיים.
לכן דבר ראשון כדאי שתוודא שאתה אכן פונה כמו שצריך, יכול להיות שזה באג כל שהוא, אבל לא נראה לי. -
פוסט זה נמחק! -
פוסט זה נמחק! -
@תן-חיוך-1 אמר באני מעלה ב API כמה קבצים ביחד וחלק לא עולים ומתקבל השגיאה Invalid WS request:
@שמואל ואגב מה זה אומר ws לא קיים???
פקודת Api לא קיימת
-
@תן-חיוך-1 אמר באני מעלה ב API כמה קבצים ביחד וחלק לא עולים ומתקבל השגיאה Invalid WS request:
ומשום כך אני לא רואה סיבה לעלות את הקוד לכאן
אני לא מכיר אותך, ולכאורה אתה לא מכיר אותי,
אנחנו שנינו בפורום ציבורי, והעניין בפורום כזה הוא להעלות בעיות ולנסות לפטור אותן.
פתחת נושא בעזרה הדדית למשתמשים מתקדמים, לא לבאגים במערכת.
לכאורה הבאג הוא לא בימות המשיח, אלא אצלך, ולכן המתבקש הוא להעלות קטע קוד רלוונטי שלא עובד לך פתאום, אתה לא חייב, אבל זה הדרך,
אם אתה רוצה להיעזר באנשים פה, אל תזלזל בהם שינחשו את הבעיות...
תן להם לקרוא קוד ולנסות לראות אם יש בו באג.
כל הפורום פה בנוי ככה, ואף אחד לא יגנוב לך, במיוחד שזה כולה קוד של להעלות טקסט לקובץ - פקודת API פשוטה שרצה בלולאה. -
פוסט זה נמחק! -
@תן-חיוך-1 שוב, ההימור שלי הוא שהבעיה היא בקוד שמחלק ולא בקוד שמעלה
-
@תן-חיוך-1
מסובך או לא..
אם מישהו מבין בתיכנות ורוצה לעזור אז גם פה יכולים להבין!! -
פוסט זה נמחק! -
@תן-חיוך-1 אמר באני מעלה ב API כמה קבצים ביחד וחלק לא עולים ומתקבל השגיאה Invalid WS request:
@nyh
רק בשביל להשביע את ההתעקשות שאני יעלה את הקוד אפי' שהוא לא ברור ובלי תיעוד עדיין
אז בבקשה
ואשמח לעזרתכם$sum = mb_strlen($text, 'utf-8'); $ii=0; $iii=0; $mona=0; while( $iii <= $sum) { $iiii=$ii; $iii= $iiii+500; $array[]=$text_t= substr( $text , $ii, $iii); $ii=$iii; $mona++;
מצפה לעזרתכם
תודהממי אתה עושה צחוק?
לא כתוב פה בקוד כלום....
תעלה את כל הקוד ואולי נוכל לעזור לך במצב הנוכחי אין שום מצב לעזור לך -
@אהרן-שובקס
חבל שאתה חושב שאני מנסה לעשות צחוק מאנשים כתבתי שבהמשך אני יטפל בקוד ויערוך אותו נורמלי
כתבו לי בכל זאת לעלות את הקוד שמחלק את המילים אז העתקתי אותוואגב ביאור פשוט יש שם פקודה שסופרת תווים של משתנה טקסט ומכניסה את זה למשתנה שנקרא som ואז הגדרתי לו על שלוש משתנים בהתחלה שהם יהיו ריקים ואז יש לולאה שמחלקת וכל חמוש מאות תווים היא מכניסה לתוך מערך ואחרי זה זה יוצר משתנה חדש בשם text_tשהוא מכיל את המערך של כל חמוש מאות תווים וכאשר הוא מעלה אותם הוא מכניס למונה מספר נוסף
זהו זה מה שכתוב פה אני לא רואה בזה בעיה והראיה שחלק הוא כן מעלה -
@תן-חיוך-1 אמר באני מעלה ב API כמה קבצים ביחד וחלק לא עולים ומתקבל השגיאה Invalid WS request:
@אהרן-שובקס
חבל שאתה חושב שאני מנסה לעשות צחוק מאנשים כתבתי שבהמשך אני יטפל בקוד ויערוך אותו נורמלי
כתבו לי בכל זאת לעלות את הקוד שמחלק את המילים אז העתקתי אותוואגב ביאור פשוט יש שם פקודה שסופרת תווים של משתנה טקסט ומכניסה את זה למשתנה שנקרא som ואז הגדרתי לו על שלוש משתנים בהתחלה שהם יהיו ריקים ואז יש לולאה שמחלקת וכל חמוש מאות תווים היא מכניסה לתוך מערך ואחרי זה זה יוצר משתנה חדש בשם text_tשהוא מכיל את המערך של כל חמוש מאות תווים וכאשר הוא מעלה אותם הוא מכניס למונה מספר נוסף
זהו זה מה שכתוב פה אני לא רואה בזה בעיה והראיה שחלק הוא כן מעלהתעלה את כל הקוד שמעלה את הקבצים וננסה לעזור
-
$handle = curl_init(); $YemotUrl = "https://private.call2all.co.il/ym/api/ym/api/UploadTextFile"; $postData = array( 'token' => $c .':' . $d, 'what' => 'ivr2:/2/'.$i .".tts", 'contents' => $text_t , ); curl_setopt_array($handle, array( CURLOPT_URL => $YemotUrl, CURLOPT_POST => true, CURLOPT_POSTFIELDS => $postData, CURLOPT_RETURNTRANSFER => true, ) ); $data = curl_exec($handle); curl_close($handle); $i++; /* print "<hr>";print "<hr>"; print_r($data); print "<hr>"; */ //הוספת אפסים if($i==0){ $i= "000"; } elseif($i<10){ $i= "00" . $i; } elseif($i<100){ $i = "0" . $i; } else { $i = $i; } $mona--; }
בבקשה
-
תנסה לכאורה בשורה 31 וכו'
במקום$i= "00" . $i;
לעשות
$i= "00" + $i;
אני לא יודע אם הבאג שאני אומר עכשיו קשור, אבל זה בכל מקרה יש פה באג:
תעקוב רגע אחרי משתנה $i:
בשורה 18 הגדלת אותו ב1 (למרות שלא הכרזת עליו עוד [אבל בטח הכרזת ולא העלת לפה])מכאן נחלק את הבדיקה של הקוד לכמה אופציות:
אם $i == ל 0
בשורה 28 הוא ניהיה 000.
בשורה 31 הוא ניהיה 00000 (כי גם 000 יותר קטן מ 10 )
בשורה 34 הוא ניהיה שווה ל 000000.
זה מספר הקובץ אם $i היה שווה ל 0אם $i == ל ספרה אחת (למשל 6)
בשורה 31 הוא ניהיה 006
בשורה 34 הוא ניהיה שווה ל 00006 (כי גם 006 יותר קטן מ 100 )
זה מספר הקובץ אם $i היה שווה ל 6אם $i == ל שתי ספרות (למשל 15)
בשורה 34 הוא ניהיה שווה ל 015
זה מספר הקובץ אם $i היה שווה ל 15זה הסיכום שלי, אשמח לדעת שטעיתי במשהו.
תתקן את זה , ונראה האם עדיין יש באג או לא.
חוץ מזה שאין פה את הקטע של ההעלאהעריכה :
לא אחזתי שזה elseif
שאז אם מתבצע תנאי אחד אז לא הכל יעבוד -
@MGM-IVR
קטע הקוד שהתייחסת עליו מוסיף אפסים לשם של הקובץ בשביל שיעלה לשלוחה כקובץ הגבוהה עם אפסים,
לדוגמא
009
010...
100
הקטע הזה וודאי עובד תקין מכיוון שברגע ש if אחד פועל הוא כבר לא נכנס ל elseif האחרים . -
@תן-חיוך-1 אמר באני מעלה ב API כמה קבצים ביחד וחלק לא עולים ומתקבל השגיאה Invalid WS request:
@MGM-IVR
קטע הקוד שהתייחסת עליו מוסיף אפסים לשם של הקובץ בשביל שיעלה לשלוחה כקובץ הגבוהה עם אפסים,
לדוגמא
009
010...
100
הקטע הזה וודאי עובד תקין מכיוון שברגע ש if אחד פועל הוא כבר לא נכנס ל elseif האחרים .אני לא מסכים איתך, למה שהוא לא יכנס לשאר התנאים?
גם 000 יותר קטן מ10 -
@MGM-IVR
ברגע שנכנס לתנאי הראשון
כבר לא יכנס לתנאים האחריםככה זה ב elseif
-
@תן-חיוך-1 אמר באני מעלה ב API כמה קבצים ביחד וחלק לא עולים ומתקבל השגיאה Invalid WS request:
הקוד שהעלת הוא חלקי, ואין את הפקודה להעלאה
וגם לו יש תיקון קטן (סתם של בהירות קוד)
//הוספת אפסים if($i==0){ $i= "000"; } elseif($i<10){ $i= "00" . $i; } elseif($i<100){ $i = "0" . $i; } else { $i = $i; }
במקום להריץ לולאה על השם של הקובץ משתמשים בפונקציה שהופכת את המשתנה למינימום 3 ספרות
$i= str_pad($i,3,"0",STR_PAD_LEFT); //הפוך למינימום 3 ספרות
-
תודה חברים על כל העזרה והרעיונות
אבל זה לא קשור לבעיה עליה אני מדבר אז בא נתמקד בה בבקשה
תודה