Hey everybody I want to let you know that I have undertaken the grueling task of getting the heck away from WordPress. I was so sick of the problems and updates I had to do all the time. I am now using my ezbloo system and I am integrating all my old posts into the new system. It sucks, but in the end, I will save bundles of time. I needed to keep things simple and that is why I created ezbloo. I'll have more on this later for you guys after I am done with the total integration of my old posts here. So if you are looking for a post and need it faster, shoot me an email and I will make it a priority. [email protected]

PHP Data Encryption is important to safety and privacy. In this lesson, I am going to show you how to insert and retrieve encrypted data in PHP using a MySQL database. Using these methods will make your websites and applications more secure. After completing this tutorial then you will want to go over How To Search PHP Encrypted Database.


PHP DATA ENCRYPTION INSERT RETRIEVE MYSQL DATABASE

In an earlier PHP Data Encryption lesson, I showed you guys how to  use OpenSSL to encrypt and decrypt your data. In this lesson, I will show you how to store it and retrieve it from a MySQL Database.

 

Code Example

function encryptthis($data, $key) {
$encryption_key = base64_decode($key);
$iv = openssl_random_pseudo_bytes(openssl_cipher_iv_length('aes-256-cbc'));
$encrypted = openssl_encrypt($data, 'aes-256-cbc', $encryption_key, 0, $iv);
return base64_encode($encrypted . '::' . $iv);
}

function decryptthis($data, $key) {
$encryption_key = base64_decode($key);
list($encrypted_data, $iv) = array_pad(explode('::', base64_decode($data), 2),2,null);
return openssl_decrypt($encrypted_data, 'aes-256-cbc', $encryption_key, 0, $iv);
}

Create Database For Encryption

Create a database to insert your encrypted data.  Name the database "users" in your phpmyadmin dashboard. Then create a table called people. Next, make 4 columns in the table id, name, email, reg_date. Set the name and email fields to TEXT. Do not use varchar because varchar will only give you 255 characters and you may need more than that for your encrypted code. We will use this database to insert and retrieve the data.
CREATE TABLE `people` (
`id` int(11) NOT NULL,
`name` text NOT NULL,
`email` text NOT NULL,
`reg_date` timestamp NOT NULL DEFAULT current_timestamp() ON UPDATE current_timestamp()
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

Create A Config File

You need to create a config file to connect to your database. This will let us insert our encrypted data and retrieve our encrypted data.

Inserting PHP Encrypted Data

To insert your PHP Encrypted Data into the database you created from the information above, use this code.
mysqli_query($con,"INSERT INTO people(`name`, `email`)VALUES ('$name','$email')");
echo '<div class="alert alert-success"> You entered successfully</div>';

Header.php File

<?php
date_default_timezone_set('America/New_York');
include_once('functions.php');
?>
<html>
<head>
<title>PHP ENCRYPTION DECRYPTION MYSQL</title>
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet" type="text/css" >
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/animate.css/3.5.2/animate.min.css">
</head>
<body>
<div class="container">

Footer.php File

</div>
</body>
</html>
<?php
$con->close();
?>
Copy all the files here and set them up on your server. Follow the video instructions and if you have any questions, ask them below.