Ledensysteem ip adres (Opgelost)
Sieebe - 10/05/2010 21:27
Nieuw lid
Hallo, ik ben dus een ledensysteem aan het maken en alles werkt perfect behalve
bij het ip adres loopt het fout.
In plaats van het ip adres komt er 0 te staan.
Dit is het script hopelijk kunnen jullie me helpen.
<?php
include("connect.php");
$Registreren = $_POST['Registreren'];
$Gebruikersnaam = $_POST['Gebruikersnaam'];
$Wachtwoord = $_POST['Wachtwoord'];
$Wachtwoord2 = $_POST['Wachtwoord2'];
$Wachtwoord = md5($Wachtwoord);
$Wachtwoord2 = md5($Wachtwoord2);
$Mail = $_POST['Mail'];
$Info = $_POST['Info'];
$IP = $_POST['IP'];
$Rank = 1;
$Credits = 25;
if($Registreren) {
//Gebruikersnaam controle
$Check_Gebruikersnaam = mysql_query("SELECT * FROM Ledensysteem WHERE Gebruikersnaam='".$Gebruikersnaam."'") or die (mysql_error());
$Check_Gebruikersnaam2 = mysql_num_rows($Check_Gebruikersnaam);
//E-mail adress controle
$Check_mail = mysql_query("SELECT * FROM Ledensysteem WHERE Mail='".$Mail."'") or die (mysql_error());
$Check_mail2 = mysql_num_rows($Check_mail);
//IP controle
$Check_IP = mysql_query("SELECT * FROM Ledensysteem WHERE IP='".$IP."'") or die (mysql_error());
$Check_IP2 = mysql_num_rows($Check_IP);
if(empty($Gebruikersnaam))
{ echo "Er werd geen naam ingevuld!"; }
else if(empty($Wachtwoord))
{ echo "Er werd geen wachtwoord ingevuld!"; }
else if($Wachtwoord != $Wachtwoord2)
{ echo "De wachtwoorden komen niet overeen!"; }
else if($Check_Gebruikersnaam2 > 0)
{ echo "Deze gebruikersnaam bestaat al!"; }
else if($Check_mail2 > 0)
{ echo "Dit E-mail adres werd al gebruikt!"; }
else if($Check_IP2 > 0)
{ echo "Er werd al een account op dit IP adres geregistreerd!"; }
else { $Insert = " INSERT INTO Ledensysteem (IP, Gebruikersnaam, Wachtwoord, Mail, Rank, Info, Credits) VALUES
('".$IP."', '".$Gebruikersnaam."', '".$Wachtwoord."', '".$Mail."', '".$Rank."', '".$Info."', '".$Credits."')";
mysql_query($Insert) or die(mysql_error());
echo "Je bent geregistreerd. Je kan nu inloggen!";
$_SESSION['naam'] = $Naam;
$_SESSION['IP'] = $IP;
$_SESSION['status'] = 1;
}
} else {
echo " <table border=\"0\">
<form method=\"POST\" action=\"".$_SERVER['PHP_SELF']."\">
<tr>
<td>* Gebruikersnaam:</td>
<td><input type=\"text\" name=\"Gebruikersnaam\" /></td>
</tr>
<tr>
<td>* Wachtwoord:</td>
<td><input type=\"password\" name=\"Wachtwoord\" /></td>
</tr>
<tr>
<td>* Wachtwoord <em>(controle):</em></td>
<td><input type=\"password\" name=\"Wachtwoord2\" /></td>
</tr>
<tr>
<td>* E-mail adres: </td>
<td><input type=\"text\" name=\"Mail\" /></td>
<tr>
<td>Info over jezelf:</td>
<td><textarea name=\"Info\" maxlenght=\"150\"></textarea></td>
</tr>
<tr>
<input type=\"hidden\" value=\"".$_SERVER['REMOTE_ADDR']."\" name\"IP\" />
<td>Registreren:</td>
<td><input type=\"submit\" value=\"Registreren!\" name=\"Registreren\" /></td>
</tr>
</form>
</table>
";
}
?>
<?php
include ( "connect.php" ) ;
$Registreren = $_POST [ 'Registreren' ] ;
$Gebruikersnaam = $_POST [ 'Gebruikersnaam' ] ;
$Wachtwoord = $_POST [ 'Wachtwoord' ] ;
$Wachtwoord2 = $_POST [ 'Wachtwoord2' ] ;
$Wachtwoord = md5 ( $Wachtwoord ) ; $Wachtwoord2 = md5 ( $Wachtwoord2 ) ; $Mail = $_POST [ 'Mail' ] ;
$Info = $_POST [ 'Info' ] ;
$IP = $_POST [ 'IP' ] ;
$Rank = 1 ;
$Credits = 25 ;
if ( $Registreren ) {
//Gebruikersnaam controle
$Check_Gebruikersnaam = mysql_query ( "SELECT * FROM Ledensysteem WHERE Gebruikersnaam='" . $Gebruikersnaam . "'" ) or
die ( mysql_error ( ) ) ;
//E-mail adress controle
//IP controle
if ( empty ( $Gebruikersnaam ) ) { echo "Er werd geen naam ingevuld!" ; } else if ( empty ( $Wachtwoord ) ) { echo "Er werd geen wachtwoord ingevuld!" ; } else if ( $Wachtwoord != $Wachtwoord2 )
{ echo "De wachtwoorden komen niet overeen!" ; } else if ( $Check_Gebruikersnaam2 > 0 )
{ echo "Deze gebruikersnaam bestaat al!" ; } else if ( $Check_mail2 > 0 )
{ echo "Dit E-mail adres werd al gebruikt!" ; } else if ( $Check_IP2 > 0 )
{ echo "Er werd al een account op dit IP adres geregistreerd!" ; } else { $Insert = " INSERT INTO Ledensysteem (IP, Gebruikersnaam, Wachtwoord, Mail, Rank, Info, Credits) VALUES
('" . $IP . "', '" . $Gebruikersnaam . "', '" . $Wachtwoord . "', '" . $Mail . "', '" . $Rank . "', '" . $Info . "', '" . $Credits . "')" ;
echo "Je bent geregistreerd. Je kan nu inloggen!" ; $_SESSION [ 'naam' ] = $Naam ;
$_SESSION [ 'IP' ] = $IP ;
$_SESSION [ 'status' ] = 1 ;
}
} else {
echo " <table border=\" 0\" > <form method=\" POST\" action=\" " . $_SERVER [ 'PHP_SELF' ] . "\" >
<tr>
<td>* Gebruikersnaam:</td>
<td><input type=\" text\" name=\" Gebruikersnaam\" /></td>
</tr>
<tr>
<td>* Wachtwoord:</td>
<td><input type=\" password\" name=\" Wachtwoord\" /></td>
</tr>
<tr>
<td>* Wachtwoord <em>(controle):</em></td>
<td><input type=\" password\" name=\" Wachtwoord2\" /></td>
</tr>
<tr>
<td>* E-mail adres: </td>
<td><input type=\" text\" name=\" Mail\" /></td>
<tr>
<td>Info over jezelf:</td>
<td><textarea name=\" Info\" maxlenght=\" 150\" ></textarea></td>
</tr>
<tr>
<input type=\" hidden\" value=\" " . $_SERVER [ 'REMOTE_ADDR' ] . "\" name\" IP\" />
<td>Registreren:</td>
<td><input type=\" submit\" value=\" Registreren!\" name=\" Registreren\" /></td>
</tr>
</form>
</table>
" ;
}
?>
1 antwoord
Gesponsorde links
jasper56 - 10/05/2010 21:51 (laatste wijziging 10/05/2010 22:03)
Nieuw lid
je kan beter deze structuur gebruiken:
<?php
if($_SERVER["REQUEST_METHOD"] == 'POST'){
//doe de controle op de input
$ip = $_SERVER['REMOTE_ADDR'];
}
else{
//laat formulier zien
}
?>
<?php
if ( $_SERVER [ "REQUEST_METHOD" ] == 'POST' ) {
//doe de controle op de input
$ip = $_SERVER [ 'REMOTE_ADDR' ] ;
}
else {
//laat formulier zien
}
?>
dus het ook het ip niet in het formulier zetten, want dat is veel te fraude gevoelig
-edit-
<?php
/**
* @author Jasper
* @copyright 2010
*/
//start the session
session_start();
if($_SERVER["REQUEST_METHOD"] == 'POST') {
//include the file to connect to the DB
include("connect.php");
//make the user input a bit safer
$Gebruikersnaam = mysql_real_escape_string($_POST['Gebruikersnaam']);
$Wachtwoord = mysql_real_escape_string($_POST['Wachtwoord']);
$Wachtwoord2 = mysql_real_escape_string($_POST['Wachtwoord2']);
$Mail = mysql_real_escape_string($_POST['Mail']);
$Info = mysql_real_escape_string($_POST['Info']);
//made MD5 sum of the passwords
$Wachtwoord = md5($Wachtwoord);
$Wachtwoord2 = md5($Wachtwoord2);
$Rank = 1;
$Credits = 25;
//Gebruikersnaam controle
$Check_Gebruikersnaam = mysql_query("SELECT * FROM Ledensysteem WHERE Gebruikersnaam='".$Gebruikersnaam."'") or die (mysql_error());
$Check_Gebruikersnaam2 = mysql_num_rows($Check_Gebruikersnaam);
//E-mail adress controle
$Check_mail = mysql_query("SELECT * FROM Ledensysteem WHERE Mail='".$Mail."'") or die (mysql_error());
$Check_mail2 = mysql_num_rows($Check_mail);
//IP controle
$Check_IP = mysql_query("SELECT * FROM Ledensysteem WHERE IP='".$IP."'") or die (mysql_error());
$Check_IP2 = mysql_num_rows($Check_IP);
if(empty($Gebruikersnaam)){
echo "Er werd geen naam ingevuld!";
}
else if(empty($Wachtwoord)) {
echo "Er werd geen wachtwoord ingevuld!";
}
else if($Wachtwoord != $Wachtwoord2) {
echo "De wachtwoorden komen niet overeen!";
}
else if($Check_Gebruikersnaam2 != 0){
echo "Deze gebruikersnaam bestaat al!";
}
else if($Check_mail2 != 0){
echo "Dit E-mail adres werd al gebruikt!";
}
else if($Check_IP2 != 0){
echo "Er werd al een account op dit IP adres geregistreerd!";
}
else {
$Insert = " INSERT INTO Ledensysteem (IP, Gebruikersnaam, Wachtwoord, Mail, Rank, Info, Credits)
VALUES('".$IP."', '".$Gebruikersnaam."', '".$Wachtwoord."', '".$Mail."', '".$Rank."', '".$Info."', '".$Credits."')";
mysql_query($Insert) or die(mysql_error());
//set the session vars
$_SESSION['naam'] = $Naam;
$_SESSION['IP'] = $IP;
$_SESSION['status'] = 1;
echo "Je bent geregistreerd. Je kan nu inloggen!";
}
}
else {
echo ' <table border="0">
<form method="POST" action="">
<tr>
<td>* Gebruikersnaam:</td>
<td><input type="text" name="Gebruikersnaam" /></td>
</tr>
<tr>
<td>* Wachtwoord:</td>
<td><input type="password" name="Wachtwoord" /></td>
</tr>
<tr>
<td>* Wachtwoord <em>(controle):</em></td>
<td><input type="password" name="Wachtwoord2" /></td>
</tr>
<tr>
<td>* E-mail adres: </td>
<td><input type="text" name="Mail" /></td>
<tr>
<td>Info over jezelf:</td>
<td><textarea name="Info" maxlenght="150"></textarea></td>
</tr>
<tr>
<td>Registreren:</td>
<td><input type="submit" value="Registreren!" name="Registreren" /></td>
</tr>
</form>
</table>
';
}
?>
<?php
/**
* @author Jasper
* @copyright 2010
*/
//start the session
if ( $_SERVER [ "REQUEST_METHOD" ] == 'POST' ) {
//include the file to connect to the DB
include ( "connect.php" ) ;
//make the user input a bit safer
//made MD5 sum of the passwords
$Wachtwoord = md5 ( $Wachtwoord ) ; $Wachtwoord2 = md5 ( $Wachtwoord2 ) ;
$Rank = 1 ;
$Credits = 25 ;
//Gebruikersnaam controle
$Check_Gebruikersnaam = mysql_query ( "SELECT * FROM Ledensysteem WHERE Gebruikersnaam='" . $Gebruikersnaam . "'" ) or
die ( mysql_error ( ) ) ;
//E-mail adress controle
//IP controle
if ( empty ( $Gebruikersnaam ) ) { echo "Er werd geen naam ingevuld!" ; }
else if ( empty ( $Wachtwoord ) ) { echo "Er werd geen wachtwoord ingevuld!" ; }
else if ( $Wachtwoord != $Wachtwoord2 ) {
echo "De wachtwoorden komen niet overeen!" ; }
else if ( $Check_Gebruikersnaam2 != 0 ) {
echo "Deze gebruikersnaam bestaat al!" ; }
else if ( $Check_mail2 != 0 ) {
echo "Dit E-mail adres werd al gebruikt!" ; }
else if ( $Check_IP2 != 0 ) {
echo "Er werd al een account op dit IP adres geregistreerd!" ; }
else {
$Insert = " INSERT INTO Ledensysteem (IP, Gebruikersnaam, Wachtwoord, Mail, Rank, Info, Credits)
VALUES('" . $IP . "', '" . $Gebruikersnaam . "', '" . $Wachtwoord . "', '" . $Mail . "', '" . $Rank . "', '" . $Info . "', '" . $Credits . "')" ;
//set the session vars
$_SESSION [ 'naam' ] = $Naam ;
$_SESSION [ 'IP' ] = $IP ;
$_SESSION [ 'status' ] = 1 ;
echo "Je bent geregistreerd. Je kan nu inloggen!" ; }
}
else {
echo ' <table border="0"> <form method="POST" action="">
<tr>
<td>* Gebruikersnaam:</td>
<td><input type="text" name="Gebruikersnaam" /></td>
</tr>
<tr>
<td>* Wachtwoord:</td>
<td><input type="password" name="Wachtwoord" /></td>
</tr>
<tr>
<td>* Wachtwoord <em>(controle):</em></td>
<td><input type="password" name="Wachtwoord2" /></td>
</tr>
<tr>
<td>* E-mail adres: </td>
<td><input type="text" name="Mail" /></td>
<tr>
<td>Info over jezelf:</td>
<td><textarea name="Info" maxlenght="150"></textarea></td>
</tr>
<tr>
<td>Registreren:</td>
<td><input type="submit" value="Registreren!" name="Registreren" /></td>
</tr>
</form>
</table>
' ;
}
?>
Hoop dat je er wat aan hebt
je kan trouwens beter geen $_SERVER['PHP_SELF'] gebruiken, ook deze is niet 100%
Bedankt door: Sieebe
Gesponsorde links
Dit onderwerp is gesloten .