Hallo,
bin neu hier und eigentlich wegen einer einzigen Frage hier. Aber wie es hier aussieht, werde ich wohl öfter vorbei schauen.
Habe ein Problem mit Upload Status Anzeige. Habe den Artikel per google gefunden: [wiki]Upload Fortschritt mit PHP + AJAX[/wiki]
Habe den Code entsprechend angepasst (Pfade etc)
Mein Problem ist, die function ajax wird nur einmal ausgeführt. Wenn ich Upload starte, wird mir am Anfang i-ein Wert angezeigt. Dieser Wert wird jedoch nach 750 Millisekunden nicht verändert, wie es eigentlich der Fall sein sollte.
Ich habe schon den Funktionsaufruf (timeout) in die Funktion selbst reingepackt. Jedoch kriege ich beim zweiten Aufruf Division by zero raus (anscheinend ist die ID nicht mehr gültig oder so)
Mein Code:
mp3_upload.php
Alles anzeigen
mp3_upload_status.php
Diese Dateien liegen im Ordner content und werden in die index.php (liegt in übergeordneten Ordner) includet
würde mich freuen, wenn jemand den Fehler findet
mit freundlichen Grüßen
bin neu hier und eigentlich wegen einer einzigen Frage hier. Aber wie es hier aussieht, werde ich wohl öfter vorbei schauen.
Habe ein Problem mit Upload Status Anzeige. Habe den Artikel per google gefunden: [wiki]Upload Fortschritt mit PHP + AJAX[/wiki]
Habe den Code entsprechend angepasst (Pfade etc)
Mein Problem ist, die function ajax wird nur einmal ausgeführt. Wenn ich Upload starte, wird mir am Anfang i-ein Wert angezeigt. Dieser Wert wird jedoch nach 750 Millisekunden nicht verändert, wie es eigentlich der Fall sein sollte.
Ich habe schon den Funktionsaufruf (timeout) in die Funktion selbst reingepackt. Jedoch kriege ich beim zweiten Aufruf Division by zero raus (anscheinend ist die ID nicht mehr gültig oder so)
Mein Code:
mp3_upload.php
Quellcode
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
- <html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" xml:lang="de">
- <head>
- <script type="text/javascript">
- //<![CDATA[
- function ajax(uid) {
- var req;
- try {
- req = window.XMLHttpRequest?new XMLHttpRequest():
- new ActiveXObject("Microsoft.XMLHTTP");
- } catch (e) {
- //Kein AJAX Support
- }
- req.onreadystatechange = function() {
- if ((req.readyState == 4) && (req.status == 200)) {
- document.getElementById("status").innerHTML = req.responseText;
- }
- }
- req.open('GET', 'content/mp3_upload_status.php?uid='+uid);
- req.send(null);
- alert(document.mp3_upload_form.APC_UPLOAD_PROGRESS.value);
- //setTimeout('ajax(\''+document.getElementsByName('APC_UPLOAD_PROGRESS').value+'\')', 750);
- }
- //]]>
- </script>
- </head>
- <body>
- <iframe src="content/mp3_upload_submit.php" name="hidden_upload" style="display:none"></iframe>
- <div id="status"></div>
- <form action="index.php?page=mp3_upload_submit" target="hidden_upload" method="post" name="mp3_upload_form" enctype="multipart/form-data">
- <input type="hidden" name="APC_UPLOAD_PROGRESS" value="<? echo uniqid();?>"/>
- <input type="file" name="upload" />
- <input type="submit" onclick="this.disabled=true; setTimeout('ajax(\''+this.form.APC_UPLOAD_PROGRESS.value+'\')', 750); "/>
- </form>
- </body>
- </html>
mp3_upload_status.php
Diese Dateien liegen im Ordner content und werden in die index.php (liegt in übergeordneten Ordner) includet
würde mich freuen, wenn jemand den Fehler findet
mit freundlichen Grüßen