Chcialbym zaprezentowac swoj pierwszy ajaxowy sofcik i zapytac dlaczego nie dziala on pod Opera 8.52 (na Fire Foxie hula).
Oto link:
http://phpion.com/ajax/loader.html
A oto zrodla:
loader.html
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta name="GENERATOR" content="Quanta Plus"> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2"> <style type="text/css"> #loading { font-family: Verdana, Tahoma, sans-serif; font-size: 18px; width: 100%; background-color: #FFFFFF; text-align: center; } #info { font-family: Verdana, Tahoma, sans-serif; font-size: 12px; color: #969696; width: 100%; background-color: #FFFFFF; text-align: center; padding: 5px; } #progress { font-family: Verdana, Tahoma, sans-serif; font-size: 18px; font-weight: bold; width: 100%; background-color: #FFFFFF; text-align: center; } </style> <script type="text/javascript" language="JavaScript1.2"> function sendEMail(part) { total = 10; document.getElementById('button').disabled = true; advAJAX.get({ url: 'loader.php', parameters : { 'part' : part, }, onLoading : function(obj) { if (part <= total) { if (part == 1) putContent('<img src="loading.gif"> Proszę czekać...', 'loading'); percent = parseInt(part / total * 100); if (percent > 100) percent = 100; progress = ''; for (i=1; i<=part; i++) progress += 'l'; progress += '<font color="#969696">'; for (i=part+1; i<=total; i++) progress += 'l'; progress += '</font> ' + percent + '%'; putContent(progress, 'progress'); } }, onSuccess : function(obj) { if (obj.responseText == '1') sendEMail(part + 1); else { putContent('', 'loading'); putContent('', 'progress'); putContent('Finito! :)', 'info'); document.getElementById('button').disabled = false; } }, onError : function(obj) { alert('Error: ' + obj.status); } }); } function putContent(content, div) { document.getElementById(div).innerHTML=content; } </script> </head> <div> <input id="button" type="button" value="Go! go! go!" onClick="sendEMail(1);" /> <div style="width: 300px;"> </div> </body> </html>
oraz loader.php
<?php $stop = 10; if ($_GET['part'] <= $stop) { // wysylka maila } else ?>
I 2 male uwagi. Zmienna total docelowo oczywiscie rowniez bylaby pobierana za posrednictwem php. Skrypt wysylajacy maile na razie ich nie wysyla - bo i po co

Prosilbym o opinie, sugestie, uwagi jakoze to moje pierwsze starcie z Ajaxem. Szczegolnie o pomoc dlaczego toto nie dziala pod Opera (przyklady ze strony advAjax chodza wiec to raczej nie z ustawieniami przegladarki).
Pozdrawiam: phpion (.com)
//EDIT:
http://forum.php.pl/index.php?showtopic=45790&hl=Opera znalazalem ten topic ale to nic nie daje :|
http://forum.php.pl/index.php?showtopic=52276 podobnie jak to...