Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 18
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    6,034

    Suddividere indirizzo IP

    Ciao. Se volessi suddividere un indirizzo IP per leggere (ed avere a disposizione come variabile) i 4 ottetti singolarmente, c'è una funzione che fa questo? Cioè se il primo ottetto, per esempio, è compreso in un dato range e così via....

  2. #2
    Usa La Funzione explode...
    codice:
    $ip = $_SERVER['REMOTE_ADDR'];
    
    $numeri = explode('.', $ip);
    
    echo $numeri[0];
    echo $numeri[1];
    echo $numeri[2];
    echo $numeri[3];
    http://it.php.net/manual/en/function.explode.php
    PoWered by:
    Gentoo 1.5.3 - Kernel 2.6.7
    Debian Sid - Kernel 2.6.7 - Bash 3.0
    Slackware current - Kernel 2.6.7

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2003
    Messaggi
    1,965
    vedi anche per la funzione
    strtok()

  4. #4
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    6,034
    per explode mi dà sempre errore
    Warning: Wrong parameter count for range() in d:\myweb\apache\htdocs\test\range.php on line 6

    codice:
    <?
    $ip = $_SERVER['REMOTE_ADDR'];
    
    $numeri = explode('.', $ip);
    
    if (range(0, 127, $numeri[0])) {
    
    echo "ip corretto";
        
    } else {
    
    echo "ip sbagliato";
    
    }
    ?>

  5. #5
    Utente di HTML.it
    Registrato dal
    Dec 2003
    Messaggi
    205
    Originariamente inviato da meganoide
    per explode mi dà sempre errore
    Warning: Wrong parameter count for range() in d:\myweb\apache\htdocs\test\range.php on line 6

    codice:
    <?
    $ip = $_SERVER['REMOTE_ADDR'];
    
    $numeri = explode('.', $ip);
    
    if (range(0, 127, $numeri[0])) {
    
    echo "ip corretto";
        
    } else {
    
    echo "ip sbagliato";
    
    }
    ?>

    a cosa dovrebbe servire? che controlli vuoi fare?
    stai usando php 5 vero?
    .

  6. #6
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    6,034
    php 4.3.1
    in realtà devo controllare che un ip cominci per un determinato ottetto compreso in un range che definisco io (ad esempio da 80 a 90 ecc...)

  7. #7
    Utente di HTML.it
    Registrato dal
    Dec 2003
    Messaggi
    205
    Originariamente inviato da meganoide
    php 4.3.1
    in realtà devo controllare che un ip cominci per un determinato ottetto compreso in un range che definisco io (ad esempio da 80 a 90 ecc...)
    l'ottetto (ovvero lo step del range) della funzione range() funziona solo con php5 con le versioni precedenti non va...
    però puoi farti una funzioncina. è abbastanza semplice.. spiegami meglio con degli esempi
    .

  8. #8
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    6,034
    sul manuale leggo che range() c'è anche per php4: step, invece, solo per php 5, per questo l'ho usato

    Comunque, devo controllare come comincia un IP (primo ottetto) e, se compreso in un determinato range, allora faccio una redirezione, stampo qualcosa o altro....

  9. #9
    Utente di HTML.it
    Registrato dal
    Dec 2003
    Messaggi
    205
    fammi degli esempi... l'ottetto come deve essere?

    if (range(0, 127, $numeri[0])) {
    qui non sei stato molto chiaro

    al massimo avrei fatto

    foreach (range(0, 127, 8) as $numero) {
    if ($numeri[0] == $numero ) {
    echo "tutto dentro";
    }
    else
    {
    echo "non te la do";
    }
    }

    ma ovviamente il terzo valore di range funziona solo con php 5 come ti ho già detto...

    spiega meglio...
    .

  10. #10
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    6,034
    bè sto provando in locale quindi per l'ip 127.0.0.1 il range deve essere compreso tra 0 e 127.

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 © 2025 vBulletin Solutions, Inc. All rights reserved.