השמעת audio בphp כשהמקור הוא קובץ להורדה (ימות המשיח) וניתן לראות בקונסול את הבקשה
-
ברצוני להשמיע למשתמש באתר שלי כמה הודעות מימות המשיח
כרגע אני משתמש בקוד הבאecho "<audio id='record' style='display:displayRecord;' controls src='https://www.call2all.co.il/ym/api/DownloadFile?token=0XXXXXX:XXXXX&path=".$path."'type='audio/mp3'></audio>";
הבעיה שלי בזה שבבדיקה פשוטה בקונסול ניתן לראות לאן נשלחה בקשת ההורדה ולקבל את המספר מערכת והסיסמה
ואני לא רוצה שההורדה תתבצע לשרת וההשמעה תהיה מהשרת
היות שמדובר בהודעות מתחלפות ואין לי כח למחוק כל פעם את ההקלטות שהצטברו בשרת
אלא ברצוני שהשרת יבצע את ההורדה אך יוריד את זה מיד לשרת
אשמח לעזרתכם
@חוקר הביא קוד שאמור לעזור לזה אך אני לא הצלחתי להסתדר איתו תודה רבהpublic function actionPlayFile($path) { $url = 'https://call2all.co.il/ym/api/DownloadFile?&token=0771234567:1234&path=ivr2:' . $path; $path_parts = pathinfo($url); $ext = $path_parts['extension']; $filename = $path_parts['filename']; header("Content-type: application/$ext"); header("Content-Disposition: attachment; filename=$filename.$ext"); $stream = fopen('php://output', 'w'); $ch = curl_init($url); curl_setopt($ch, CURLOPT_READFUNCTION, function($ch, $fd, $length) use ($stream) { return fwrite($stream, fread($fd, $length)); }); curl_exec($ch); curl_close($ch); exit(); }
-
קודם כל תסיר את שני השורות האלה:
header("Content-type: application/$ext"); header("Content-Disposition: attachment; filename=$filename.$ext");
שנית, בקוד העליון תשנה לזה:
echo "<audio id='record' controls src='/ivr-pr.php?path=".$path."' type='audio/mp3'></audio>";
שלישית, דאג ליצור קובץ בשם
ivr-pr.php
ושיהיה בו קוד שקורא לפונקציה של actionPlayFile עם הפרמטר path. -
@טוב-להודות אגב, זה לא CSS תקין:
display:displayRecord
-