Moin Jungs,
ich hab ein Problem mit dem PHP APC-Extension. Ich möchte einen Progressbar in mein Uploadformualar einbauen. Ich hab nur folgendes Problem. Die Funktion apc_fetch gibt erst Daten aus, wenn der Upload fertig ist.
Da mein Quellcode recht umfangreich ist, versuche ich nur die relevanten Passagen zu posten.
Das Forumalar wird mittels Smarty generiert:
progress.php
process.php
upc.html
Alles anzeigen
ich hab ein Problem mit dem PHP APC-Extension. Ich möchte einen Progressbar in mein Uploadformualar einbauen. Ich hab nur folgendes Problem. Die Funktion apc_fetch gibt erst Daten aus, wenn der Upload fertig ist.
Da mein Quellcode recht umfangreich ist, versuche ich nur die relevanten Passagen zu posten.
Das Forumalar wird mittels Smarty generiert:
progress.php
process.php
upc.html
Quellcode
- ...
- <script type="text/javascript">
- var req = null;
- function getXMLRequestHandle(){
- try{
- req = new XMLHttpRequest();
- }catch (e){
- try{
- req = new ActiveXObject("Msxml2.XMLHTTP");
- }catch (e){
- try{
- req = new ActiveXObject("Microsoft.XMLHTTP");
- }catch (failed){
- req = "failed";
- }
- }
- }
- }
- function getProgress(){
- if(req == "failed"){
- alert("Fehler beim Erstellen eines XMLRequest. Deaktivieren Sie JavaScript, um diese Seite zu nutzen!");
- return;
- }
- if(req == null)
- getXMLRequestHandle();
- req.onreadystatechange = function(){
- switch(req.readyState){
- case 4:
- if(req.status == 200){
- document.getElementById("debug").innerHTML = req.responseText;
- }
- break;
- }
- };
- req.open("get", "progress.php?tid=" + document.getElementById("progress_key").value);
- req.send(null);
- }
- function startUpload(){
- window.setInterval("getProgress()", 2000);
- }
- ...
- <form action="process.php" target="hidden_upload" method="post" enctype="multipart/form-data">
- ...
- <input type="hidden" name="submit" value="submit"/>
- <p><input type="submit" value="upload!" onclick="this.disabled=true; startUpload();"/></p>
- <input type="hidden" name="APC_UPLOAD_PROGRESS" id="progress_key" value="{$temp_upload_key}"/>