我最近开始学习网络开发,我目前正在开发一个网页,该网页读取文件夹中的许多音频文件,并让用户写下她/他所听到的内容的成绩单。我几天前开始,我设法通过 php 获取文件列表并通过随机播放数组(让用户实际播放)随机文件(要清楚,每次加载页面时都会准备好随机文件被播放)。这似乎工作正常。
我还想添加让用户收听下一个/上一个文件的按钮,但是无论何时何地我写这next($array)
行它都不起作用,更糟糕的是该shuffle
功能也停止工作。我不知道这是否是因为我在标签中使用了 php,但我的直觉告诉我。
我不知道我是否足够清楚,但我会很感激任何帮助。所以这是我的代码:
<html>
<head>
</head>
<body>
<p align="center">
<button><-</button>
<audio src="./Sound data/AAA2028C4_0.wav" type="audio/wav" align="center" id="RandomAudio" controls="controls">
</audio>
<button name="nextButton" onClick="next()">-></button>
</p>
<script language="JavaScript" type="text/javascript">
<?php
//Scan the sound data folder for files
$dir = './Sound data';
$files = scandir($dir);
$random_file = shuffle($files);
?>;
function load(){
var test = "./Sound data/<?php
//Select random element from files array
echo $files[$random_file];
?>";
//Play a random file
document.getElementById('RandomAudio').src=test;
}
function next(){
var next = "./Sound data/<?php
$next_file = next($random_file);
echo $files[$next_file];
?>";
//Play the next file
document.getElementById('RandomAudio').src=next;
}
window.onload = load;
</script>
<form method="post" action="testecho.php" align="center">
<strong><label>Transcript : </label></strong>
<br>
<textarea name ="transcript" rows="2" cols="40"> </textarea>
<input type="submit" />
</form>
</body>
</html>