Geengezeik
Gebruiker
- Lid geworden
- 15 aug 2012
- Berichten
- 385
Goedendag alle,
Al een tijd gebruik ik onderstaand script, voor verschillende websites. Maar deze heeft een aantal (grote) lekken. Wat mijn niet lukt is: mysql_real_escape_string toevoegen aan de $_POST gedeeltes. Wanneer ik dat bijvoorbeeld doe bij 'gebruikersnaam' lijkt het wel alsof hij heel de gebruikersnaam niet ziet. Want ik krijg dan de melding, dat de gebruikersnaam niet ingevuld is.
Ik werk met sessions, alleen niet gebonden aan IP, is dit beter of juist niet?
Graag suggesties.
Al een tijd gebruik ik onderstaand script, voor verschillende websites. Maar deze heeft een aantal (grote) lekken. Wat mijn niet lukt is: mysql_real_escape_string toevoegen aan de $_POST gedeeltes. Wanneer ik dat bijvoorbeeld doe bij 'gebruikersnaam' lijkt het wel alsof hij heel de gebruikersnaam niet ziet. Want ik krijg dan de melding, dat de gebruikersnaam niet ingevuld is.
Ik werk met sessions, alleen niet gebonden aan IP, is dit beter of juist niet?
Graag suggesties.
PHP:
<?php
error_reporting(0);
session_start();
$databaseid = $_SESSION['gebruikersid'];
$gebruikersnaam = $_SESSION['gebruikersnaam'];
if (!$gebruikersnaam && !$databaseid){
$form = "<div class='form'><form id='login' action='' method='post'>
Gebruikersnaam:<br>
<input type='text' class='tekst' name='gebruikersnaam' /><br>
Wachtwoord:<br>
</span> <input type='password' class='tekst' name='wachtwoord' value='' /><br>
<input class='submit_nieuw' type='submit' name='inloggen' value='go!'/><br>
</form></div>";
if ($_POST['inloggen']) {
$gebruikersnaam = $_POST['gebruikersnaam'];
$wachtwoord = $_POST['wachtwoord'];
if ($gebruikersnaam) {
if ($wachtwoord) {
$wachtwoord = md5(md5("8skA9c" . $wachtwoord . "lAx098S"));
$query = mysql_query("SELECT * FROM admin WHERE gebruikersnaam='$gebruikersnaam'");
$numrows = mysql_num_rows($query);
if ($numrows == 1) {
$row = mysql_fetch_assoc($query);
$databaseid = $row['id'];
$databasegebruiker = $row['gebruikersnaam'];
$databasewachtwoord = $row['wachtwoord'];
if ($wachtwoord == $databasewachtwoord){
$_SESSION['gebruikersid'] = $databaseid;
$_SESSION['gebruikersnaam'] = $databasegebruiker;
echo "<meta http-equiv='Refresh' content='0; url=../../admin.php' />";
}else
echo "De gegevens kloppen niet. $form";
}else
echo "De gegevens kloppen niet. $form";
mysql_close();
}else
echo "Je moet een wachtwoord opgeven. $form";
}else
echo "Je moet een gebruikersnaam opgeven. $form";
}else {
echo $form;
}
}else{
header('location: ../../admin.php');
}
?>