Ik probeer een loginsysteem te maken maar ik krijg steeds dezelfde foutmelding : Oooooeeeps! Er is iets fout gelopen bij de registratie waardoor je niet bent geregistreerd! Gebeurt dit meermaals neem dan contact op.

Hieronder plaats ik mijn codes:

<--- MySQL Code: --->
CREATE TABLE IF NOT EXISTS `logins` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `email` text COLLATE utf8_unicode_ci NOT NULL,
  `password` varchar(20) COLLATE utf8_unicode_ci NOT NULL,
  `date_joined` date NOT NULL,
  `userName` varchar(20) COLLATE utf8_unicode_ci NOT NULL,
  `firstName` text COLLATE utf8_unicode_ci NOT NULL,
  `lastName` text COLLATE utf8_unicode_ci NOT NULL,
  `day` text COLLATE utf8_unicode_ci NOT NULL,
  `month` text COLLATE utf8_unicode_ci NOT NULL,
  `year` text COLLATE utf8_unicode_ci NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=1 ;


<--- index.php --->

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <link rel="stylesheet" href="css/main.css" />
        <link rel="shortcut icon" href="images/favicon.png" type="image/png">
        <title>BrowserGame</title>
    </head>
    <body>
        <div id="header">
            <img src="images/logo.png" class="left" />
            <div class="right">
                <table>
                    <tr>
                    <form method="post" action="login.php" style="position:fixed;">
                        <td><label for="email">Email: </label></td>
                        <td><input type="text" name="email" class="form_boxText"/></td>
                        
                        <td><label for="email">Wachtwoord: </label></td>
                        <td><input type="password" name="pass" class="form_boxText"/></td>
                        
                        <td><button type="submit" name="loginButton" class="button_login" value="Login">Login</button></td>
                    </form>
                    </tr>
                </table>
            </div>
        </div>
        <div id="body">
            <table border="0" align="center">
                <tr>
                <!-- Left container -->             
                    <td width="1000">
                        
                    </td>
                    
                <!-- Right container -->
                    <td width="1000">
                        
                    </td>
                </tr>
                
                <tr>
                <!-- Left content -->
                    <td height="450">
                        <img src="images/connecting.png" width="254" height="352" />
                    </td>
                    
                <!-- Right content -->
                    <td height="345">
                        <table border="0" align="center">
                            <tr>
                                <td />
                                <td><h2>Start snel met ons spel!</h2></td>
                            </tr>
                            <form method="post" action="signup.php">
                            <tr>
                                 <td>
                                     <label for="userName">Gebruikersnaam: </label>
                                 </td>
                                 
                                 <td>
                                     <input type="text" name="userName" class="form_boxText"/>
                                 </td>
                            </tr>
                            
                            <tr></tr>
                            
                            <tr>
                                 <td>
                                     <label for="firstName">Voornaam: </label>
                                 </td>
                                 
                                 <td>
                                     <input type="text" name="firstName" class="form_boxText"/>
                                 </td>
                            </tr>
                            
                            <tr></tr>
                            
                            <tr>
                                 <td>
                                     <label for="lastName">Achternaam: </label>
                                 </td>
                                 
                                 <td>
                                     <input type="text" name="lastName" class="form_boxText"/>
                                 </td>                                
                            </tr>
                            
                            <tr></tr>
                            
                            <tr>
                                 <td>
                                     <label for="email">Email: </label>
                                 </td>
                                 
                                 <td>
                                     <input type="text" name="email" class="form_boxText"/>
                                 </td>                             
                            </tr>
                            
                            <tr></tr>
                            
                            <tr>
                                 <td>
                                     <label for="password">Wachtwoord: </label>
                                 </td>
                                 
                                 <td>
                                     <input type="password" name="password" class="form_boxText"/>
                                 </td>     
                            </tr>
                            
                            <tr></tr>
                            
                            <tr>
                                 <td>
                                     <label for="dob">Geboortedatum: </label>
                                 </td>
                                 
                                 <td>
                                     <select name="day" class="form_boxText">
                                         <option value="0" selected="1">Day</option>
                                         <option value="1">1</option>
                                         <option value="2">2</option>
                                         <option value="3">3</option>
                                         <option value="4">4</option>
                                         <option value="5">5</option>
                                         <option value="6">6</option>
                                         <option value="7">7</option>
                                         <option value="8">8</option>
                                         <option value="9">9</option>
                                         <option value="10">10</option>
                                         <option value="11">11</option>
                                         <option value="12">12</option>
                                         <option value="13">13</option>
                                         <option value="14">14</option>
                                         <option value="15">15</option>
                                         <option value="16">16</option>
                                         <option value="17">17</option>
                                         <option value="18">18</option>
                                         <option value="19">19</option>
                                         <option value="20">20</option>
                                         <option value="21">21</option>
                                         <option value="22">22</option>
                                         <option value="23">23</option>
                                         <option value="24">24</option>
                                         <option value="25">25</option>
                                         <option value="26">26</option>
                                         <option value="27">27</option>
                                         <option value="28">28</option>
                                         <option value="29">29</option>
                                         <option value="30">30</option>
                                         <option value="31">31</option>
                                     </select>
                                     
                                     <select name="month" class="form_boxText">
                                         <option value="0" selected="1">Month</option>
                                         <option value="1">Jan</option>
                                         <option value="2">Feb</option>
                                         <option value="3">Mar</option>
                                         <option value="4">Apr</option>
                                         <option value="5">May</option>
                                         <option value="6">Jun</option>
                                         <option value="7">Jul</option>
                                         <option value="8">Aug</option>
                                         <option value="9">Sep</option>
                                         <option value="10">Oct</option>
                                         <option value="11">Nov</option>
                                         <option value="12">Dec</option>
                                     </select>
                                     
                                     <select name="year" class="form_boxText">
                                         <option value="0" selected="1">Year</option>
                                         <option value="2014">2014</option>
                                         <option value="2013">2013</option>
                                         <option value="2012">2012</option>
                                         <option value="2011">2011</option>
                                         <option value="2010">2010</option>
                                         <option value="2009">2009</option>
                                         <option value="2008">2008</option>
                                         <option value="2007">2007</option>
                                         <option value="2006">2006</option>
                                         <option value="2005">2005</option>
                                         <option value="2004">2004</option>
                                         <option value="2003">2003</option>
                                         <option value="2002">2002</option>
                                         <option value="2001">2001</option>
                                         <option value="2000">2000</option>
                                         <option value="1999">1999</option>
                                         <option value="1998">1998</option>
                                         <option value="1997">1997</option>
                                         <option value="1996">1996</option>
                                         <option value="1995">1995</option>
                                         <option value="1994">1994</option>
                                         <option value="1993">1993</option>
                                         <option value="1992">1992</option>
                                         <option value="1991">1991</option>
                                         <option value="1990">1990</option>
                                         <option value="1989">1989</option>
                                         <option value="1988">1988</option>
                                         <option value="1987">1987</option>
                                         <option value="1986">1986</option>
                                         <option value="1985">1985</option>
                                         <option value="1984">1984</option>
                                         <option value="1983">1983</option>
                                         <option value="1982">1982</option>
                                         <option value="1981">1981</option>
                                         <option value="1980">1980</option>
                                         <option value="1979">1979</option>
                                         <option value="1978">1978</option>
                                         <option value="1977">1977</option>
                                         <option value="1976">1976</option>
                                         <option value="1975">1975</option>
                                         <option value="1974">1974</option>
                                         <option value="1973">1973</option>
                                         <option value="1972">1972</option>
                                         <option value="1971">1971</option>
                                         <option value="1970">1970</option>
                                         <option value="1969">1969</option>
                                         <option value="1968">1968</option>
                                         <option value="1967">1967</option>
                                         <option value="1966">1966</option>
                                         <option value="1965">1965</option>
                                         <option value="1964">1964</option>
                                         <option value="1963">1963</option>
                                         <option value="1962">1962</option>
                                         <option value="1961">1961</option>
                                         <option value="1960">1960</option>
                                         <option value="1959">1959</option>
                                         <option value="1958">1958</option>
                                         <option value="1957">1957</option>
                                         <option value="1956">1956</option>
                                         <option value="1955">1955</option>
                                         <option value="1954">1954</option>
                                         <option value="1953">1953</option>
                                         <option value="1952">1952</option>
                                         <option value="1951">1951</option>
                                         <option value="1950">1950</option>
                                         <option value="1949">1949</option>
                                         <option value="1948">1948</option>
                                         <option value="1947">1947</option>
                                         <option value="1946">1946</option>
                                         <option value="1945">1945</option>
                                         <option value="1944">1944</option>
                                         <option value="1943">1943</option>
                                         <option value="1942">1942</option>
                                         <option value="1941">1941</option>
                                         <option value="1940">1940</option>
                                         <option value="1939">1939</option>
                                         <option value="1938">1938</option>
                                         <option value="1937">1937</option>
                                         <option value="1936">1936</option>
                                         <option value="1935">1935</option>
                                         <option value="1934">1934</option>
                                         <option value="1933">1933</option>
                                         <option value="1932">1932</option>
                                         <option value="1931">1931</option>
                                         <option value="1930">1930</option>
                                         <option value="1929">1929</option>
                                         <option value="1928">1928</option>
                                         <option value="1927">1927</option>
                                         <option value="1926">1926</option>
                                         <option value="1925">1925</option>
                                         <option value="1924">1924</option>
                                         <option value="1923">1923</option>
                                         <option value="1922">1922</option>
                                         <option value="1921">1921</option>
                                         <option value="1920">1920</option>
                                         <option value="1919">1919</option>
                                         <option value="1918">1918</option>
                                         <option value="1917">1917</option>
                                         <option value="1916">1916</option>
                                         <option value="1915">1915</option>
                                         <option value="1914">1914</option>
                                         <option value="1913">1913</option>
                                         <option value="1912">1912</option>
                                         <option value="1911">1911</option>
                                         <option value="1910">1910</option>
                                         <option value="1909">1909</option>
                                         <option value="1908">1908</option>
                                         <option value="1907">1907</option>
                                         <option value="1906">1906</option>
                                         <option value="1905">1905</option>
                                     </select>
                                 </td>   
                            </tr>
                            
                            <tr></tr>
                            
                            <tr>
                                <td></td>
                                 <td>
                                     <button type="submit" value="Register" name="registerButton" class="button_register">Registreren</button>
                                 </td>     
                            </tr>
                            </form>
                        </table>
                    </td>
                </tr>
                <tr>
                </tr>
            </table>
        </div>
    </body>
    
