Hallo php'ers,

Ik heb een login script via een tutorial gemaakt, maar nou wil ik graag in de pagina aanmelden.php er voor zorgen dat het ip adress en het mac adres van diegene worden opgeslagen in de database, ik heb eens zitten rond neuzen maar kan niet echt iets vinden.

Vandaar de vraag of er hier meschien iemand is die mij hierbij kan helpen.

Hieronder het bestand: Aanmelden.php
-----------------

<?php
//aanmelden.php
include('config.php'); //we beginnen zoals gewoonlijk met het includen van de config

$ip = "$_SERVER['REMOTE_ADDR']";


if(isset($_POST['aanmelden'])){//weer kijken of ze al op aanmlden hebben gedrukt

if(empty($_POST['gb'])){
die('No Callsign entered.');
}

if(empty($_POST['ww'])){
die('No Password entered.');
}

if(empty($_POST['ww2'])){
die('No password repait entered.');
}

if(empty($_POST['email'])){
die('No E-Mail Address entered.');

}

if(empty($_POST['email2'])){
die('No E-Mail Address repait entered.');
}
//ok alles gecontroleerd website hoeft niet beslist dus

//nu gaan we controleren of de gebruikersnaam al bezet is als de wachtwoorden wel gelijk zijn en of het email klopt

$sql= mysql_query("SELECT * FROM leden WHERE gebruikersnaam = '".$_POST['gebruikersnaam']."'");
$num = mysql_num_rows($sql);

if($num == '1'){//ik dacht dat dit allemaal wel duidelijk was dus 1 is dat ie bestaat
die('The callsign is already in use.');
}

if($_POST['ww'] != $_POST['ww2']){//ook wel duidelijk != betekent niet gelijk aan elkaar
die('Passwords dousnt match!');
}

if($_POST['email'] != $_POST['email2']){//ook wel duidelijk != betekent niet gelijk aan elkaar
die('E-Mail Address dousnt match!');
}

if(!eregi("^[_a-z0-9-]+(.[_a-z0-9-]+)*@[a-z0-9-]+(.[a-z0-9-]+)*(.[a-z]{2,4})$", $_POST['email'])) { //controleren of de email de goed tekens heeft
die ('E-Mail address is not right., <a href="javascript:history.go(-1)">Ga terug</a>');
}


//alles klopt nu kunnen we toevogen
mysql_query("INSERT INTO leden (gebruikersnaam , wachtwoord , email , website, image, ip) VALUES ('".$_POST['gb']."', '".md5($_POST['ww'])."', '".$_POST['email']."' , '".$_POST['website']."' , '".$_POST['image']."' , '".$_POST['image']."')") OR die (mysql_error());//zet de dingen in de database

echo "U bend succesvol aangemeld <a href = 'login.php'>Klik hier</a> om inteloggen"; // eve de laatste echo geven
}
else{//nee nog niet op aanmelden gedrukt dus dit laten zien
//en we doen weer lkkr simpel
?>
<link href="http://www.marjons-winkeltje.nl/themes/M-Tracks/style/style.css"; rel="stylesheet" type="text/css" />

<table>
<form name="aanmelden" method="post">

<tr>
<center>Fields marked whit a * are Required!</td>

<tr>
<td>Callsign:*</td>
<td><input name="gb" type="text"></td>
</tr>

<tr>
<td>Password:*</td>
<td><input name="ww" type="password"></td>
</tr>

<tr>
<td>Password (again)*:</td>
<td><input name="ww2" type="password"></td>
</tr>

<tr>
<td>E-Mail address:*</td>
<td><input name="email" type="text"></td>
</tr>

<tr>
<td>E-Mail address (Again)*:</td>
<td><input name="email2" type="text"></td>
</tr>

<tr>
<td>Website url:</td>
<td><input name="website" type="text"></td>
</tr>

<tr>
<td>Player image url:</td>
<td><input name="" type="text"></td>
</tr>

<tr>
<td>Yes im 14 Years or older*:</td>
<td><input type="checkbox" name="" value="checkbox"></td>
<td>Selected means: Yes</td>
</tr>

<tr>
<td>I want to recieve the newsletter:</td>
<td><input type="checkbox" name="" value="checkbox"></td>
<td>Selected means: Yes</td>
<tr>

<td colspan="2"><input name="aanmelden" value="Signup" type="submit"></td>
</tr>
</form>
</table>


<?
}
?>

Alvast bedankt,

Herman
De IP text die er nu al instaan kloppen niet, ik heb deze er zelf ingezet maar dat werkte niet.

