Wie kann ich verschlüsseln, ein Passwort in WordPress mit WordPress Salz?
Möchte ich verschlüsseln Sie das Kennwort gesendet, in der Datenbank mit dem standard-Wordpress-Salz, wie WordPress funktioniert es, wenn Sie einen neuen Benutzer erstellen. Ich weiß, das ich finden kann mein Salz in der wp-config.php. So brauche ich nicht zu generieren, das Salz; ich brauche nur um das Kennwort zu verschlüsseln.
So, dass wenn ich mypassword0, was an die Datenbank gesendet wird, ist der text verschlüsselt, der meine WordPress-Salz.
Hier ist mein original-code, der funktioniert. (danke Yadav Chetan für deine Hilfe!) Nun muss ich nur hinzufügen, das Salz Verschlüsselungs-code.
<?php
if(isset($_POST['submit'])){
$query = "INSERT INTO mytable_one
(user, pass)
VALUES
('".$_POST['user']."', '".$_POST['pass']."')";
$query = "INSERT INTO mytable_two
(fname, lname)
VALUES
('".$_POST['fname']."', '".$_POST['lname']."')";
mysql_query($query);
}else{
?>
<div class="content">
<form method="post">
<div><strong>First Name:</strong><span class="errortext">*</span></div>
<div><input id="first-name" name="fname" type="text" /></div>
<div><strong>Last Name:</strong><span class="errortext">*</span></div>
<div><input id="last-name" name="lname" type="text" /></div>
<div><strong>User:</strong><span class="errortext">*</span></div>
<div><input id="user-login" name="user" type="text" /></div>
<div><strong>Password:</strong><span class="errortext">*</span></div>
<div><input id="user-pass" name="pass" type="text" /></div>
<div><input id="submit-button" value="submit" type="submit" />
</div>
</form>
<?php }?>
AKTUALISIERT:
RRikesh schlug ich die mysql_* zu WPDB-code. Also habe ich versucht, es zu ändern über wpdb, und auch ich integrieren müssen, es in mit dem anderen code. So können Sie mir helfen, dieses Problem beheben aktualisierten code?
<?php
if(isset($_POST['submit'])){
$firstname = $_POST['fname'];
$lastname = $_POST['lname'];
$username = $_POST['user'];
$password = $_POST['pass'];
$wpdb->query(
$wpdb->prepare(
"INSERT INTO mytable_one
(user, pass) VALUES (%s, %s)",
$username,
wp_hash_password($password)
)
);
$wpdb->query(
$wpdb->prepare(
"INSERT INTO mytable_two
(fname, lname) VALUES (%s, %s)",
$firstname,
$lastname,
)
);
}else{
?>
<div class="content">
<form method="post">
<div><strong>First Name:</strong><span class="errortext">*</span></div>
<div><input id="first-name" name="fname" type="text" /></div>
<div><strong>Last Name:</strong><span class="errortext">*</span></div>
<div><input id="last-name" name="lname" type="text" /></div>
<div><strong>Username:</strong><span class="errortext">*</span></div>
<div><input id="user-login" name="user" type="text" /></div>
<div>Password:</div>
<div><input id="user-pass" name="pass" type="text" /></div>
<div><input id="submit-button" value="submit" name="submit" type="submit" /></div>
</form>
<?php }?>
UPDATE2
War ich nicht in der Lage, um die WPDB-Methode zu arbeiten. aber mit meinem otd-Methode war ich in der Lage, über das Passwort verfügt. Hier ist der funktionierende code:
<?php
if(isset($_POST['submit'])){
$password = $_POST['user_pass'];
$hash = wp_hash_password('$password');
$query = "INSERT INTO wp_users
(fname, lname, user, pass) VALUES ('".$_POST['fname']."', '".$_POST['lname']."', '".$_POST['user']."', '".$hash."')";
mysql_query($query);
}else{
?>
Vielleicht sollte ich öffnen Sie eine neue Frage über die WPDB, denn diese Frage wurde über das Hashen des Passworts, das ist gelöst.
$_POST
in der Sie Ihre Abfragen oder die mysql_*
Funktionen. Benutze MySQLi oder PDO statt. Zweitens, Sie generieren Salz, wie es anders ist pro Benutzer. Auch die, die Sie speichern möchten, das Salz zusammen mit dem Benutzer.naja, es ist auch für mich arbeiten, aber wenn Sie eine bessere Methode fühlen Sie sich frei zu besuchen, die Frage und geben eine bessere Antwort auf: stackoverflow.com/questions/16010409/... So weit, wie das Salz, das beantwortet nicht meine Frage.
Natürlich funktioniert es, es ist nur sehr unsicher. Google nach "SQL-injection" und du wirst mehr wissen. Wie weit die Salz -, haben Sie versucht, irgendetwas?
danke für den input; ich würde gerne hören Ihre alternative Methode
Und übrigens, der BEITRAG ist nur auf admin-Seite, wo nur 2 oder 3 registrierte Benutzer mit Administratorrechten haben Zugriff auf es. die Besucher der Seite überhaupt sehen oder haben Zugang zu diesem code. Immer noch unsicher?
InformationsquelleAutor | 2013-04-15
Du musst angemeldet sein, um einen Kommentar abzugeben.
Verwenden
wp_hash_password()
hash Ihr Passwort.die nicht
mysql_*
- Funktionen wie wurden Sie deprecated in PHP 5.5.0, und wurden entfernt in PHP 7.0.0.Verwenden Sie die WPDB-Klasse statt.
Ich habe versucht, es zu tun und meine modifizierten original-arbeiten-code von stackoverflow.com/questions/16010409/..., und den code Hinzugefügt habe ich versucht, am Ende der Frage. Können Sie mir helfen es zu beheben?
aktualisiert meine Antwort.
wow, das sieht ja viel einfacher... lass mich es versuchen... nur die Sache ist, wie über zwei separate Datenbanken? und ich meine Feste Sache, die ich versuchte oben...
ich aktualisierte meinen versuchen in der Frage, wieder basierend auf den neuen code, der versucht, Sie in separaten Datenbanken
InformationsquelleAutor RRikesh
sollten Sie verwenden, bcrypt für die Sicherung von Passwörtern
hier ist eine Beispiel-Klasse, die die Nutzung für meine Projekte.
Ich Verstand nicht, müssen Sie für wordpress, aber das ist eine gute information für wer will, um die Sicherung Ihrer Passwörter.
warum auf der Erde ist dies downwoted sowieso!!!!!
InformationsquelleAutor Erdem Ece