Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno Co to je za číslo? (foreach (explode(".", $_SERVER["REMOTE_ADDR"]) as $val))

Potřebuji identifikovat vyplňující formulář. Stačí mi pouze IP v e-mailu. Při
$_SERVER['REMOTE_ADDR']
se mi IP nevypíše a našel jsem si u p. Vrány

$ip = 0;
foreach (explode(".", $_SERVER["REMOTE_ADDR"]) as $val) {
    $ip = 256*$ip3 + $val;
}

Z toho se mi vypíše číslo 523199490. Vůbec netuším, co to je za hodnotu. Není to ani IP bez teček. Tu mám 10.115.4.51.

Předmět Autor Datum
Převedeš adresu na číslo, pak vynásobíš nějakou proměnnou $IP3 * 256 a to číslo, které jsi získal k…
Jan Fiala 10.05.2014 09:44
Jan Fiala
To je jen pro mou soukromou potřebu, jestli formulář vyplňují z různých adres. Nikdo jiný to ani nev…
Kráťa 11.05.2014 08:51
Kráťa
mozno trepnem, ale nemalo by to byt skor takto? $ip += 256*$ip3 + $val;
wam_Spider007 10.05.2014 09:50
wam_Spider007
$_SERVER['REMOTE_ADDR'] ti určite vypíše IP adresu - ak ti to nefunguje, tak hľadaj chybu niekde ind…
los 10.05.2014 12:13
los
Jo, já tu trojku přehlédl. Testoval jsem různé scripty a všude bylo $ip, tak jsem je těmi čísly rozl…
Kráťa 11.05.2014 09:01
Kráťa
Nevypli ti nič, $_SERVER['REMOTE_ADDR'] ti normálne funguje. Ak by nefungovalo, tak by ti nefungoval…
los 11.05.2014 10:35
los
já to prve měl $ref = $_SERVER['REMOTE_ADDR']; echo "$ref"; a když jsem teď předělal $ref na $ip, ta… poslední
Kráťa 11.05.2014 11:37
Kráťa

$_SERVER['REMOTE_ADDR'] ti určite vypíše IP adresu - ak ti to nefunguje, tak hľadaj chybu niekde inde.

V tom kóde, čo si tu dal, máš preklep: namiesto $ip3 má byť len $ip. Výsledok je číselná reprezentácia IP adresy, ktorá je iná, než píšeš (ako moderátor ju vidíš pri svojom príspevku). Funguje podobne ako funkcia ip2long.

Z toho, že ti ten kód vrátil takéto číslo, je jednoznačne vidieť, že $_SERVER['REMOTE_ADDR'] funguje tak, ako má.

Jo, já tu trojku přehlédl. Testoval jsem různé scripty a všude bylo $ip, tak jsem je těmi čísly rozlišoval a tady to neumazal.
Oni nějak migrovali na onebitu, tak jestli mi nevypnuli global on, či co. Ale pokud je tohle číslo nějaká jednoznačná identifikace počítače, z něhož to bylo vyplněno, stačí mi to bohatě. Nepotřebuji tvar xxx.xxx.xxx.xxx

Zpět do poradny Odpovědět na původní otázku Nahoru