2013-03-27 3 views
5

привет, у меня есть окно предупреждения о сообщении, которое появляется, когда пользователь получает новое сообщение, что я хочу сделать, это добавить звук в этот квадрат, когда он появится, я использую оператор php if, чтобы проверить, когда пользователь получает новый сообщение, и я попытался добавить звук, выполнив следующее, но не работая, пожалуйста, кто-нибудь покажет мне, как это сделать. Благодарю.воспроизводить звуковой клип, когда php/mysql, если утверждение верно?

<?php 
$check_new_chats = check_new_chats(); 
while ($chat = mysql_fetch_array($check_new_chats)) 
if (isset($_SESSION['user_id'])) { 
     if ($chat['to_user_id'] == $_SESSION['user_id']){ 
     echo("<embed name='sound_file' src='/assets/music/sound_file.mp3' loop='true' hidden='true' autostart='true'/>"); ?> 
+0

Возможно, не связано, но должен ли этот код заключить в скобки '{}' из цикла while? – hellohellosharp

+0

Я предполагаю, что это не проблема PHP/MySQL .. вы проверили, является ли встраиваемый тег частью источника вашей страницы? –

ответ

3
<?php 
$check_new_chats = check_new_chats(); 
while ($chat = mysql_fetch_array($check_new_chats)) 
if (isset($_SESSION['user_id'])) { 
    if($chat['to_user_id'] == $_SESSION['user_id']){ 
     echo '<script type="text/javascript">play_sound();</script>'; 
    } 
} 
?> 

Вот функция JavaScript:

<script type="text/javascript"> 
    function play_sound() { 
     var audioElement = document.createElement('audio'); 
     audioElement.setAttribute('src', '/assets/music/sound_file.mp3'); 
     audioElement.setAttribute('autoplay', 'autoplay'); 
     audioElement.load(); 
     audioElement.play(); 
    } 
</script> 
+0

спасибо за thins, я пробовал это, но до сих пор нет звукового файла. –

+0

@JamesPale Я пробовал это, определенно работая. Проверьте правильность пути. –

+0

ничего не происходит, просто звук не звучит, ошибок нет. –

1

По вопросу:

привет я есть предупредительное окно с сообщением, которое появляется, когда пользователь получает новый сообщение, что я хочу сделать, это добавить звук в этот ящик, когда он всплывает

У вас уже есть функция javascript, которая при необходимости отображает окно предупреждения. Используйте информацию от this answer, чтобы воспроизвести звук с ней.

<audio id="soundHandle" style="display: none;"></audio> 
<script> 
    soundHandle = document.getElementById('soundHandle'); 
    soundHandle.src = '/assets/music/sound_file.mp3'; 
</script> 



//With your message alert function.... 
alert("Message box"); 
soundHandle.play(); 
Смежные вопросы