-
@שמואל4
קובץ A נראה כך.include 'C:\wamp64\www\my_php/Login.php'; // הגדרת שלוחה בימות $path = "ivr2:4/1"; // הגדרת שם תקייה $Program_name = "שלום"; // פתיחת קובץ ראשי include 'C:\wamp64\www\my_php/main.php';
וקובץ B נראה כך:
include 'C:\wamp64\www\my_php/Login.php'; // הגדרת שלוחה בימות $path = "ivr2:4/2"; // הגדרת שם תקייה $Program_name = "עולם"; // פתיחת קובץ ראשי include 'C:\wamp64\www\my_php/main.php';
ואז אני מריץ כל אחד בשעה שלו.
אבל אם אני רוצה להריץ את שניהם, אז יש לי קובץ אחד בשם Master שהוא מריץ את שניהם בצורה כזו:include 'C:\wamp64\www\my_php/A.php'; include 'C:\wamp64\www\my_php/B.php';
ובכל זאת מתקבלת שגיאה
-
@שמואל4
קובץ A נראה כך.include 'C:\wamp64\www\my_php/Login.php'; // הגדרת שלוחה בימות $path = "ivr2:4/1"; // הגדרת שם תקייה $Program_name = "שלום"; // פתיחת קובץ ראשי include 'C:\wamp64\www\my_php/main.php';
וקובץ B נראה כך:
include 'C:\wamp64\www\my_php/Login.php'; // הגדרת שלוחה בימות $path = "ivr2:4/2"; // הגדרת שם תקייה $Program_name = "עולם"; // פתיחת קובץ ראשי include 'C:\wamp64\www\my_php/main.php';
ואז אני מריץ כל אחד בשעה שלו.
אבל אם אני רוצה להריץ את שניהם, אז יש לי קובץ אחד בשם Master שהוא מריץ את שניהם בצורה כזו:include 'C:\wamp64\www\my_php/A.php'; include 'C:\wamp64\www\my_php/B.php';
ובכל זאת מתקבלת שגיאה
@ass אמר בשגיאת Login.php כבר בשימוש:
אבל אם אני רוצה להריץ את שניהם, אז יש לי קובץ אחד בשם Master שהוא מריץ את שניהם בצורה כזו:
מה זה ההמצאה הזו? אתה רוצה להריץ שתי דברים באותו זמן לא מכניסים את שתיהם לאותו קובץ, זה שתי דברים נפרדים.
יכול להיות שכן אפשר לסדר זה יעבוד לך ככה, אבל זו לא הדרך האמיתית לעשות את הדברים.
הדרך הנכונה זה אם אתה רוצה להפעיל את כל הדברים יחד תפעיל 2 תהליכים של שתי הסקריפטים.
-
@ass לא עוזר כלום התרשים שלך בלי קובץ Login.php, אבל ברור לי שאתה משתמש עם פונקציית include בצורה עקומה - וברור לי שאתה צריך לכתוב פונקציה למה שאתה צריך ולא להשתמש עם include וכבר כתבתי את זה אתמול ואנחנו לא ממש מתקדמים לשום מקום.
-
@שמואל4
את פרטי הקובץ Login.php כבר כתבתי אתמול הוא כולל את המחלקה של מ. מ פליישער
ושני משתנים של פרטי ההתחברות:$con = new connecting_to_yemot_api('07900000','1234'); $token = "07900000:1234";
-
@שמואל4
את פרטי הקובץ Login.php כבר כתבתי אתמול הוא כולל את המחלקה של מ. מ פליישער
ושני משתנים של פרטי ההתחברות:$con = new connecting_to_yemot_api('07900000','1234'); $token = "07900000:1234";
-
@שמואל4
את פרטי הקובץ Login.php כבר כתבתי אתמול הוא כולל את המחלקה של מ. מ פליישער
ושני משתנים של פרטי ההתחברות:$con = new connecting_to_yemot_api('07900000','1234'); $token = "07900000:1234";
- הקובץ Login.php מתחבר לימות.
- הקובץ A ו B מגדירים את שם התקייה ושם הקובץ להעלאה, ואת הנתיב לשלוחה בימות (כלומר לכל קובץ (A או B) יש את הנתיב ושם התקייה שלו).
- קובץ main משתמש במשנים שהוגדרו ב A או B ומבצע העלאה לשלוחה.
- קובץ A רץ ע"י מתזמן משימות ביום א', וקובץ B ביום ב'.
- קובץ Master מריץ A ו B ביחד.
-
@yossiz אמר בשגיאת Login.php כבר בשימוש:
כי זה פשוט לא יעשה את ה include, והוא רוצה להשתמש עם include שבאמת יעשה את זה עובד פעם ויביא את כל הקוד של הקובץ פעם נוספת - שזה כמובן חיקוי עקום לשימוש עם פונקציות.
-
@שמואל4
האם תוכל בבקשה אחרי שהגענו עד לכאן להסביר לי כיצד הפונקציות יכולות לעזור לי פה, ואיפה להשתמש בהם.
אני מאוד מודה לך על הסבלנות..@ass ננסה טיפה לעזור יותר מעשי, בלי שום מחלקה - אני לא חושב שיש בה צורך.
קובץ פונקציות: (
functions.php
) :<?php $YMurls = array( "normal" => "https://www.call2all.co.il/ym/api/", "private" => "https://private.call2all.co.il/ym/api/" ); function YMapi($isPrivate, $ws, $parm) { global $YMurls; if ($isPrivate) { $YemotUrl = $YMurls['private']; } else { $YemotUrl = $YMurls['normal']; } $handle = curl_init(); curl_setopt_array( $handle, array( CURLOPT_URL => $YemotUrl . $ws, CURLOPT_POST => true, CURLOPT_POSTFIELDS => $parm, CURLOPT_RETURNTRANSFER => true, ) ); $data = curl_exec($handle); $data = json_decode($data, true); curl_close($handle); return $data; } ?>
עכשיו בכל קובץ שקשור אנחנו מכניסים include פעם אחת של הקובץ פונקציות שלנו:
include 'C:\wamp64\www\my_php/functions.php';
עכשיו, למשל קובץ A.php צריך לקבל את שם הנושא הזה מהAPI של nodebb ולהכניס אותו לקובץ במערכת כTTS, אז הוא יראה ככה - כולל ה include:
<?php include 'C:\wamp64\www\my_php/functions.php'; // מביא קובץ פונקציות if (!function_exists('YMapi')) { throw new Exception("function YMapi Not exists, check include or file location"); } $getUrl = "https://tchumim.com/api/topic/11914/"; $tchumimGetTopic = json_decode(file_get_contents($getUrl), true); //משתנה tchumimGetTopic מכיל JSON מהפורום //העלאת הקובץ למערכת $token = "0777777:1234"; // טוקן $path = "/0/1010"; // לאן להעלות $NewFileName = "2"; // שם הקובץ $text = "שם הנושא המבוקש הוא :" . $tchumimGetTopic['title']; $ym = YMapi("normal", "UploadTextFile", [ "token" => $token, "what" => "ivr2:" . $path . "/" . $NewFileName . ".tts", "contents" => $text ]); if ($ym["responseStatus"] === "OK") { echo "הקובץ הועלה בהצלחה"; } else { echo "שגיאה בהעלאה, התשובה המלאה היא: " . json_encode($ym); } ?>
כנל בקבצים נוספים, על זה הדרך, כמובן זה הסבר בסיסי לדוגמא ספציפית, אני לא יכתוב בשבילך את הפרוייקט שלך, אבל לדעתי זו הדרך.
-
@ass ננסה טיפה לעזור יותר מעשי, בלי שום מחלקה - אני לא חושב שיש בה צורך.
קובץ פונקציות: (
functions.php
) :<?php $YMurls = array( "normal" => "https://www.call2all.co.il/ym/api/", "private" => "https://private.call2all.co.il/ym/api/" ); function YMapi($isPrivate, $ws, $parm) { global $YMurls; if ($isPrivate) { $YemotUrl = $YMurls['private']; } else { $YemotUrl = $YMurls['normal']; } $handle = curl_init(); curl_setopt_array( $handle, array( CURLOPT_URL => $YemotUrl . $ws, CURLOPT_POST => true, CURLOPT_POSTFIELDS => $parm, CURLOPT_RETURNTRANSFER => true, ) ); $data = curl_exec($handle); $data = json_decode($data, true); curl_close($handle); return $data; } ?>
עכשיו בכל קובץ שקשור אנחנו מכניסים include פעם אחת של הקובץ פונקציות שלנו:
include 'C:\wamp64\www\my_php/functions.php';
עכשיו, למשל קובץ A.php צריך לקבל את שם הנושא הזה מהAPI של nodebb ולהכניס אותו לקובץ במערכת כTTS, אז הוא יראה ככה - כולל ה include:
<?php include 'C:\wamp64\www\my_php/functions.php'; // מביא קובץ פונקציות if (!function_exists('YMapi')) { throw new Exception("function YMapi Not exists, check include or file location"); } $getUrl = "https://tchumim.com/api/topic/11914/"; $tchumimGetTopic = json_decode(file_get_contents($getUrl), true); //משתנה tchumimGetTopic מכיל JSON מהפורום //העלאת הקובץ למערכת $token = "0777777:1234"; // טוקן $path = "/0/1010"; // לאן להעלות $NewFileName = "2"; // שם הקובץ $text = "שם הנושא המבוקש הוא :" . $tchumimGetTopic['title']; $ym = YMapi("normal", "UploadTextFile", [ "token" => $token, "what" => "ivr2:" . $path . "/" . $NewFileName . ".tts", "contents" => $text ]); if ($ym["responseStatus"] === "OK") { echo "הקובץ הועלה בהצלחה"; } else { echo "שגיאה בהעלאה, התשובה המלאה היא: " . json_encode($ym); } ?>
כנל בקבצים נוספים, על זה הדרך, כמובן זה הסבר בסיסי לדוגמא ספציפית, אני לא יכתוב בשבילך את הפרוייקט שלך, אבל לדעתי זו הדרך.
-
D dovid העביר נושא זה מ-תכנות ב-