close ad
 
Important WebAssist Announcement
open ad
View Menu

Technical Support Forums

Free, outstanding support from WebAssist and your colleagues

rating

Add password encryption on Mysqli Record insert

Thread began 1/17/2016 10:29 am by dazler1977 | Last modified 6/14/2021 10:17 am by Ray Borduin | 2439 views | 10 replies |

dazler1977

Add password encryption on Mysqli Record insert

I am using the Mysqli Record insert and I have a password field that I need to encrypt so that the password is not viewable in the database but shows as a token. Is this possible?

Sign in to reply to this post

Ray BorduinWebAssist

Yes, you can use an encryption function when storing the value and when doing the comparison on login. Just find an encryption function you would like to use and call it in the server behavior when binding the values.

Sign in to reply to this post
Did this help? Tips are appreciated...

dazler1977

Add password encryption on Mysqli Record insert

Is there a way you can give an example of how to incorporate the encryption function?

Sign in to reply to this post

Ray BorduinWebAssist

What type of encryption do you want to use? Do you have a particular encryption function in mind?

Sign in to reply to this post
Did this help? Tips are appreciated...

dazler1977

Add password encryption on Mysqli Record insert

I was wanting to use password_hash.

Sign in to reply to this post

Ray BorduinWebAssist

All you would need to do it wrap the binding value in the insert server behavior with the encryption function you want to use.

So instead of:

php:
<?php echo(isset($_POST['Password'])?$_POST['Password']:""); ?>


You would use:

php:
<?php echo(isset($_POST['Password'])?password_hash($_POST['Password']):""); ?>
Sign in to reply to this post
Did this help? Tips are appreciated...

Chefreporter

Passwort Verschlüsselung mit password_hash

Hallo!
Seit 2 Tagen habe ich nun die „MySQLi Server Behaviors“ (Version 1.0.8)!
Dreamweaver Version CC 2021 + PHP 7.4
Mit MySQLi Login User wollte ich nun eine Benutzeranmeldung mit Benutzer + Passwort durchführen. Das Passwort sollte dabei mit einer Verschlüsselung (password_hash) erfolgen. Leider bisher ohne Erfolg.

Auszug aus der Login Seite:
08) $Authenticate->Action = "authenticate";
09) $Authenticate->Trigger = ($_SERVER["REQUEST_METHOD"] === "POST");
10) $Authenticate->Name = "UserLogin";
11) $Authenticate->Table = "tblbenutzer";
12) $Authenticate->addFilter("Benutzer", "=", "s", "".((isset($_POST["benutzer"]))?$_POST["benutzer"]:"") ."");
13) $Authenticate->addFilter("Kennwort", "=", "s", "".(isset($_POST['Password'])?password_hash($_POST['Password']):"") ."");
14) $Authenticate->storeResult("vName", "Vorname");
15) $Authenticate->storeResult("nName", "Nachname");
16) $Authenticate->RememberMe = (false);
17) $Authenticate->SaveLogin = (false);
18) $Authenticate->AutoReturn = false;
19) $SuccessRedirect = "login/login.php";
20) $FailedRedirect = "fehler/fehler.php";
21) if (function_exists("rel2abs")) $SuccessRedirect = $SuccessRedirect?rel2abs($SuccessRedirect,dirname(__FILE__)):"";
22) if (function_exists("rel2abs")) $FailedRedirect = $FailedRedirect?rel2abs($FailedRedirect,dirname(__FILE__)):"";
23) $Authenticate->SuccessRedirect = $SuccessRedirect;
24) $Authenticate->FailRedirect = $FailedRedirect;
25) $Authenticate->execute();

Geändert hatte ich dabei die Zeile 13 entsprechend der folgenden Angabe:
<?php echo (isset($_POST['Password'])?password_hash($_POST['Password']):""); ?>

