Във връзка с коментарите по визуалната защита, както и с нарасналото търсене на сайтове, подпомагащи хората с увредено зрение, предлагам свой код, който прочита числото от сесията и го изговаря пред клиента. Това е съвсем груб код, който се държи по-добре в IE 7. Помогнете да напишем нещо, което не зависи от браузъра и се държи стабилно винаги.
За целта на скрипта записах като wav файлове всички цифри от десетична бройна система. прилагам файловете, за да не се налага да ги записвате пак:
1.wav,
2.wav,
3.wav,
4.wav,
5.wav,
6.wav,
7.wav,
8.wav,
9.wav,
0.wav.
Кодът е поместен във файл с име login.php и ползва, както и в предния пример code.php
login.php
<?php
session_start();
?>
<html>
<head>
<title>Audio Login</title>
</head>
<body>
<form name="f" action="some_page.php" method="post">
<img src="codes.php" width="150" border="1"><br/>
Въведете визуалния код:
<input type="text" name="vcode" size="10">
<input type="submit">
</form>
<?php
$mcode=$_SESSION['mycode'];
print($mcode."<br/>");
for($j=1;$j<2;$j++)
{
for($i=0;$i<strlen($mcode);$i++)
{
?>
<embed name="emb<?php echo $i+1 ?>" id="emb<?php echo $i+1; ?>" src="<?php echo substr($mcode,$i,1); ?>.wav" autostart="true" hidden="true" type="audio/x-wav" volume="100%" loop="false" />
<?php
}
}
?>
</body>
</html>
Подчертавам, че това е грубият вариант. Който се интересува, да понапише малко, така че да се получи нещо добро.