Visualizzazione risultati 1 fino 5 di 5

Discussione: Pingare un indirizzo ip con Php

  1. #1
    Guest

    Predefinito Pingare un indirizzo ip con Php

    Avevo bisogno di fare uno script per pingare un indirizzo ip per vedere se è OnLine o OffLine, prima ho provato con

    Codice PHP:
    <?php
    $count
    = "4";
    $host = "365.197.126.165"; //l' indirizzo l' ho inventato,
    system("ping -n $count $host");
    ?>
    poi, ricordandomi che il server è Apache su piattaforma Unix, ho provato con

    Codice PHP:
    <?php
    $count
    = "4";
    $host = "365.197.126.165";
    system ("ping -c$count -w$count $host");
    system("killall ping");
    ?>
    la descrizione della funzione System l' ho trovata qui e ho letto su altri siti che con questo codice dovrebbe stampare l' Output del comando.. Però non mi funzia :D


    Poi facendo altre ricerche ho provato con

    Codice PHP:
    <?php

    $sock
    = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
    socket_set_nonblock($sock);
    socket_connect($sock,"365.197.126.165", 80); //indirizzo e porta
    socket_set_block($sock);
    switch(
    socket_select($r = array($sock), $w = array($sock), $f = array($sock), 5))
    {
    case
    2:
    echo
    "[-] Connection Refused\n";
    break;
    case
    1:
    echo
    "[+] Connected\n";
    break;
    case
    0:
    echo
    "[-] Timeout\n";
    break;
    }
    ?>
    che mi andrebbe bene comunque... ma non va nemmeno questa, mi resta semplicemente la pagina bianca...
    Potete aiutarmi? grazie in anticipo

  2. #2
    Guest

    Predefinito

    Le connessioni in php verso l'esterno (dal proprio account) sono disabilitate, quindi ciò che chiedi non è possibile.


    Ciao!!

  3. #3
    Guest

    Predefinito

    Ah, allora non mi funzionava no

    vabbè fa niente, grazie lo stesso

  4. #4
    L'avatar di heracleum
    heracleum non è connesso Utente storico
    Data registrazione
    21-01-2004
    Messaggi
    3,333

    Predefinito

    Per le prossime volte, se non sei sicuro di cosa va storto e soprattutto in casi di pagina bianca senza (apparenti) errori, puoi aumentare il livello di error reporting,
    per es. se alla prima riga del tuo codice aggiungi la riga:
    Codice PHP:
    error_reporting (E_ALL);
    ti accorgi di cosa non è andato bene e del perché, avresti visto in pagina il messaggio di "notifica" (quindi non un vero e proprio "error" o "warning" che invece di default leggi a video) che dice:
    Notice: system() has been disabled for security reasons in ..nome-dello-script..
    In questo caso, non è tanto il fatto che le connessioni http o altro sono inibite verso l'esterno da php (direttamente), perché non sarebbe php a fare la connessione ma una command line di sistema.
    Appunto il messaggio dice che -visto che siamo sotto SafeMode ON- per sicurezza sono state disabilitate le chiamate alle funzioni di sistema.
    Ultima modifica di heracleum : 25-08-2006 alle ore 17.59.58
    Avvertimento: richiedere in privato questioni tecniche produrrà inevitabilmente una supercazzola prematurata come risposta. (5 served)

  5. #5
    Guest

    Predefinito

    Ah, prefetto, grazie 1000 del consiglio ^_^

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •