I have following code:
<meta charset="UTF-8">
<?php
include_once 'init/init.funcs.php';
function emaili_pikkus(){
global $email;
if (strlen($email)>45){
echo 'e-mail ei tohi olla pikem kui 45 tähemärki';
}
else{
parooli_pikkus();
}
}
function parooli_pikkus()
{
global $parool;
$pikkus = strlen($parool);
if ($pikkus<6){
echo "Parool peab olema vähemalt 6 tähemärki pikk";
}
else {
varasem_olemasolu();
}
}
function varasem_olemasolu()
{
global $email;
if(!empty($_POST['email']))
{
$query = mysql_query("SELECT * FROM kasutajad ") or die(mysql_error());
$array = mysql_fetch_array($query);
if(in_array($email, $array))
{
echo "Selle e-mailiga on kasutaja juba registreeritud.";
}
else
{
paroolide_kattuvus();
}
}
}
function paroolide_kattuvus()
{
$parool = $_POST['parool'];
$parool_uuesti = $_POST['parooluuesti'];
if($parool==$parool_uuesti)
{
NewUser();
}
else{
echo "Paroolid ei kattu.";
{}
}
}
function NewUser()
{
global $sql;
if (mysql_query( $sql))
{
echo "Kasutaja loodud";
}
}
emaili_pikkus();
?>
And file init.funcs.php which contains following:
<?php
session_start ();
$db = mysql_connect ( 'localhost', 'root', 'aaaa' );
$email = mysql_real_escape_string($_POST['email']);
$eesnimi = mysql_real_escape_string($_POST['eesnimi']);
$perekonnanimi = mysql_real_escape_string($_POST['perekonnanimi']);
$parool = $_POST['parool'];
$parool_uuesti = $_POST['parooluuesti'];
$salt = rand(10000,99999);
$hashed_pwd = sha1('$parool'.$salt);
$sql="INSERT INTO kasutajad (e_mail, eesnimi, perenimi, parool, salt ) VALUES ('$email','$eesnimi', '$perekonnanimi', '$parool', '$salt')";
if (! $db) {
header ( "location: /" );
die ();
} else {
mysql_select_db ( 'ta2014' );
}
include_once 'functions/user.funcs.php';
?>
My HTML looks like this:
<!DOCTYPE html>
<meta charset="UTF-8">
<html>
<head>
<title>Registreerimine</title>
</head>
<body>
<strong>Registreerimiseks täida järgnevad väljad: </strong><br>
<br>
<form method="POST" action="registreerimine4.php">
<table>
<tr><td>Sinu Tieto e-maili aadress: </td><td><input type="text" name="email"></td></tr>
<tr><td>Eesnimi: </td><td><input type="text" name="eesnimi"></td></tr>
<tr><td>Perekonnanimi: </td><td><input type="text" name="perekonnanimi"></td></tr>
<tr><td>Parool: </td><td><input type="text" name="parool"></td></tr>
<tr><td>Parool uuesti: </td><td><input type="text" name="parooluuesti"></td></tr>
</table>
<br>
<input type="submit" value="Registreeri" name="Registreeri">
</form>
</body>
</html>
Now when I run my HTML and PHP everything works properly except one function. varasem_olemasolu() does not work. This function is meant for checking if this email address already has an account registred. Everything worked properly when I used following code, but its too long and overly complicated to really use:
<meta charset="UTF-8">
<?php
function emaili_pikkus(){
$con = mysql_connect("localhost","root","aaaa");
$email = mysql_real_escape_string($_POST['email']);
if (strlen($email)>45){
echo 'e-mail ei tohi olla pikem kui 45 tähemärki';
}
else{
parooli_pikkus();
}
}
function parooli_pikkus()
{
$parool = $_POST['parool'];
$pikkus = strlen($parool);
if ($pikkus<6){
echo "Parool peab olema vähemalt 6 tähemärki pikk";
}
else {
varasem_olemasolu();
}
}
function varasem_olemasolu()
{
$con = mysql_connect("localhost","root","aaaa");
mysql_select_db("ta2014", $con);
$email = mysql_real_escape_string($_POST['email']);
if(!empty($_POST['email']))
{
$query = mysql_query("SELECT * FROM kasutajad ") or die(mysql_error());
$array = mysql_fetch_array($query);
if(in_array($email, $array))
{
echo "Selle e-mailiga on kasutaja juba registreeritud.";
}
else
{
paroolide_kattuvus();
}
}
}
function paroolide_kattuvus()
{
$parool = $_POST['parool'];
$parool_uuesti = $_POST['parooluuesti'];
if($parool==$parool_uuesti)
{
NewUser();
}
else{
echo "Paroolid ei kattu.";
{}
}
}
function NewUser()
{
$con = mysql_connect("localhost","root","aaaa");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("ta2014", $con);
$email = mysql_real_escape_string($_POST['email']);
$eesnimi = mysql_real_escape_string($_POST['eesnimi']);
$perekonnanimi = mysql_real_escape_string($_POST['perekonnanimi']);
$parool = $_POST['parool'];
$parool_uuesti = $_POST['parooluuesti'];
$salt = rand(1000000,99999999);
$hashed_pwd = sha1('$parool'.$salt);
$sql="INSERT INTO kasutajad (e_mail, eesnimi, perenimi, parool, salt ) VALUES ('$email','$eesnimi', '$perekonnanimi', '$parool', '$salt')";
if (!mysql_query($sql,$con))
{
die('Error: ' . mysql_error());
}
echo "Kasutaja loodud";
}
emaili_pikkus();
?>
It is a long question and I would be very thankful if someone answers me.