Die Änderung hatte ich unter der Registerkarte „Find Record“ von „MySQLi Login User“ eingetragen.
Wenn jetzt in der Tabelle in der Spalte „Kennwort“ das von „password_hash“ erzeugte Passwort steht, ist eine Anmeldung nicht erfolgreich, und es kommt die Fehlerseite laut Zeile 20!
Wenn ich in der Spalte das Kennwort Feld leer lasse - also kein Passwort eintrage - erfolgt die richtige Weiterleitung zur Login Seite, laut Zeile 19!

Was muss hier wo geändert werden, damit das richtig funktioniert!

Sign in to reply to this post

Ray BorduinWebAssist

This line should be updated:
13) $Authenticate->addFilter("Kennwort", "=", "s", "".(isset($_POST['Password'])?password_hash($_POST['Password']):"") ."");

to:
13) $Authenticate->addHash("Kennwort", "".(isset($_POST['Password'])?password_hash($_POST['Password']):"") ."");

Sign in to reply to this post
Did this help? Tips are appreciated...

Chefreporter

Leider ohne Erfolg:

08) $Authenticate->Action = "authenticate";
09) $Authenticate->Trigger = ($_SERVER["REQUEST_METHOD"] === "POST");
10) $Authenticate->Name = "UserLogin";
11) $Authenticate->Table = "tblbenutzer";
12) $Authenticate->addFilter("Benutzer", "=", "s", "".((isset($_POST["benutzer"]))?$_POST["benutzer"]:"") ."");
13) $Authenticate->addHash("Kennwort", "".(isset($_POST['Password'])?password_hash($_POST['Password']):"") ."");
14) $Authenticate->storeResult("vName", "Vorname");
15) $Authenticate->storeResult("nName", "Nachname");
16) $Authenticate->RememberMe = (false);
17) $Authenticate->SaveLogin = (false);
18) $Authenticate->AutoReturn = false;
19) $SuccessRedirect = "login/login.php";
20) $FailedRedirect = "fehler/fehler.php";
21) if (function_exists("rel2abs")) $SuccessRedirect = $SuccessRedirect?rel2abs($SuccessRedirect,dirname(__FILE__)):"";
22) f (function_exists("rel2abs")) $FailedRedirect = $FailedRedirect?rel2abs($FailedRedirect,dirname(__FILE__)):"";
23) $Authenticate->SuccessRedirect = $SuccessRedirect;
24) $Authenticate->FailRedirect = $FailedRedirect;
25) $Authenticate->execute();

Jetzt ist keine Anmeldung mehr möglich, egal ob ohne Passwort oder mit verschlüsseltem Passwort, es kommt nur noch die Fehlerseite (laut Zeile 20)

Das Bearbeitungsfenster Fenster "MySQLi Login User" erscheint jetzt auch nicht mehr. Die Bearbeitung ist nur noch im Quellcode direkt möglich!

Sign in to reply to this post

Ray BorduinWebAssist

Try just:

13) $Authenticate->addHash("Kennwort", "".(isset($_POST['Password'])?$_POST['Password']:"") ."");

Unfortunately Hashed passwords is only available with hand coding. Once added, you would have to manage the code by hand.

Sign in to reply to this post
Did this help? Tips are appreciated...
loading

Build websites with a little help from your friends

Your friends over here at WebAssist! These Dreamweaver extensions will assist you in building unlimited, custom websites.

Build websites from already-built web applications

These out-of-the-box solutions provide you proven, tested applications that can be up and running now.  Build a store, a gallery, or a web-based email solution.

Want your website pre-built and hosted?

Close Windowclose

Rate your experience or provide feedback on this page

Account or customer service questions?
Please user our contact form.

Need technical support?
Please visit support to ask a question

Content

rating

Layout

rating

Ease of use

rating

security code refresh image

We do not respond to comments submitted from this page directly, but we do read and analyze any feedback and will use it to help make your experience better in the future.

Close Windowclose

We were unable to retrieve the attached file

Close Windowclose

Attach and remove files

add attachmentAdd attachment
Close Windowclose

Enter the URL you would like to link to in your post

Close Windowclose

This is how you use right click RTF editing

Enable right click RTF editing option allows you to add html markup into your tutorial such as images, bulleted lists, files and more...

-- click to close --

Uploading file...