אני מעלה ב API כמה קבצים ביחד וחלק לא עולים ומתקבל השגיאה Invalid WS request
-
@תן-חיוך-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 ספרות
-
תודה חברים על כל העזרה והרעיונות
אבל זה לא קשור לבעיה עליה אני מדבר אז בא נתמקד בה בבקשה
תודה -
@תן-חיוך-1 אולי תעלה את כל הקוד לגמרי? נראה לי החסרת חלק. או שאתה מעלה בחלקים...
-
@תן-חיוך-1 אמר באני מעלה ב API כמה קבצים ביחד וחלק לא עולים ומתקבל השגיאה Invalid WS request:
$mona--; }
מה זה הקוד הזה? הסוגר לא שייך לשום מקום!