|
You last visited: Today at 08:04
Advertisement
Registrations-Script MD5 Verschöüsselung klappt nicht
Discussion on Registrations-Script MD5 Verschöüsselung klappt nicht within the Off Topic forum part of the Off-Topics category.
09/22/2011, 17:56
|
#1
|
elite*gold: 6
Join Date: Jul 2009
Posts: 88
Received Thanks: 9
|
Registrations-Script MD5 Verschöüsselung klappt nicht
Hey elöitepvpers,
wusste nicht wohin damit, also hierrein.
Habe mir ein kleines Regiestrierungsscript zusammengestellt, und will, dass das Passwort per MD5 verschlüsselt auf der Datenbank gespeichert wird.
Alles funktioniert bis auf die MD5 Verschlüsselung...
Kann mir da jemand helfen?
Script:
PHP Code:
<?php
// Check if he wants to register:
if (!empty($_POST[email]))
{
// Check if passwords match.
if ($_POST[password] != $_POST[password2])
exit("Error - Passwärter stimmen nicht überrein. Bitte versuche es noch einmal.");
// Assign some variables.
$ip = $_SERVER[REMOTE_ADDR];
$password = md5($_POST['password']);
require_once("connect.php");
// Register him.
$query = mysql_query("INSERT INTO user
(email, displayName, name, password, bday)
VALUES ('$_POST[email]','$_POST[displayName]','$_POST[name]','$_POST[password]','$bday')")
or die ("Error - Registrieren fehlgeschlagen.");
$query = mysql_query("SELECT * FROM 'user' WHERE email = '$email'");
if (mysql_fetch_array($query)) {
echo "Bitte andere Username";
} else
echo "Welcome $_POST[username]! You've been successfully reigstered!<br /><br />
Please login <a href='login.php'><b>here</b></a>.";
exit();
}
?>
<html>
<head>
<title>Registrieren</title>
</head>
<body>
<form action="register.php" method="post">
<table width="75%" border="1" align="center" cellpadding="3" cellspacing="1">
<tr>
<td width="100%"><h5>Registration</h5></td>
</tr>
<tr>
<td width="100%"><label>Email: <input type="text" name="email" size="25" value="<? echo $_POST[email]; ?>"></label></td>
</tr>
<tr>
<td width="100%"><label>Anzeige-Name: <input type="text" name="displayName" size="25" value="<? echo $_POST[displayName]; ?>"></label></td>
</tr>
<tr>
<td width="100%"><label>Name: <input type="text" name="lastname" size="25" value="<? echo $_POST[name]; ?>"></label></td>
</tr>
<tr>
<td width="100%"><label>Passwort: <input type="password" name="password" size="16" value="<? $password = md5($_POST['password']); ?>"></label></td>
</tr>
<tr>
<td width="100%"><label>Passwort wiederholen: <input type="password" name="password2" size="16" value=""></label></td>
</tr>
<tr>
<td width="100%"><input type="submit" value="Registrieren!"></td>
</tr>
</table>
<php $password = md5($_POST['password']); ?>
</form>
</body>
</html>
MfG nicileie
|
|
|
09/22/2011, 17:59
|
#2
|
elite*gold: 0
Join Date: Dec 2007
Posts: 425
Received Thanks: 183
|
Ich hatte mal das Problem, dass das Feld für das Passwort für eine MD5-Verschlüsselung zu klein war. Im Code sehe ich jetzt keinen Fehler, überprüfe deine Datenbank anhand meiner Vermutung einfach mal.
|
|
|
09/22/2011, 18:03
|
#3
|
elite*gold: 6
Join Date: Jul 2009
Posts: 88
Received Thanks: 9
|
habe bei dem, was ich mache ein Admin-Panel, wenn ich da einen neuen USer hinzufüge klappt das, und auch dieser ist MD5 Verschlüsselt..
MfG nicileie
Ps.: Ty
#Edit:
Problem noch nicht gelöst!
|
|
|
09/22/2011, 18:23
|
#4
|
elite*gold: 0
Join Date: Sep 2008
Posts: 9,484
Received Thanks: 3,109
|
PHP Code:
// Assign some variables. $ip = $_SERVER[REMOTE_ADDR]; $password = md5($_POST['password']);
require_once("connect.php");
// Register him. $query = mysql_query("INSERT INTO user (email, displayName, name, password, bday) VALUES ('$_POST[email]','$_POST[displayName]','$_POST[name]','$_POST[password]','$bday')") or die ("Error - Registrieren fehlgeschlagen.");
Du solltest bei deinem Query auch $password in das Passwortfeld in der Datenbank eintragen und nicht $_POST[password]...
Richtiges Query wäre:
PHP Code:
$query = mysql_query("INSERT INTO user (email, displayName, name, password, bday) VALUES ('$_POST[email]','$_POST[displayName]','$_POST[name]','$password','$bday')") or die ("Error - Registrieren fehlgeschlagen.");
|
|
|
09/22/2011, 18:50
|
#5
|
elite*gold: 120
Join Date: Aug 2010
Posts: 7,448
Received Thanks: 2,756
|
Quote:
Originally Posted by Menan
PHP Code:
// Assign some variables. $ip = $_SERVER[REMOTE_ADDR]; $password = md5($_POST['password']);
require_once("connect.php");
// Register him. $query = mysql_query("INSERT INTO user (email, displayName, name, password, bday) VALUES ('$_POST[email]','$_POST[displayName]','$_POST[name]','$_POST[password]','$bday')") or die ("Error - Registrieren fehlgeschlagen.");
Du solltest bei deinem Query auch $password in das Passwortfeld in der Datenbank eintragen und nicht $_POST[password]...
Richtiges Query wäre:
PHP Code:
$query = mysql_query("INSERT INTO user (email, displayName, name, password, bday) VALUES ('$_POST[email]','$_POST[displayName]','$_POST[name]','$password','$bday')") or die ("Error - Registrieren fehlgeschlagen.");
|
So isset!
Hast einfach falschen Wert reingeschrieben...
Nächstes mal in der E*Coder Section posten, da wird dir geholfen
|
|
|
09/22/2011, 18:54
|
#6
|
elite*gold: 6
Join Date: Jul 2009
Posts: 88
Received Thanks: 9
|
Wenn ich mich Registriert habe kommt nun das:
Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in MEIN PFAD/www/register.php on line 23
Welcome ! You've been successfully reigstered!
Zeile 23 ist:
if (mysql_fetch_array($query)) {
Bin gerade am schauen, ob´s MD5 verschlüsselt ist...
Beitrag wird dann editiert.
MfG nicileie
|
|
|
09/22/2011, 18:58
|
#7
|
elite*gold: 120
Join Date: Aug 2010
Posts: 7,448
Received Thanks: 2,756
|
Quote:
Originally Posted by nicileie
Wenn ich mich Registriert habe kommt nun das:
Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in MEIN PFAD/www/register.php on line 23
Welcome ! You've been successfully reigstered!
Zeile 23 ist:
if (mysql_fetch_array($query)) {
Bin gerade am schauen, ob´s MD5 verschlüsselt ist...
Beitrag wird dann editiert.
MfG nicileie
|
Machs doch mit mysql_fetch_row; kann doch nur maximal ein ergebnis geben!
Menan magst du das bitte mal in die Coder Section moven?
|
|
|
09/22/2011, 19:00
|
#8
|
elite*gold: 6
Join Date: Jul 2009
Posts: 88
Received Thanks: 9
|
Sry, bin noch nicht sogut in php...
Wie muss ich das denn genau im Code ändern?
Habe das Script heruntergeladen und auf meine Bedürfnisse angepasst..
MfG
#Edit:
So sollte es richtig sein:
if (mysql_fetch_row($query)) {
#Edit2:
Das Passwort wird jetzt MD5 verschlüsselt, allerdings, ist der MD5 anders bei einem anderen Account, der aber dasselbe Passwort hat !!!????
Need help
|
|
|
09/22/2011, 19:44
|
#9
|
elite*gold: 0
Join Date: Dec 2007
Posts: 425
Received Thanks: 183
|
Der Hash ist immer der gleiche, solange man auf die Schreibweise achtet. Der MD5-Hash von "Hallo" ist nicht mit dem von "hallo" identisch. Eventuell das Passwort in irgendeiner Art und Weise verändert? Einen Buchstaben groß geschrieben, eine Zahl weggelassen oder angehängt?
|
|
|
09/22/2011, 19:56
|
#10
|
elite*gold: 6
Join Date: Jul 2009
Posts: 88
Received Thanks: 9
|
Nein, ich zeig dir hier mal ein Beispiel..
Das Passwort "test"
MD5: 098f6bcd4621d373cade4e832627b4f6
DB: 098f6bcd4621d373cade4e832627b4f6
Es ist komplett Identisch, aber Login nicht möglich, keine Ahnung, was am anderen Passwort anders ist, dass ich mit nem anderen Rgi-Script gemacht habe...
Passwort 2025
Edit:
in der login.tpl steht bei Passwort das:
<td><label for="f2">{lng k='password'}:</label></td>
<td><input type="password" id="f2" name="pass" style="width: 251px;" /></td>
</tr>
Mit adminpanel: 9d8f8e57ca9213be07b420ef323d999c
originale MD5: 312351bff07989769097660a56395065
So siehts im Admin-Register-Script aus:
$v = array($_POST['name'],$_POST['name'],md5($pw.PASSWORDUNIQUESTRING),$_POST['email'],62);
BITTE CLOSEN!!!
|
|
|
09/22/2011, 20:11
|
#11
|
elite*gold: 0
Join Date: Dec 2007
Posts: 425
Received Thanks: 183
|
Wenn man sich einloggt, musst du natürlich auch den Hash abgleichen und nicht das Passwort mit dem Hash. Das funktioniert nicht.
Falsch:
Test mit 098f6bcd4621d373cade4e832627b4f6
Richtig:
md5($test) (also: 098f6bcd4621d373cade4e832627b4f6) mit 098f6bcd4621d373cade4e832627b4f6
Wenn der Hash übereinstimmt, ist auch das Passwort richtig. Das Passwort wird bei der Registration verschlüsselt, demnach muss es auch beim Einloggen verschlüsselt werden um identisch zu sein.
Edit:
Es kommt Zwecks Sicherheit durchaus vor, dass ein erzeugter Hash erneut verschlüsselt wird um die Sicherheit zu erhöhen. Das kann man beliebig oft wiederholen. Schau dich in dem anderen Script einfach mal nach einer Stelle um, die so: md5(md5()); oder so ähnlich aussieht. Dann weißt du, warum der Hash anders ist.
|
|
|
 |
Similar Threads
|
FTP Upload klappt nicht
03/24/2011 - AutoIt - 1 Replies
Script:
#include <ftp2.au3>
$serv = "ftp.sanctuaryfs.***********"
$user = "sanctuaryfs"
$pass = "+++++"
$FTP = _FTPOpen("AutoIt v3")
$FTPServer = _FTPConnect($FTP,$serv,$user,$pass,1)
|
klappt nicht!
10/31/2009 - WarRock - 9 Replies
hi leute
ich hab mir das spiel mal geladen. nachdem ich es starten wollte kam eine fehlermeldung, ich hab mir gedacht das liegt am setup oder so, also hab ich es wo anders geladen aber es klappt immer noch nicht -.-
bei mir steht immer:
ERROR: Cannot lauch child process (code:5)
wtf??? ich hab vista was muss ich jez machen?? avg antivir hab ich auch schon abgestellt.
thx an alle im vorraus :)
|
GM Klappt nicht
10/02/2009 - Metin2 Private Server - 9 Replies
so, nun ich habs geschaft, ich selbst bin GA,
aber wenn ich meine Freundin zum GM machen will, bzw alles eingetragen habe, passiert einfach nix.
Ja ich habe den Server rebootet etc.
Nix klappt-.-
Helft mir schnell ;)
|
Registrations Script " KOMPLETT "
09/23/2008 - Flyff Private Server - 2 Replies
Hey, ich suche hier ein vollständiges Registrations-Seiten Script.
Und ich wollte fragen wie man das alles dann mit der DB anpasst.
Also ein Script wie man das auf Hamachi einspielt, also auf die IP und wie man das alles so macht.^^
MfG 2 saa
|
All times are GMT +1. The time now is 08:08.
|
|