</html>


<--- login.php --->

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <link rel="stylesheet" href="css/main.css" />
        <link rel="shortcut icon" href="images/favicon.png" type="image/png">
        <title>Browsergame</title>
    </head>
    <body>
        <div id="header">
            <img src="images/logo.png" class="left" />
            <div class="right">
                <table>
                    <tr>
                    <form method="post" action="login.php" style="position:fixed;">
                        <td><label for="email">Email: </label></td>
                        <td><input type="text" name="email" class="form_boxText"/></td>
                        
                        <td><label for="email">Pass: </label></td>
                        <td><input type="password" name="pass" class="form_boxText"/></td>
                        
                        <td><button type="submit" name="loginButton" class="button_login" value="Login">Login</button></td>
                    </form>
                    </tr>
                </table>
            </div>
        </div>
        <div id="body" style="padding-left:25%;">
            <table border="0" align="center">                
                <tr>
                <!-- content -->
                    <td height="693" align="center">
                        <?php require 'config/funcs.php'; login(); ?>
                    </td>
                </tr>
            </table>
        </div>
    </body>
    
</html>


<--- signup.php --->

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <link rel="stylesheet" href="css/main.css" />
        <link rel="shortcut icon" href="images/favicon.png" type="image/png">
        <title>Browsergame</title>
    </head>
    <body>
        <div id="header">
            <img src="images/logo.png" class="left" />
            <div class="right">
                <table>
                    <tr>
                    <form method="post" action="login.php" style="position:fixed;">
                        <td><label for="email">Email: </label></td>
                        <td><input type="text" name="email" class="form_boxText"/></td>
                        
                        <td><label for="email">Wachtwoord: </label></td>
                        <td><input type="password" name="pass" class="form_boxText"/></td>
                        
                        <td><button type="submit" name="loginButton" class="button_login" value="Login">Login</button></td>
                    </form>
                    </tr>
                </table>
            </div>
        </div>
        <div id="body" style="padding-left:25%;">
            <table border="0" align="center">                
                <tr>
                <!-- content -->
                    <td height="693" align="center">
                        <?php require 'config/funcs.php'; signup(); ?>
                    </td>
                </tr>
            </table>
        </div>
    </body>
    
