ip valideren
{
if(trim($formname)!='')
{
if(!ereg("[0-9]*\\.[0-9]*\\.[0-9]*\\.[0-9]", $formname))
global $error_msg;
$error_msg.="geen geldig ip<br>";
}
}
Bovenstaande is mijn functie om een ip te controleren maar heo zeg ik nu dat het per getal niet hoger dan 255 mag zijn.
hoe haal je dat ip op? mensen dit zelf laten invullen lijkt me hier de enige toepassing op, maar dat is dan weer overbodig..
ja ik ben bezig met het maken van een applicatie waar ip geregistreerd moeten kunnen worden en de gebruiker moet dit dus kunnen invoeren
PHP (en geloof ook javascript) kunnen zelf een IP ophalen van iemand. Zelf een IP invoeren wekt bij mij persoonlijk altijd behoorlijk argwaan op
Code (php)
Met $_SERVER['REMOTE_ADDR'] haal je het IP op van de gebruiker.
Gewijzigd op 01/01/1970 01:00:00 door Erik Rijk
Waarom detect je dan niet automatisch het IP adres?? Als je het laat invoeren door een gebruiker is het fraude gevoelig toch??
@erik , een ipadres van 999.999.999.999 mag van jou? wat liev :)
die controle vond ik nog ergens in een oud script :P Ik dacht "die post ik even."
ik wil het niet automatisch omdat ip's van andere pc's binnen het bedrijf geregistreerd moeten kunne nworden bijv van servers
Dank julliej ik heb het gefixed
maar voor een datum werkt het neem ik aan een beetje hetzelfde of niet??
Als je dat hebt moet je eens naar de filter functies kijken, die kan zelfs locale ip adressen herkennen...
de volgorde van de letters bepaalt de notatie
Dus dat hoef je niet te checken op geldige syntax?
Pholeron schreef op 17.01.2007 14:01:
Geen idee of je er een ongeldige waarde van kunt maken, maar een ip-adres kun je wel aanpassen. Het hoeft dus absoluut niet het adres van de bezoeker te zijn, laat staan dat het een uniek adres hoeft te zijn.Bij mijn weten valt het veld $_SERVER["remote_addr"] niet te manipuleren.
Dus dat hoef je niet te checken op geldige syntax?
Dus dat hoef je niet te checken op geldige syntax?
Ik zou niet al te veel waarde hechten aan het ip-adres.
Quote:
Bovenstaande is mijn functie om een ip te controleren maar heo zeg ik nu dat het per getal niet hoger dan 255 mag zijn.
was even nieuwsgierig naar het antwoord op de orignele vraag
[0-255] Digit between 0 and 255
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?php
$twee_vijf_vijf = '[0-2]{1}[0-5]{1}[0-5]{1}';
$pattern = '^' . $twee_vijf_vijf . '\.' . $twee_vijf_vijf . '\.' . $twee_vijf_vijf . '\.' . $twee_vijf_vijf . '$';
//of in een loop
$pattern = '^';
for ($i = 0 ; $i < 4 ; $i++)
{
$pattern .= $twee_vijf_vijf . '\.';
}
$pattern = substr($pattern , 0 , -2) . '$';
if(ereg($pattern, $ip))
{
// het is goed :)
}
else
{
// aah, deze mag niet :(
}
?>
$twee_vijf_vijf = '[0-2]{1}[0-5]{1}[0-5]{1}';
$pattern = '^' . $twee_vijf_vijf . '\.' . $twee_vijf_vijf . '\.' . $twee_vijf_vijf . '\.' . $twee_vijf_vijf . '$';
//of in een loop
$pattern = '^';
for ($i = 0 ; $i < 4 ; $i++)
{
$pattern .= $twee_vijf_vijf . '\.';
}
$pattern = substr($pattern , 0 , -2) . '$';
if(ereg($pattern, $ip))
{
// het is goed :)
}
else
{
// aah, deze mag niet :(
}
?>
Boris: 169 mag wel hoor.