Как при загрузке страницы проиграть звук только раз? При перезагрузке(обновлении) или переходе со страницы на страницу не воспроизводить его повторно!
//Воспроизвести звук
$belfile = "../work/sound/bel.wav";
$audio = "<audio autoplay src='".$belfile."'></audio>";
Сохраняйте некий идентификатор посетителя, например в сессии, и проверяйте его по условию. Как-то так:
session_start();
isset($_SESSION['audio']) ?: $_SESSION['audio'] = 0;
if (! $_SESSION['audio']) {
$_SESSION['audio'] = 1;
$belfile = "../work/sound/bel.wav";
$audio = "<audio autoplay src='" . $belfile . "'></audio>";
}
Я бы для этого использовал JS и localStorage.
Пример написан на Jquery
let isPlayAudio = 0; // создаём переменную для проверки
$(document).ready(function(){ // при прочтение страницы..
let local = localStorage.getItem('myKey'); // проверяем есть ли наша проверка в хранилище
if(local == 1) isPlayAudio = 1; // если у проверки из хранилища стоит "1", то звук не будет проигрываться, если нету ничего, то пропустит.
});
$(window).on('load', function(){ // Когда страница загружена..
if(isPlayAudio != 1) { // Проверяем можно ли запускать аудио
let audio = new Audio(); // создаём объект аудио
audio.src = 'https://sound-pack.net/download/Sound_16300.mp3'; // ссылка на звук
audio.autoplay = true; // запускаем
audio.volume = .3; // сделаем потише
audio.remove(); // удаляем
localStorage.setItem('playAudio', 1); // сохраняем значение для проверки
}
});
Сборка персонального компьютера от Artline: умный выбор для современных пользователей