Hirdetés

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

  • Sk8erPeter

    nagyúr

    válasz Brown ügynök #6606 üzenetére

    Igazából most kb. ugyanazt írtad le, mint korábban...csak a lényegre nem válaszoltál. :)
    A "másik kért url-nél" valszeg nincs beállítva a $_GET['id'], nem jó az átirányítás .htaccess-ből, vagy valami hasonló probléma van, mindenesetre ha a $_GET['id'] nem létezik, az 'id' indexen nyilván nem is fog elérni semmit a $_GET-ből, így kapsz egy notice-t.
    Érdemes lenne inkább leellenőrizni minden esetben, hogy egyáltalán létezik-e a $_GET['id'] változó, be van-e állítva (isset), ezt átadni egy változónak, aminek minden esetben van valami ilyen default értéke - nem tudom, nálad hogy van megoldva, de lehetne egy alapértelmezett cikk, amire mutat, pl. cikk1, vagy cikk0, vagy csak simán cikk.
    Példa:
    $id = 0; // default érték, de úgy csináld meg, hogy stimmeljen, legyen alapértelmezett cím, amit ilyenkor megmutat
    if( !empty($_GET['id']) ){ /// isset($_GET['id']) is lehetne, de így két legyet ütsz egy csapásra: ha nincs beállítva (!isset), ez az ág úgysem lesz igaz, ráadásul ellenőrzi, hogy nem üres-e; igazából ide még plusz ellenőrzéseket is illene betenni
    $id = $_GET['id'];
    }

    if( $uri == ...........){
    ........
    }
    elseif ($uri == '/blog/cikk'.$id){
    mutató_függvény($id);
    }
    .......

    Persze ez így nem igazán szép megoldás, hogy alapértelmezett cikk.$id útvonalat nyit meg, lehetne inkább pl. úgy megoldani, hogy amennyiben nincs beállítva a $_GET['id'] változó, akkor valami olyan oldalra irányít, ahonnan kiválaszthatja a felhasználó a kívánt cikket (esetleg hibaoldal, stb.).
    Pl.
    if( empty($_GET['id']) ){
    mutatom_a_cikkeket_hogy_ott_valaszd_ki_fv( ); // ne legyen ekkora neve :D
    }

    Így a korábbit csak azért írtam, hogy lásd, hogy a $_GET értékek meglétét MINDEN esetben ellenőrizni KELL, és annak megfelelően cselekedni, különben ha nincs beállítva (bármilyen probléma okán!), akkor NEM fog működni, legalábbis nem úgy, ahogy szeretnéd, és az ilyen lehetséges hibajelenségekre fel KELL készülni, hogy nagyjából minden hibalehetőséget kiszűrj. Ráadásul ellenőrzés nélkül közvetlenül átadni egy felhasználótól kapott adatot, a legrosszabb gyakorlat.
    Remélem nem azt fogod most erre reagálni, hogy "de ez így akkor is működik, nem változtatok rajta". :)
    Ha továbbra is fennáll a gond, akkor meg egy kicsit konkrétabb választ írj, ne ugyanazokat írd le másképp, amiket korábban. :)

    [ Szerkesztve ]

    Sk8erPeter

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