Oldal: 1 / 2 12 UtolsóUtolsó
Eredmény: 1 - 10 (12) összesen

Téma: Látogató IP címének összehasonlítása - ellenőrzése mysql adatbázisban tárolttal

  1. #1
    'Say Hello To My Little Friend'
    Csatlakozott
    11-01-02
    Hozzászólás
    172
    Begyűjtött 3 köszönetet
    3 hozzászólásával

    Alapbeállítás Látogató IP címének összehasonlítása - ellenőrzése mysql adatbázisban tárolttal

    Megosztottam, hátha még valakinek szüksége lenne hasonlóra.
    Szerintem ez alapján már el lehet indulni.

    PHP kód:
    <?php
    $kod
    ="asdf0123"//kód azonosító stb.
    $felhasznalo_ip $_SERVER['REMOTE_ADDR'];
    $tarolt_ip=sqlget("SELECT ip FROM `".$mysql_prefix."profil` WHERE kod='$kod'");
    if(
    $felhasznalo_ip==$tarolt_ip){}
    else
    {die(
    "<META HTTP-EQUIV=\"refresh\" content=\"0;URL=../index.php\">");}
    ?>


    <?php
    $ip_cim 
    $_SERVER['REMOTE_ADDR']; 
    $tarolt_ip mysql_query("SELECT ip_cim FROM adat WHERE ip_cim='$ip_cim'");
    $num_results mysql_num_rows($tarolt_ip);
    if(
    $num_results==0)    {echo "Még nem jártam itt! $ip_cim";}
        else {echo 
    "Menj el! Te már jártál itt korábban!";}  
    ?>


    <?php
    $megadott
    ="MEGADOTT FIX IP CÍM";
    $egyezik="EGYEZIK AZ IP";
    $nemegyezik="NEM EGYEZIK AZ IP";

    if (
    $IP getenv('REMOTE_ADDR')) {}
    elseif (
    $IP getenv('HTTP_CLIENT_IP')) {}
    elseif (
    $IP getenv('HTTP_X_FORWARDED_FOR')) {}
    elseif (
    $IP getenv('HTTP_X_FORWARDED')) {}
    elseif (
    $IP getenv('HTTP_FORWARDED_FOR')) {}
    elseif (
    $IP getenv('HTTP_FORWARDED')) {}
    else { 
    $IP "0.0.0.0"; }
    $ip=explode(".",$IP);
    $megadott=explode(".",$megadott);

    if (
    $megadott[0].'.'.$megadott[1].'.'.$megadott[2] == $ip[0].'.'.$ip[1].'.'.$ip[2])
    {
    echo 
    $egyezik;
    }
    else
    {
    echo 
    $nemegyezik;
    }
    ?>




  2. #2
    Rubyist Geri logója
    Csatlakozott
    07-12-15
    Hely
    \x90
    Hozzászólás
    5.605
    Begyűjtött 1.332 köszönetet
    828 hozzászólásával

    Alapbeállítás re: Látogató IP címének összehasonlítása - ellenőrzése mysql adatbázisban tárolttal

    ez a kod tulajdonkeppen mit akarna csinalni?



  3. #3
    'Say Hello To My Little Friend'
    Csatlakozott
    10-04-13
    Hely
    Budapest
    Hozzászólás
    2.784
    Begyűjtött 863 köszönetet
    659 hozzászólásával

    Alapbeállítás re: Látogató IP címének összehasonlítása - ellenőrzése mysql adatbázisban tárolttal

    Érdekes kódrészletek. Én inkább azt ajánlom, hogy ezeket ne nagyon használja senki, hanem lehetőleg bízza olyanra a (normális) megírását, aki tudja is, hogy mit csinál.



  4. #4
    'Say Hello To My Little Friend'
    Csatlakozott
    11-01-02
    Hozzászólás
    172
    Begyűjtött 3 köszönetet
    3 hozzászólásával

    Alapbeállítás re: Látogató IP címének összehasonlítása - ellenőrzése mysql adatbázisban tárolttal

    Bizonyos esetekben jó ha van ilyen és ehhez hasonló kódod a fegyverarzenálodban, ugyanis sok a rossz szándékú spammelő robot ami szereti összecsúfítani a dolgokat.
    Rengeteg példát lehezne mondani, de ebbe most nem megyek bele, mindenkinek a saját fantáziájára bízom.

    Az első kettő kód részletet külföldi webmester fórumban találtam, a harmadik hazai.
    Lementettem őket egy php-ba.
    Aztán most újra elővettem, itt nem találtam ilyesmit ezért közzétettem.
    Elismerem, hogy amit kitettem azok kezdetleges megoldások, de vannak helyek ahol még ennél kevesebb is elég.
    Kíváncsi lennék, hogy Te hogyan oldanád meg



  5. #5
    Rubyist Geri logója
    Csatlakozott
    07-12-15
    Hely
    \x90
    Hozzászólás
    5.605
    Begyűjtött 1.332 köszönetet
    828 hozzászólásával

    Alapbeállítás re: Látogató IP címének összehasonlítása - ellenőrzése mysql adatbázisban tárolttal

    Idézet S4FI eredeti hozzászólása Hozzászólás megtekintése
    Elismerem, hogy amit kitettem azok kezdetleges megoldások, de vannak helyek ahol még ennél kevesebb is elég.
    Kíváncsi lennék, hogy Te hogyan oldanád meg
    Hat nem igy, mert ezek a kodreszletek tobb sebbol is vereznek.



  6. #6
    'Say Hello To My Little Friend'
    Csatlakozott
    10-04-13
    Hely
    Budapest
    Hozzászólás
    2.784
    Begyűjtött 863 köszönetet
    659 hozzászólásával

    Alapbeállítás re: Látogató IP címének összehasonlítása - ellenőrzése mysql adatbázisban tárolttal

    Idézet S4FI eredeti hozzászólása Hozzászólás megtekintése
    Kíváncsi lennék, hogy Te hogyan oldanád meg
    Arról beszéltünk, hogy a kód katasztrófa, nem magáról a megoldási ötletről.

    Amúgy:
    Saját weboldalt építettem, egyéni regisztrációs menettel, két éve üzemel, eddig egy robot nem regisztrált. Bár tény, hogy esetemben (lásd aláírásomban lévő link) elég specifikus dologról van szó.
    Amúgy robots.txt is már elég sokat tud tiltani, ahogy vannak .htaccess kódok is, aik rengeteg robotot tiltanak (valahol régebben én találtam ilyet itt a fórumon).



  7. #7
    'Say Hello To My Little Friend'
    Csatlakozott
    11-01-02
    Hozzászólás
    172
    Begyűjtött 3 köszönetet
    3 hozzászólásával

    Alapbeállítás re: Látogató IP címének összehasonlítása - ellenőrzése mysql adatbázisban tárolttal

    Rendben, köszi, majd rákeresek a fórumban. Egyébként a kódnak semmi köze a regisztrációhoz, csak magyarítottam a dolgot.

    Mondjuk vessézzük ki az elsőt.
    Mi a hiba benne, illetve mi hiányzik?

    Kicsit átalakítva:

    PHP kód:
    $azonosito=$_GET["asd"];
    $felhasznalo_ip $_SERVER['REMOTE_ADDR'];
    if (
    $felhasznalo_ip=="") {$felhasznalo_ip=="0.0.0.0";}
    $tarolt_ip=sqlget("SELECT ip FROM `".$mysql_prefix."valami` WHERE kod='$azonosito'");
    if(
    $felhasznalo_ip==$tarolt_ip) {echo "Rendben"; } 
    else 
    {die(
    "<META HTTP-EQUIV=\"refresh\" content=\"0;URL=../index.php\">");} 



    Utoljára módosítva: S4FI által : 2012-01-29 18:08

  8. #8
    'Say Hello To My Little Friend'
    Csatlakozott
    10-04-13
    Hely
    Budapest
    Hozzászólás
    2.784
    Begyűjtött 863 köszönetet
    659 hozzászólásával

    Alapbeállítás re: Látogató IP címének összehasonlítása - ellenőrzése mysql adatbázisban tárolttal

    Idézet S4FI eredeti hozzászólása Hozzászólás megtekintése
    Mondjuk vessézzük ki az elsőt.
    Kicsit átalakítva:

    PHP kód:
    $azonosito=$_GET["asd"];
    $felhasznalo_ip $_SERVER['REMOTE_ADDR'];
    if (
    $felhasznalo_ip=="") {$felhasznalo_ip=="0.0.0.0";}
    $tarolt_ip=sqlget("SELECT ip FROM `".$mysql_prefix."profil` WHERE kod='$azonosito'");
    if(
    $felhasznalo_ip==$tarolt_ip) {echo "Rendben"; } 
    else 
    {die(
    "<META HTTP-EQUIV=\"refresh\" content=\"0;URL=../index.php\">");} 
    Helyből nincs sqlget függvényed, így nincs is miről beszélni, az egész nem is fog működni. De ha lenne, akkor sem jó, a harmadik sorba ezt kéne írnod:
    $felhasznalo_ip="0.0.0.0"; //Egy egyenlőségjel
    De ha még ezt is figyelmen kívül hagyjuk, akkor is megoldható ennyiben:

    PHP kód:
    if($_SERVER['REMOTE_ADDR'] != sqlget("SELECT ip FROM `table_name` WHERE kod = '".mysql_real_escape_string($_GET["asd"])."'"))
       
    header("Location: ../index.php"); 
    Ez így szerintem csöppet szebb, ja és biztonságosabb is.


    Utoljára módosítva: Emphus által : 2012-01-29 18:16

  9. #9
    'Say Hello To My Little Friend'
    Csatlakozott
    11-01-02
    Hozzászólás
    172
    Begyűjtött 3 köszönetet
    3 hozzászólásával

    Alapbeállítás re: Látogató IP címének összehasonlítása - ellenőrzése mysql adatbázisban tárolttal

    Az egyenlőség jelet véletlenül elírtam, kettőt írtam egy helyett.
    Igazad van, így tényleg jobb.



  10. #10
    Rubyist Geri logója
    Csatlakozott
    07-12-15
    Hely
    \x90
    Hozzászólás
    5.605
    Begyűjtött 1.332 köszönetet
    828 hozzászólásával

    Alapbeállítás re: Látogató IP címének összehasonlítása - ellenőrzése mysql adatbázisban tárolttal

    ha egy altalad ismert IP cimet akarsz kitiltani, akkor a htaccess a legjobb megoldas szerintem.



Oldal: 1 / 2 12 UtolsóUtolsó

A téma címkéi:

Könyvjelzők

Hozzászólás szabályai

  • Új témákat nem hozhatsz létre
  • Válaszokat nem küldhetsz
  • Fájlokat nem csatolhatsz
  • A hozzászólásaidat nem módosíthatod
  •