</html>


<--- funcs.php (ik denk dat hier het probleem zit) --->

<?php
error_reporting('NOTICE');

require 'config/mysql.php';

function login() {
    $email = $_POST['email'];
    $password = $_POST['password'];
    
    $query = mysql_query("SELECT * FROM `logins` WHERE `email`='$email' AND `password`='$password'");
    
    $errors = array();
    
    if (empty($email)) {
        $errors[] = 'The email textbox cannot be blank/has to be valid.';
    }
    
    if (empty($password)) {
        $errors[] = 'The password textbox cannot be blank.';
    }    

    if (strlen($pass) > 20) {
        $errors[] = 'The password textbox cannot have characters longer than 20.';
    }

    if ($errors==true) {
        foreach ($errors as $error) {
            echo $error.'<br />';
        }
    } else {
        if (mysql_num_rows($query)==true) {
            echo 'Login Successful.';
        } else {
            echo 'Login failed.';
        }
    }

}

function signup() {
    $userName = $_POST['userName'];
    $firstName = $_POST['firstName'];
    $lastName = $_POST['lastName'];
    $email = $_POST['email'];
    $day = $_POST['day'];
    $month = $_POST['month'];
    $year = $_POST['year'];
    $password = $_POST['password'];
    
    $query = mysql_query("SELECT * FROM `logins` WHERE `email`='$email' AND `password`='$password' AND `userName`='$userName' AND `firstName`='$firstName' AND `lastName`='$lastName' AND `day`='$day' AND `month`='$month' AND `year`='$year'");
    
    $errors = array();
    
    if (empty($userName)) {
        $errors[] = 'Je gebruikersnaam moet volledig.';
    }
    
    if (empty($firstName)) {
        $errors[] = 'Je voornaam moet volledig zijn.';
    }
    
    if (empty($lastName)) {
        $errors[] = 'Je achternaam moet volledig zijn.';
    }
    
    if (empty($email)) {
        $errors[] = 'Je email moet volledig zijn.';
    }
    
    if (empty($day)) {
        $errors[] = 'Je moet een dag ingeven.';
    }
    
    if (empty($month)) {
        $errors[] = 'Je moet een maand ingeven.';
    }
    
    if (empty($year)) {
        $errors[] = 'Je moet een jaar ingeven.';
    }
    
    if (empty($password)) {
        $errors[] = 'Je wachtwoord moet volledig zijn.';
    }

    if (strlen($pass) > 20) {
        $errors[] = 'Je wachtwoord kan niet langer dan 20 tekens zijn.';
    }

    if ($errors==true) {
        foreach ($errors as $error) {
            echo $error.'<br />';
        }
    } else {
        if (mysql_num_rows($query)==true) {
            echo 'Welkom bij ons spel, start nu.';
        } else {
            echo 'Oooooeeeps! Er is iets fout gelopen bij de registratie waardoor je niet bent geregistreerd! Gebeurt dit meermaals neem dan contact op.';
        }
    }

}

?>


Ik hoop dat iemand mij hier mee kan helpen!


Christophe
Ok, wat zou ik moeten aanpassen om bv als er een emty formulier wordt verstuurd ook een leeg in mijn database te krijgen.
Je wilt voorkomen dat je lege entries in je database krijgt, die gevuld zijn door lege inputvelden en spaties?

<?php
$var = ' ';
if(trim($var)=="") {
	echo "Leeg";
} else {
	echo "Gevuld!";
}
?>

gewoon met trim() de spaties eromheen eraf snoepen, en dan vergelijken met een lege string.
Waar moet ik die code dan zetten heb al enkele keren geprobeerd.
Op de plek waar je wilt controleren in je signup()-functie?
Wat heb je al geprobeerd? Je hebt nu (ranzige) empty()'s staan, die je best kan vervangen met mijn code.
Waarom ga je in een functie eerst allemaal nieuwe variabelen aanmaken + een query uitvoeren én daarna(!!!) pas controleren of die variabelen wel een waarde hebben?

Verder gebruik je nog de mysql-functies. Die worden niet meer ondersteund (op (korte) termijn).
Kijk naar mysqli of pdo.

Bij je query mist verder foutafhandeling.

Wachtwoord nooit zonder encryptie opslaan.

Reageren