Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it L'avatar di mybox
    Registrato dal
    Mar 2007
    Messaggi
    507

    pagina visualizzabile solo a determinati range di ip

    come da titolo...
    come posso incrementare una funzione che permetta la visualizzazione della pagina solo agli ip range che specifico e reindirizzare gli altri a un link esterno???

    grazie a chi mi aiuterà--- :master:

  2. #2
    Ho messo giù questo codice velocemente ma dovrebbe funzionare

    E' più facile lavorare con gli ip in formato decimale
    Codice PHP:
    <?php
    //Indirizzo iniziale
    $startip "192.168.0.0";

    // Indirizzo finale
    $endip "192.168.0.255";

    //////////////////////////////////////////////////////
    $startip ip2long($startip);
    $endip ip2long($endip);
    $ip ip2long(getenv('REMOTE_ADDR'));
    //////////////////////////////////////////////////////

    if($ip >= $startip && $ip <= $endip)
    {
        
    // se è nel range    
    }
    else
    {
        
    //se non è nel range
    }
    ?>

  3. #3
    Utente di HTML.it L'avatar di mybox
    Registrato dal
    Mar 2007
    Messaggi
    507
    Codice PHP:
    <?php 
    //Indirizzo iniziale 
    $startip "192.168.0.0"

    // Indirizzo finale 
    $endip "192.168.0.255"

    ////////////////////////////////////////////////////// 
    $startip ip2long($startip); 
    $endip ip2long($endip); 
    $ip ip2long(getenv('REMOTE_ADDR')); 
    ////////////////////////////////////////////////////// 

    if($ip >= $startip && $ip <= $endip

        
    // se è nel range     

    else 

        
    //se non è nel range 

    ?>
    se è nel range accede se no redirect a una pagina di default...quello come lo metto??? e se volessi mettere altri range come dovrei fare???

  4. #4
    se è nel range accede se no redirect a una pagina di default...quello come lo metto???

    Codice PHP:
    <?php 
    //Indirizzo iniziale 
    $startip "192.168.0.0"

    // Indirizzo finale 
    $endip "192.168.0.255"

    ////////////////////////////////////////////////////// 
    $startip ip2long($startip); 
    $endip ip2long($endip); 
    $ip ip2long(getenv('REMOTE_ADDR')); 
    ////////////////////////////////////////////////////// 

    if($ip >= $startip && $ip <= $endip

        
    // contenuto pagina 

    else 

        
    Header("Location:pagina.php"); // redirect alla pagina desiderata
        
    exit;

    ?>
    3/6/2003 è morto l'angelo della mia vita..
    www.markwebinformatica.net
    My BLOG

  5. #5
    e se volessi mettere altri range come dovrei fare???
    Codice PHP:
    <?php 
    //Primo Range
    $startip "192.168.0.0"
    $endip "192.168.0.255"
    // Secondo Range
    $startip2 "123.168.0.0"
    $endip2 "123.168.0.255"
    //Terzo Range
    $starti3 "152.168.0.0"
    $endip3 "152.168.0.255"
    ////////////////////////////////////////////////////// 
    $startip ip2long($startip); 
    $endip ip2long($endip); 
    $ip ip2long(getenv('REMOTE_ADDR')); 

    $startip2 ip2long($startip2); 
    $endip2 ip2long($endip2); 
    $ip2 ip2long(getenv('REMOTE_ADDR')); 

    $startip3 ip2long($startip3); 
    $endip3 ip2long($endip3); 
    $ip3 ip2long(getenv('REMOTE_ADDR')); 
    ////////////////////////////////////////////////////// 

    if(($ip >= $startip && $ip <= $endip) AND ($ip2 >= $startip2 && $ip2 <= $endip2)  AND ($ip3 >= $startip3 && $ip3 <= $endip3) )

        
    // contenuto pagina
    }
    else
    {
        
    Header("Location:pagina.php"); // redirect alla pagina desiderata
        
    exit;
    }
    ?>
    3/6/2003 è morto l'angelo della mia vita..
    www.markwebinformatica.net
    My BLOG

  6. #6
    Utente di HTML.it L'avatar di mybox
    Registrato dal
    Mar 2007
    Messaggi
    507
    siccome lo vorrei inserire come include il fatto che apre la pagina giusta se l'ip è quello nella lista come lo imposto???

    nessuno sa i range ip dei gestori di telefonia mobile come tim,voda,wind e 3 nelle connessioni wap e web???

  7. #7
    Non capisco qual'è il problema tu includi il file sopra creato e poi lo paragoni con la variabile server $_SERVER['REMOTE_ADDR']
    3/6/2003 è morto l'angelo della mia vita..
    www.markwebinformatica.net
    My BLOG

  8. #8
    Ora è possibile passare alla funzione degli array contenenti l'ip di inizio e quello di fine, restituisce true se l'ip è contenuto altrimenti false:
    Codice PHP:
    <?php
    function inRange($startip,$endip,$ip)
    {
        
    $i=0;
        
    $longip=ip2long($ip);
        foreach(
    $startip as $start)
        {
            
    $longstart ip2long($start);
            
    $longend ip2long($endip[$i]);
            
            
    //Se è nel range
            
    if($longip >= $longstart && $longip <= $longend)
            {
                return 
    true;
            }
            
    $i++;
        }
        return 
    false;
    }
    ?>

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.