Keresés

Új hozzászólás Aktív témák

  • Sk8erPeter
    nagyúr

    Jól van, nem kell kinevetni...:)
    A lementett oldal tartalmát tudom szerkeszteni.

    Akkor marad a rabszolgamunka :))

    A lementett oldal tartalmát persze, úgy szerkeszted, ahogy akarod, de a tőled teljesen független oldal kódjába nem tudsz belebarmolni, csak ha hacker vagy. :D
    Amúgy melyik ez az oldal?

  • Jim-Y
    veterán

    Akkor elmondom pontosan mit szeretnék.
    Van a neten egy weboldal, ahol szakkönyvek vannak fent. Le van korlátozva az egyszerre letölthető oldalszám 20-ra.
    Kellemetlen, de nem megoldhatatlan 20 oldalasával letölteni a nekem kellő könyveket.
    Erre kerestem volna valami megoldást, miközben bogarásztam az oldal forráskódját.

    És, hogy akartad az oldalon lévő kódot kicserélni egy általad szerkesztettre?:D

  • Sk8erPeter
    nagyúr

    Sziasztok!

    Egy nagyon rövidke JavaScript rutin javításában kérnék segítséget.

    Pdf néző prorgam mentés része le van korlátozva 20 oldalra. Ezt a korlátot kellene valahogy fentebb tornászni.
    Itt a script.
    Hiába javítom ki a 20-at többre az nem segít.

    function Save() {
    var from = FromField.getValue()*1;
    var to = ToField.getValue()*1;
    if( from - 1 >= 0 && from - 1 <= maxPage && to - 1 <= maxPage && to - 1 >= 0 && from+0 <= to+0 )
    {
    if( to - from >= 20 )
    {
    alert("Max 20 pages");
    }
    else
    {
    var from1 = from - 1;
    var to1 = to - 1;
    var SaveUrl = pdfDir+pdfFileName+"/slice?pg="+from1+"&to="+to1+"&hideui=0";
    FromField.setValue("");
    ToField.setValue("");
    saveWindow.hide();
    window.open(SaveUrl);
    }
    }
    else
    {
    alert("Invalid pages");
    if( from - 1 > maxPage )
    FromField.setValue(maxPage+'');
    if( from - 1 < 0 )
    FromField.setValue('1');
    if( to - 1 > maxPage )
    ToField.setValue(maxPage+'');
    if( to - 1 < 0 )
    ToField.setValue('1');
    if( from*1 > to*1 )
    ToField.setValue( from );
    }
    }

    function hideSaveWindow() {
    FromField.setValue("");
    ToField.setValue("");
    saveWindow.hide();
    }

    Köszönöm.

    Szerintem túlbonyolítod a kódot. Ezenkívül remélem azt tudod, hogy a kliensoldali korlátozás nem sokat ér, szerveroldalon kell korlátozni az ilyesmit ahhoz, hogy hatása is legyen (pl. PHP-vel), a JavaScript kikapcsolható, megkerülhető, stb.
    A FromField, ToField nálad mire használatos?

    Röviden elmondom, szerintem mi lenne az egyszerűbb és korlátozás szempontjából is egy fokkal jobb megoldás (attól is függ, mennyire megy a JavaScript, meg a szerveroldali kódolás):
    1.) indítasz egy sessiont szerveroldalon (PHP: session_start() ), kezdetben beállítod 0-ra az eddigi letöltések (gondolom ezt akarod korlátozni) számát (pl. PHP: $_SESSION['nr_of_downloads'] = 0;)
    2.) a mentésre való klikkeléskor AJAX-szal küldesz egy egyszerű lekérést a szerver felé, lekérdezed, letölthet-e még a felhasználó (nem lépte-e át a 20-as korlátot) (pl. PHP: if($_SESSION['nr_of_downloads'] < 20)
    3.) - ha igen, akkor elindíthatod a letöltést, és megnöveled eggyel ($_SESSION['nr_of_downloads']++;)
    - ha nem, feldobod neki a figyelmeztető ablakot akár alert()-tel kliensoldalon

  • Jim-Y
    veterán

    Nem jó, hibaüzenettel elszáll.
    Viszont, ha a 20-at kisebbre írom, akkor csak annyi oldalt enged letölteni.

    Mivel rosszul tagolva írtad be, így kimaradt egy } jel, próbáldd így

    function Save() {
    var from = FromField.getValue()*1;
    var to = ToField.getValue()*1;
    if( from - 1 >= 0 && from - 1 <= maxPage && to - 1 <= maxPage && to - 1 >= 0 && from+0 <= to+0 ){
    var from1 = from - 1;
    var to1 = to - 1;
    var SaveUrl = pdfDir+pdfFileName+"/slice?pg="+from1+"&to="+to1+"&hideui=0";
    FromField.setValue("");
    ToField.setValue("");
    saveWindow.hide();
    window.open(SaveUrl);
    } else {
    alert("Invalid pages");
    if( from - 1 > maxPage )
    FromField.setValue(maxPage+'');
    if( from - 1 < 0 )
    FromField.setValue('1');
    if( to - 1 > maxPage )
    ToField.setValue(maxPage+'');
    if( to - 1 < 0 )
    ToField.setValue('1');
    if( from*1 > to*1 )
    ToField.setValue( from );
    }
    }

  • Jim-Y
    veterán

    Sziasztok!

    Egy nagyon rövidke JavaScript rutin javításában kérnék segítséget.

    Pdf néző prorgam mentés része le van korlátozva 20 oldalra. Ezt a korlátot kellene valahogy fentebb tornászni.
    Itt a script.
    Hiába javítom ki a 20-at többre az nem segít.

    function Save() {
    var from = FromField.getValue()*1;
    var to = ToField.getValue()*1;
    if( from - 1 >= 0 && from - 1 <= maxPage && to - 1 <= maxPage && to - 1 >= 0 && from+0 <= to+0 )
    {
    if( to - from >= 20 )
    {
    alert("Max 20 pages");
    }
    else
    {
    var from1 = from - 1;
    var to1 = to - 1;
    var SaveUrl = pdfDir+pdfFileName+"/slice?pg="+from1+"&to="+to1+"&hideui=0";
    FromField.setValue("");
    ToField.setValue("");
    saveWindow.hide();
    window.open(SaveUrl);
    }
    }
    else
    {
    alert("Invalid pages");
    if( from - 1 > maxPage )
    FromField.setValue(maxPage+'');
    if( from - 1 < 0 )
    FromField.setValue('1');
    if( to - 1 > maxPage )
    ToField.setValue(maxPage+'');
    if( to - 1 < 0 )
    ToField.setValue('1');
    if( from*1 > to*1 )
    ToField.setValue( from );
    }
    }

    function hideSaveWindow() {
    FromField.setValue("");
    ToField.setValue("");
    saveWindow.hide();
    }

    Köszönöm.

    Próbáldd ki azt, hogy a kommentezett részt kitörlöd

    if( from - 1 >= 0 && from - 1 <= maxPage && to - 1 <= maxPage && to - 1 >= 0 && from+0 <= to+0 )
    {

    if( to - from >= 20 )
    {
    alert("Max 20 pages");
    }
    else
    {

    var from1 = from - 1;
    var to1 = to - 1;

    üdv

Új hozzászólás Aktív témák