PHP sa progres barom
Prikazujem rezultate 1 do 10 od 10

Tema: PHP sa progres barom

  1. #1
    Iskusan codemaker (avatar)
    Učlanjen
    05.04.2004.
    Lokacija
    Beograd
    Poruke
    6.416
    Reputaciona moć
    0

    Podrazumevano PHP sa progres barom

    Uradio sam neku PHP skriptu koja prihvata zahtev za upload fajla od strane klijenta. To radi ok, jedino sto je nezgodno sto ne mogu da nadjem nacina, da se vidi progres dok se fajl uploaduje.
    Nista ne mogu da ispisem dok se fajl u celosti ne primi, a to kod korisnika moze da izazove nedoumicu sta se desava ako je fajl koji uploaduje veliki.

    Ima li neko ideju kako da to resim na ovaj ili onaj nacin, samo da se vidi sta se otprilike desava? Ima li neko iskustva?



  2. #2
    Poznat loop (avatar)
    Učlanjen
    29.01.2005.
    Lokacija
    u senci divljeg kestena
    Poruke
    9.160
    Reputaciona moć
    0

    Podrazumevano Re: PHP sa progres barom

    To ce najbolje Sale83 da ti kaze da li tako nesto postoji,
    a ja ti jedino mogu reci da je na www.uploading.com postojao
    takav "preloader" sa tim je oznacavo koliko je fajl veliki i koliko je dosad poslato.
    Sad otkako su uradili redizajn ta scripta izgleda ne radi.

    Znaci postoji fora, samo je treba naci.
    Pitaj na zoni tamo ce ti sigurno reci, posto ovde Sale83 i ne dolazi bas cesto.
    pozz

  3. #3
    Elita Svabov (avatar)
    Učlanjen
    02.10.2004.
    Pol
    muški
    Poruke
    24.984
    Reputaciona moć
    320

    Podrazumevano Re: PHP sa progres barom

    http://www.raditha.com/php/progress.php
    samo proveri dal je free
    Well, of course it's a rat! You have rats in Spain, don't you - or did Franco have them all shot?

  4. #4
    Iskusan codemaker (avatar)
    Učlanjen
    05.04.2004.
    Lokacija
    Beograd
    Poruke
    6.416
    Reputaciona moć
    0

    Podrazumevano Re: PHP sa progres barom

    Nasao sam taj Mega Upload.
    Toliko je zamrseno, da sam na kraju odustao...
    Takodje, ima nekioliko sajtova koji to sve nude, a onda se ispostavi da treba toliko silna podesavanja da je postalo besmisleno....
    Koristicu PHP kod koji sam uradio, pa cu klijenta upozoriti da ce svakako dobiti poruku o zavrsetku uploada (uspesno ili neuspesno). Prethodno cu mu saopstiti duzinu fajla i estimaciju trajanja uploaada, pa nek ceka...
    Ima jos da se na projektu radi i nemam vremena da se bakcem sa progres barom.

    Ako je neko implementirao neko PHP resenje, nadam se da ce se javiti, do tada idemo dalje

  5. #5
    Elita Svabov (avatar)
    Učlanjen
    02.10.2004.
    Pol
    muški
    Poruke
    24.984
    Reputaciona moć
    320

    Podrazumevano Re: PHP sa progres barom

    a moze i tako...ja sam jednom hteo isto da uradim, al sam odustao iz slicnog razloga
    Well, of course it's a rat! You have rats in Spain, don't you - or did Franco have them all shot?

  6. #6
    Iskusan codemaker (avatar)
    Učlanjen
    05.04.2004.
    Lokacija
    Beograd
    Poruke
    6.416
    Reputaciona moć
    0

    Podrazumevano Re: PHP sa progres barom

    Citat Original postavio loop
    To ce najbolje Sale83 da ti kaze da li tako nesto postoji,
    a ja ti jedino mogu reci da je na www.uploading.com postojao
    takav "preloader" sa tim je oznacavo koliko je fajl veliki i koliko je dosad poslato.
    Sad otkako su uradili redizajn ta scripta izgleda ne radi.

    Znaci postoji fora, samo je treba naci.
    Pitaj na zoni tamo ce ti sigurno reci, posto ovde Sale83 i ne dolazi bas cesto.
    pozz
    Kako bese link za zonu? Negde mi se zaturilo...
    Mada mislim da je mrka kapa za sada...

    Ono na uploading.com, je radjeno u flasu, sto necu da koristim.

  7. #7
    Iskusan codemaker (avatar)
    Učlanjen
    05.04.2004.
    Lokacija
    Beograd
    Poruke
    6.416
    Reputaciona moć
    0

    Podrazumevano Re: PHP sa progres barom

    Citat Original postavio Obersturmfuehrer
    a moze i tako...ja sam jednom hteo isto da uradim, al sam odustao iz slicnog razloga
    Da, generalno PHP to i ne moze. Koriste se razni trikovi, koji zauzvrat traze instalaciju te Jave, te nekih drugih stvari, te pacovanje PHP, te da se drzis za levo uvom dok uploadujes ili da stojis na jednoj nozi itd,....
    Problem kod PHP varijante je sto, ma sta napisao u skriptu, kad treba da se izvrsava donload (od strane PHP je to download), NISTA se ne moze prikazati dok se ta operacija (streaming) ne zavrsi, tako da ne mogu ni napraviti PHP koji najpre prikaze neki tekst, barem "Upload, sacekajte..." makar staticno, nema nista od toga. Dok se download ne zavrsi, nista drugo ne radi....
    Cim PHP oseti da treba da vrsi download, sve drugo postaje nevazno i samo to radi...

    PERL vec bi trebalo da moze ali i to nesto kilavo.
    ASP moze ali opet komplkiovano do zla boga...

    Staces, security issues su postali prava mora.... tako da prakticki treba da "varas" sistem da bi ti dozvolio upload, pri cemu naravno treba jos i proveravati sta stize itd, itd....
    Poslednji put ažurirao/la codemaker : 22.12.2005. u 00:17

  8. #8
    Poznat loop (avatar)
    Učlanjen
    29.01.2005.
    Lokacija
    u senci divljeg kestena
    Poruke
    9.160
    Reputaciona moć
    0

    Podrazumevano Re: PHP sa progres barom


  9. #9
    Zainteresovan član
    Učlanjen
    27.09.2003.
    Pol
    muški
    Lokacija
    Sydney
    Poruke
    388
    Reputaciona moć
    55

    Podrazumevano Re: PHP sa progres barom

    Citat Original postavio codemaker
    Da, generalno PHP to i ne moze. Koriste se razni trikovi, koji zauzvrat traze instalaciju te Jave, te nekih drugih stvari, te pacovanje PHP, te da se drzis za levo uvom dok uploadujes ili da stojis na jednoj nozi itd,....
    Problem kod PHP varijante je sto, ma sta napisao u skriptu, kad treba da se izvrsava donload (od strane PHP je to download), NISTA se ne moze prikazati dok se ta operacija (streaming) ne zavrsi, tako da ne mogu ni napraviti PHP koji najpre prikaze neki tekst, barem "Upload, sacekajte..." makar staticno, nema nista od toga. Dok se download ne zavrsi, nista drugo ne radi....
    Cim PHP oseti da treba da vrsi download, sve drugo postaje nevazno i samo to radi...

    PERL vec bi trebalo da moze ali i to nesto kilavo.
    ASP moze ali opet komplkiovano do zla boga...

    Staces, security issues su postali prava mora.... tako da prakticki treba da "varas" sistem da bi ti dozvolio upload, pri cemu naravno treba jos i proveravati sta stize itd, itd....
    Uvek postoji opcija da obavestis Korisnika.
    Napravis jedan skriveni layer sa porukom Upload je u toku ili nekom gif animacijom. a dugmetu upload od forme namestis akciju na onClick da prikaze skriveni layer.
    Tako ce odma kad neko pritisne upload dugme da mu pokaze poruku da je upload u Toku.
    Kad se upload zavrsi automatski se sakriva layer i ispisuje se poruka Uspesno uplodovan fajl..

    Recimo Sasvim obican PHP kod da ti docaram to:


    upload.php
    Kod:
    <html>
    
     <script language="JavaScript" type="text/JavaScript">
    <!--
    function MM_reloadPage(init) {  //reloads the window if Nav4 resized
      if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
        document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
      else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
    }
    MM_reloadPage(true);
    
    function MM_findObj(n, d) { //v4.01
      var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
        d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
      if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
      for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
      if(!x && d.getElementById) x=d.getElementById(n); return x;
    }
    
    function MM_showHideLayers() { //v6.0
      var i,p,v,obj,args=MM_showHideLayers.arguments;
      for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2];
        if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v=='hide')?'hidden':v; }
        obj.visibility=v; }
    }
    //-->
    </script>
    <form enctype="multipart/form-data" action="<?php echo $_SERVER['PHP_SELF'];?>" method="post">
    <input type="hidden" name="MAX_FILE_SIZE" value="524288">
    <fieldset>
      <legend>Ubaci Fajl:</legend>
        <p><b>File:</b> 
        <input type="file" name="upload" />
      </p>
      </fieldset>
    <div align="center">
        <input name="dodaj" type="submit" onClick="MM_showHideLayers('Layer1','','show')" value="dodaj" />
      </div>
    </form>
    <?
    if (isset($_POST['dodaj'])) {
    
    //$poruka="Upload je u toku...";
    if(move_uploaded_file($_FILES['upload']['tmp_name'], "uploads/".$_FILES['upload']['name'])) {
    //echo '<p>Uplodali smo slikicu!</p>';
    $poruka="Uspesno ubacen Fajl";
    } else {
    echo '<p><font color ="red">Nisam uspio uplodat sliku zbog system errora. Sorry!</font></p>';
    }
    echo $poruka;
    }
    ?>
    <div id="Layer1" style="position:absolute; width:200px; height:115px; z-index:1; overflow: hidden; visibility: hidden;">Upload Fajla u Toku...</div>
    </html>
    Kopiraj kod i snimi ga kako upload.php prebaci na server.
    U dir gde ti bude upload.php napravi i folder uploads gde ce ti se uplodovati test fajlovi da vidis kako to mozes docarati sa layerom.

    Poz od sale83


    To gore ti je jedna opcija:

    Druga opcija jeste da probas ovaj progres bar radjen u PHP-u

    DEMO:
    http://www.modphp.org/upload/
    Download:
    http://www.modphp.org/viewtopic.php?t=324 - Forum link je tamo !!
    Tj ovi linkovi:

    Ja sam skino upload-progress-php-5.0.1-patch.tar.gz !!!

    http://www.modphp.org/src/upload-progress-php-4.3.6-patch.tar.gz

    http://www.modphp.org/src/upload-progress-php-5.0.1-patch.tar.gz

    Poz od sale83
    Poslednji put ažurirao/la SALE83 : 22.12.2005. u 12:18

  10. #10
    Iskusan codemaker (avatar)
    Učlanjen
    05.04.2004.
    Lokacija
    Beograd
    Poruke
    6.416
    Reputaciona moć
    0

    Podrazumevano Re: PHP sa progres barom

    Sale, hvala na odgovoru.
    Sve ono oko direktorija, oko poziva i oko PHP koda mi je jasno i to vec neko vreme funkcionise.
    jedino mi je bio problem ovo sa progres barom.

    Koristim iskljucivio IIS 6 (Windows 2003 server) i PHP je vec instalisan.
    Kako sam shvatio, pachevi koje pominjes su za verziju kad se radi pod Apache serverom?
    Nije mi jasno sta i kako da patchujem, jer imam neki izvrsni EXE fajl, kojim automatski instalisem i konfigurisem osnovno za PHP, a u uputstvu pise da se patchuje PHP a onda reinstalise? Ja nemam sta da patchujem kad mi je instalacion EXE jedino sto ima, sto za instalaciju sto za reinstalaciju.

    Malo mi sve to sa patchevima azvuci komplikovano, i mislim da cu odustati,osim ako ima neko jednostavno resenje.

    Primeri koji psotoje na forumu, predpostavljaju da se krece (korisnicki deo) iz PHP-a a ja krecem iz HTM-a, tako da i tu bih morao da previse "gimnasiticiram:

    Osim toga, mislim da cu ici na prvu varijantu, imacu jedno dugme, koje ce biti malo vece, ustvari GIF, a izmenicu ga onog momenta kada korisnik klinke da salje fajl, prikazivace se ustvari drugi GIF itd...

    U svakom slucaju, hvala na odgovoru.

    (Ono sa MegaUpload, je veoma ruzno uradjeno, pa mi i to ne odgovara, na stranu to sto je komplikovano podesavanje do zla boga.

    Pozdrav

Slične teme

  1. Progres
    Autor tab503 u forumu Filozofija
    Odgovora: 81
    Poslednja poruka: 31.05.2009., 00:23

Pravila za slanje poruka

  • Ne možete kreirati novu temu
  • Ne možete poslati odgovor
  • Ne možete dodati priloge
  • Ne možete prepraviti svoju poruku
  •