{"id":23438,"date":"2021-04-30T11:37:00","date_gmt":"2021-04-30T08:37:00","guid":{"rendered":"https:\/\/themewp.inform.click\/?p=23438"},"modified":"2021-10-17T21:31:00","modified_gmt":"2021-10-17T18:31:00","slug":"kuinka-luoda-php-rekisterointijarjestelma-verkkosivustollesi","status":"publish","type":"post","link":"https:\/\/themewp.inform.click\/fi\/kuinka-luoda-php-rekisterointijarjestelma-verkkosivustollesi\/","title":{"rendered":"Kuinka luoda PHP-rekister\u00f6intij\u00e4rjestelm\u00e4 verkkosivustollesi"},"content":{"rendered":"<p>Haluatko integroida PHP-rekister\u00f6intij\u00e4rjestelm\u00e4n? T\u00e4ss\u00e4 viestiss\u00e4 luomme rekister\u00f6intilomakkeen, vahvistamme s\u00e4hk\u00f6postin tietokantaan. Kun k\u00e4ytt\u00e4j\u00e4 on rekister\u00f6itynyt onnistuneesti, l\u00e4het\u00e4mme aktivointilinkin k\u00e4ytt\u00e4j\u00e4n s\u00e4hk\u00f6postiosoitteeseen. Kun k\u00e4ytt\u00e4j\u00e4 napsauttaa aktivointilinkki\u00e4 s\u00e4hk\u00f6postista, aktivoimme h\u00e4nen tilins\u00e4.<\/p>\n<p>T\u00e4m\u00e4n j\u00e4lkeen luodaan PHP-rekister\u00f6intij\u00e4rjestelm\u00e4mme.<\/p>\n<h3>Luo k\u00e4ytt\u00e4j\u00e4taulukko tietokantaan<\/h3>\n<p>Tarvitsemme jokaiselle rekister\u00f6intij\u00e4rjestelm\u00e4lle tietokantataulukon. T\u00e4t\u00e4 taulukotietoa vastaan \u200b\u200btarkistamme, sy\u00f6tt\u00e4\u00e4k\u00f6 k\u00e4ytt\u00e4j\u00e4 yksil\u00f6llisen s\u00e4hk\u00f6postiosoitteen vai ei. Jos k\u00e4ytt\u00e4j\u00e4n tiedot ovat yksil\u00f6llisi\u00e4 ja oikeita, vain he voivat rekister\u00f6ity\u00e4 j\u00e4rjestelm\u00e4\u00e4mme.<\/p>\n<p>Suorita alla oleva kysely tietokantaan ja luo taulukko nimelt\u00e4 k\u00e4ytt\u00e4j\u00e4t.<\/p>\n<pre><code>CREATE TABLE `users` (\u00a0`id` int(11) NOT NULL AUTO_INCREMENT,\n\u00a0`fullname` varchar(255) NOT NULL,\n\u00a0`email` varchar(255) NOT NULL,\n\u00a0`password` varchar(255) NOT NULL,\n\u00a0`activation_key` varchar(255) NOT NULL,\n\u00a0`status` enum('0','1') NOT NULL DEFAULT '0',\n\u00a0PRIMARY KEY (`id`)) ENGINE=MyISAM;<\/code><\/pre>\n<h3>Luo rekister\u00f6intilomake<\/h3>\n<p><a href=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20843-6082315719f3b.png\" data-rel=\"lightbox\" ><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20843-6082315719f3b.png\" alt=\"Kuinka luoda PHP-rekister\u00f6intij\u00e4rjestelm\u00e4 verkkosivustollesi\" ><\/a><\/p>\n<p>K\u00e4yt\u00e4mme <a href=\"https:\/\/getbootstrap.com\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Saapasraksi viitekehyksen<\/a> suunnitella meid\u00e4n ilmoittautumislomakkeella. Luo index.php-tiedosto ja aseta alla oleva koodi siihen.<\/p>\n<pre><code>&lt;!DOCTYPE html&gt;\n&lt;html&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;head&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;title&gt;Registration Form&lt;\/title&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;link rel=\"stylesheet\" href=\"https:\/\/maxcdn.bootstrapcdn.com\/bootstrap\/3.3.7\/css\/bootstrap.min.css\" \/&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;\/head&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;body&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;div class=\"container\"&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;div class=\"row\"&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;div class=\"col-md-6\"&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;h3&gt;Registration Form&lt;\/h3&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;?php if(!empty($arr_message['msg'])) { ?&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;div class=\"alert &lt;?php echo $arr_message['class']; ?&gt;\"&gt;&lt;?php echo $arr_message['msg']; ?&gt;&lt;\/div&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;?php } ?&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;form method=\"post\"&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;div class=\"form-group\"&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;label for=\"exampleInputFullname\"&gt;Full Name&lt;\/label&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;input type=\"text\" class=\"form-control\" id=\"exampleInputFullname\" name=\"fullname\" placeholder=\"Full Name\" value=\"&lt;?php if(isset($fullname)) echo $fullname; ?&gt;\" required&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;\/div&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;div class=\"form-group\"&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;label for=\"exampleInputEmail1\"&gt;Email address&lt;\/label&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;input type=\"email\" class=\"form-control\" id=\"exampleInputEmail1\" name=\"email\" placeholder=\"Email\" value=\"&lt;?php if(isset($email)) echo $email; ?&gt;\" required&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;\/div&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;div class=\"form-group\"&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;label for=\"exampleInputPassword1\"&gt;Password&lt;\/label&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;input type=\"password\" class=\"form-control\" id=\"exampleInputPassword1\" name=\"password\" placeholder=\"Password\" required&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;\/div&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;div class=\"form-group\"&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;label for=\"exampleInputPassword2\"&gt;Confirm Password&lt;\/label&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;input type=\"password\" class=\"form-control\" id=\"exampleInputPassword2\" name=\"cpassword\" placeholder=\"Confirm Password\" required&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;\/div&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;button type=\"submit\" name=\"submit\" class=\"btn btn-default\"&gt;Submit&lt;\/button&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;\/form&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;\/div&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;\/div&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;\/div&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;script src=\"https:\/\/maxcdn.bootstrapcdn.com\/bootstrap\/3.3.7\/js\/bootstrap.min.js\"&gt;&lt;\/script&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;\/body&gt;\n&lt;\/html&gt;<\/code><\/pre>\n<p>Yll\u00e4 oleva koodi n\u00e4ytt\u00e4\u00e4 rekister\u00f6intilomakkeen, kun suoritamme &#8217;index.php&#8217; -tiedoston. Havaitset muuttujan $ arr_message [&#8217;msg&#8217;] koodissa, joka tulostaa mahdollisen kirjautumisvirheen. T\u00e4m\u00e4 muuttuja ilmoitetaan pian.<\/p>\n<h3>Palvelimen sivukoodi PHP-rekister\u00f6intij\u00e4rjestelm\u00e4lle<\/h3>\n<p>T\u00e4ss\u00e4 vaiheessa olemme valmiita rekister\u00f6intilomakkeen ja tietokantataulukon kanssa. Seuraavaksi l\u00e4hetyslomakkeeseen on kirjoitettava PHP-koodi, joka tarkistaa, onko s\u00e4hk\u00f6postia jo tietokannassa. Jos s\u00e4hk\u00f6posti on olemassa, heit\u00e4mme virheilmoituksen. Jos kaikki tiedot ovat oikein, lis\u00e4t\u00e4\u00e4n k\u00e4ytt\u00e4j\u00e4n tiedot tietokantaan ja l\u00e4hetet\u00e4\u00e4n aktivointilinkki heid\u00e4n antamaansa s\u00e4hk\u00f6postiosoitteeseen.<\/p>\n<p>Luo tiedosto &#8217;config.php&#8217;, johon tallennamme tietokannan tunnistetiedot.<\/p>\n<pre><code>&lt;?php\n$conn = new mysqli('DB_HOST', 'DB_USER', 'DB_PASSWORD', 'DB_NAME');\n\u00a0\nif ($conn-&gt;connect_errno) {\n\u00a0\u00a0\u00a0\u00a0echo \"Error: \". $conn-&gt;connect_error;\n}\n?&gt;<\/code><\/pre>\n<p>Lis\u00e4\u00e4 index.php-tiedostoon ennen HTML-tagin alkua alla oleva koodi.<\/p>\n<pre><code>&lt;?php\nrequire_once('config.php');\n\u00a0\n$arr_message = [];\nif (isset($_POST['submit'])) {\n\u00a0\n\u00a0\u00a0\u00a0\u00a0$_POST = array_map('trim', $_POST);\n\u00a0\u00a0\u00a0\u00a0extract($_POST);\n\u00a0\n\u00a0\u00a0\u00a0\u00a0if (!empty($fullname) &amp;&amp; !empty($email) &amp;&amp; !empty($password)) {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0if ($password == $cpassword) {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0$sql = \"SELECT id FROM users WHERE email = '\".$conn-&gt;real_escape_string($email).\"'\";\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0$result = $conn-&gt;query($sql);\n\u00a0\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0if ($result-&gt;num_rows &gt; 0) {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0$arr_message = [\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'class' =&gt; 'alert-danger',\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'msg' =&gt; 'Email already exist.',\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0];\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0} else {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0$email = $conn-&gt;real_escape_string($email);\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0$activation_key = sha1(mt_rand(10000,99999).time().$email);\n\u00a0\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0$sql = \"INSERT INTO users(fullname, email, password, activation_key) VALUES('\".$conn-&gt;real_escape_string($fullname).\"', '\".$email.\"', '\".md5($conn-&gt;real_escape_string($password)).\"', '\".$activation_key.\"')\";\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0$conn-&gt;query($sql);\n\u00a0\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\/\/send activation link in an email\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0$subject = 'Activate Your Account';\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0$message = 'Hello '.ucwords($fullname).',&lt;br&gt; \n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;p&gt;Click the below link to activate your account.&lt;\/p&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;a href=\"YOUR_PROJECT_URL\/activate.php?key='.$activation_key.'\"&gt;Activate Account&lt;\/a&gt;&lt;br&gt;&lt;br&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0Thanks,&lt;br&gt;Admin';\n\u00a0\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0$headers[] = 'MIME-Version: 1.0';\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0$headers[] = 'Content-type: text\/html; charset=iso-8859-1';\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0mail($email, $subject, $message, implode(\"rn\", $headers));\n\u00a0\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0$arr_message = [\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'class' =&gt; 'alert-success',\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'msg' =&gt; 'We have sent an activation link to your email. Please activate your account.',\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0];\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0$fullname = $email = '';\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0}\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0} else {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0$arr_message = [\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'class' =&gt; 'alert-danger',\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'msg' =&gt; 'Password mismatch.',\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0];\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0}\n\u00a0\u00a0\u00a0\u00a0}\n}\n?&gt;<\/code><\/pre>\n<p>T\u00e4ss\u00e4 tallennamme salasanaa PHP-menetelm\u00e4ll\u00e4 md5 olettaen, ett\u00e4 olet tallentanut salasanan t\u00e4ll\u00e4 algoritmilla.<\/p>\n<h3>activ.php-tiedosto Aktivoi tilisi<\/h3>\n<p>Nyt on aika luoda &#8217;activ.php&#8217; tiedosto. T\u00e4m\u00e4 tiedosto k\u00e4sittelee tilin aktivointikoodia. Kirjoitamme koodin k\u00e4ytt\u00e4j\u00e4tilin aktivoimiseksi, jos URL-osoite sis\u00e4lt\u00e4\u00e4 oikean aktivointiavaimen.<\/p>\n<p>&#8217;activ.php&#8217; -tiedosto sis\u00e4lt\u00e4\u00e4 alla olevan koodin.<\/p>\n<pre><code>&lt;?php\nrequire_once('config.php');\n\u00a0\nif (!isset($_GET['key']) || empty($_GET['key'])) {\n\u00a0\u00a0\u00a0\u00a0header('Location:index.php');\n}\n\u00a0\n$sql = \"SELECT id, status FROM users WHERE activation_key = '\".$_GET['key'].\"'\";\n$result = $conn-&gt;query($sql);\n\u00a0\nif ($result-&gt;num_rows &gt; 0) {\n\u00a0\u00a0\u00a0\u00a0$row = $result-&gt;fetch_assoc();\n\u00a0\u00a0\u00a0\u00a0if ($row['status']) {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0$arr_message = [\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'class' =&gt; 'alert-success',\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'msg' =&gt; 'Your account is already activated.',\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0];\n\u00a0\u00a0\u00a0\u00a0} else {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0$sql = \"UPDATE users SET status = '1' WHERE id = \".$row['id'].\" AND activation_key = '\".$_GET['key'].\"'\";\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0$conn-&gt;query($sql);\n\u00a0\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0$arr_message = [\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'class' =&gt; 'alert-success',\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'msg' =&gt; 'Your account is activated. You can &lt;a href=\"YOUR_PROJECT_URL\/login.php\"&gt;login now&lt;\/a&gt;.',\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0];\n\u00a0\u00a0\u00a0\u00a0}\n} else {\n\u00a0\u00a0\u00a0\u00a0$arr_message = [\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'class' =&gt; 'alert-danger',\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'msg' =&gt; 'Invalid URL.',\n\u00a0\u00a0\u00a0\u00a0];\n}\n?&gt;<\/code><\/pre>\n<p>Jos haluat n\u00e4hd\u00e4 onnistumis- \/ virhesanoman &#8217;activ.php&#8217; -tiedostossa, lis\u00e4\u00e4 siihen alla oleva HTML-koodi.<\/p>\n<pre><code>&lt;div class=\"container\"&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;div class=\"row\"&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;div class=\"col-md-6\"&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;?php if(!empty($arr_message['msg'])) { ?&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;div class=\"alert &lt;?php echo $arr_message['class']; ?&gt;\"&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;?php echo $arr_message['msg']; ?&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;\/div&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;?php } ?&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;\/div&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;\/div&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;\/div&gt;<\/code><\/pre>\n<p>Voit my\u00f6s lukea aiheeseen liittyv\u00e4n artikkelin <a href=\"https:\/\/themewp.inform.click\/fi\/kuinka-luoda-php-kirjautumisjarjestelma-verkkosivustollesi\/\" title=\"PHP-kirjautumisj\u00e4rjestelm\u00e4n luomisesta\">PHP-kirjautumisj\u00e4rjestelm\u00e4n luomisesta<\/a>.<\/p>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/artisansweb.net\" class=\"external external_icon\">artisansweb.net<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>T\u00e4ss\u00e4 artikkelissa luomme PHP-rekister\u00f6intij\u00e4rjestelm\u00e4n k\u00e4ytt\u00e4m\u00e4ll\u00e4 MySQLi\u00e4. Rekister\u00f6itymisprosessin aikana l\u00e4het\u00e4mme my\u00f6s aktivointilinkin k\u00e4ytt\u00e4j\u00e4lle<\/p>\n","protected":false},"author":1,"featured_media":21622,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[275],"tags":[843],"class_list":["post-23438","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-php-6","tag-affiai-fi"],"_links":{"self":[{"href":"https:\/\/themewp.inform.click\/fi\/wp-json\/wp\/v2\/posts\/23438","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/themewp.inform.click\/fi\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/themewp.inform.click\/fi\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/fi\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/fi\/wp-json\/wp\/v2\/comments?post=23438"}],"version-history":[{"count":0,"href":"https:\/\/themewp.inform.click\/fi\/wp-json\/wp\/v2\/posts\/23438\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/fi\/wp-json\/wp\/v2\/media\/21622"}],"wp:attachment":[{"href":"https:\/\/themewp.inform.click\/fi\/wp-json\/wp\/v2\/media?parent=23438"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/themewp.inform.click\/fi\/wp-json\/wp\/v2\/categories?post=23438"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/themewp.inform.click\/fi\/wp-json\/wp\/v2\/tags?post=23438"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}