Groet,
Herman
Probeer het IP stukje eens te vervangen door dit:
$ip = $REMOTE_ADDR;
Vars buiten haakjes dus niet zo:
<?
$ip = "$_SERVER['REMOTE_ADDR']";
?>

Maar zo:

<?
$ip = $_SERVER['REMOTE_ADDR'];
?>
Als ik deze 2 manieren probeer gebeurd er niets, kan een van jullie het meschien ff goed in de pagina verwerken?

Bedankt,
Herman
volgens mij staat er verder in de pagina nog meer fout, ik kan alleen niet vinden wat.

Herman
Maar als je nu een ip gaat echoen, geeft die dan wel een goede IP?
Probeer dit eens:

<?php
//aanmelden.php
include('config.php'); //we beginnen zoals gewoonlijk met het includen van de config

$ip = $_SERVER['REMOTE_ADDR'];

if(isset($_POST['aanmelden']))
{
//weer kijken of ze al op aanmlden hebben gedrukt
if(empty($_POST['gb']))
{
die('No Callsign entered.');
}
if(empty($_POST['ww']))
{
die('No Password entered.');
}
if(empty($_POST['ww2'])){
die('No password repait entered.');
}
if(empty($_POST['email'])){
die('No E-Mail Address entered.');
}
if(empty($_POST['email2'])){
die('No E-Mail Address repait entered.');
}
//ok alles gecontroleerd website hoeft niet beslist dus
//nu gaan we controleren of de gebruikersnaam al bezet is als de wachtwoorden wel gelijk zijn en of het email klopt

$sql= mysql_query("SELECT * FROM leden WHERE gebruikersnaam = '".$_POST['gebruikersnaam']."'");
$num = mysql_num_rows($sql);

if($num == '1'){//ik dacht dat dit allemaal wel duidelijk was dus 1 is dat ie bestaat
die('The callsign is already in use.');
}
if($_POST['ww'] != $_POST['ww2']){//ook wel duidelijk != betekent niet gelijk aan elkaar
die('Passwords dousnt match!');
}
if($_POST['email'] != $_POST['email2']){//ook wel duidelijk != betekent niet gelijk aan elkaar
die('E-Mail Address dousnt match!');
}
if(!eregi("^[_a-z0-9-]+(.[_a-z0-9-]+)*@[a-z0-9-]+(.[a-z0-9-]+)*(.[a-z]{2,4})$", $_POST['email'])) { //controleren of de email de goed tekens heeft
die ('E-Mail address is not right., <a href="javascript:history.go(-1)">Ga terug</a>');
}

//alles klopt nu kunnen we toevogen
mysql_query("INSERT INTO leden (gebruikersnaam , wachtwoord , email , website, image, ip) VALUES ('".$_POST['gb']."', '".md5($_POST['ww'])."', '".$_POST['email']."' , '".$_POST['website']."' , '".$_POST['image']."' , '".$ip."')") OR die (mysql_error());//zet de dingen in de database

echo "U bend succesvol aangemeld <a href = 'login.php'>Klik hier</a> om inteloggen"; // eve de laatste echo geven
}
else
{
//nee nog niet op aanmelden gedrukt dus dit laten zien
//en we doen weer lkkr simpel
?>
<link href="http://www.marjons-winkeltje.nl/themes/M-Tracks/style/style.css"; rel="stylesheet" type="text/css" />

<table>
<form name="aanmelden" method="post">

<tr>
<center>Fields marked whit a * are Required!</td>

<tr>
<td>Callsign:*</td>
<td><input name="gb" type="text"></td>
</tr>

<tr>
<td>Password:*</td>
<td><input name="ww" type="password"></td>
</tr>

<tr>
<td>Password (again)*:</td>
<td><input name="ww2" type="password"></td>
</tr>

<tr>
<td>E-Mail address:*</td>
<td><input name="email" type="text"></td>
</tr>

<tr>
<td>E-Mail address (Again)*:</td>
<td><input name="email2" type="text"></td>
</tr>

<tr>
<td>Website url:</td>
<td><input name="website" type="text"></td>
</tr>

<tr>
<td>Player image url:</td>
<td><input name="" type="text"></td>
</tr>

<tr>
<td>Yes im 14 Years or older*:</td>
<td><input type="checkbox" name="" value="checkbox"></td>
<td>Selected means: Yes</td>
</tr>

<tr>
<td>I want to recieve the newsletter:</td>
<td><input type="checkbox" name="" value="checkbox"></td>
<td>Selected means: Yes</td>
<tr>

<td colspan="2"><input name="aanmelden" value="Signup" type="submit"></td>
</tr>
</form>
</table>
<?
}
?>
Perfect!!!! bedankt het werkt nu!

Herman

Reageren