Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien
Toon posts:

PHP inlog en registreersysteem werkt niet.

Pagina: 1
Acties:
  • 366 views

Verwijderd

Topicstarter
Hallo,

Omdat mijn vorig topic op slot is omdat ik me per ongeluk niet hield aan de regels heb ik hier een topic die dus wat duidelijker zal zijn.
Mijn eerste probleem is, het inlog en registreersysteem werkt niet hoe het moet werken.
Ik heb op youtube en google vanalles proberen te zoeken om aan een oplossing te komen, maar ik kan niet vinden wat ik zoek.

Zou iemand alsjebleft even kunnen kijken wat er niet goed is, dankje? O-)

Index.html
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
<!DOCTYPE php

<html>

<head>

<meta http-equiv="Content-Type" content="text/html;charset=utf-8" >

  <title>Horselife</title>
  
</head>

<body>

 
   <img src="http://s3.amazonaws.com/pizap_gallery/062413/medium/pizap.com10.223355115856975321372029466154.jpg" alt=Horselife/> <br><br>
   
   <h3>Welkom op Horselife!</h3>
   <img src="http://u.jimdo.com/www60/o/s1a8880590aa1f2a7/img/i26cb75cb4e3ecea6/1368381675/std/image.jpg" alt=Horselifewelkom/>


  <p>Horselife is een paardenspel waarin je net zoals in het echt een stal kunt runnen en met paarden wedstrijden rijden, fokken, trainen en nog veel meer.<br>
Voor meer uitleg ga je naar 'uitleg'.</p>


<div>


<html>
<title>Inloggen.</title>
<body>
<form action='loginv.php' method='POST'>
<table>
<fieldset>
  <label>Gebruikersnaam:</label><input type='text' name='gebruikersnaam'><br>
  <label>Stalnaam:</label><input type='text' name='stalnaam'><br>
  <label>Wachtwoord:</label><input type='password' name='password'><br>
  <input type='submit' value='Inloggen'>
</fieldset>
</form>
</body>
</html>


<html>
<title>Registratie.</title>
<body>
<form action='registreerv.php' method='POST'>
<table>
<fieldset>
  <label>Gebruikersnaam:</label><input type='text' name='gebruikersnaam'><br>
  <label>Stalnaam:</label><input type='text' name='stalnaam'><br>
  <label>Naam paard:</label><input type='text' name='naam paard'><br>
  <label>Ras:</label><input type='text' name='ras paard'><br>
  <label>Geslacht:</label><input type='text' name='geslacht paard'><br> 
  <label>Wachtwoord:</label><input type='password' name='password'><br>
  <label>Controle wachtwoord:</label><input type='password' name='passwordc'><br>
  <label>E-mail:</label><input type='text' name='mail'><br>
<input type='submit' value='Aanmelden'>
</fieldset>
</form>
</body>
</html>


<center><script type="text/javascript" src="http://widget.supercounters.com/hit.js"></script><script type="text/javascript">sc_hit(614811,20,7);</script><br>
</center>


</div>


<style type="text/css">
 body {
    color: black;
    width: 828px;
    margin: auto;
    background-color: #FAEBD7 }
</style>


</body>

</html>



login.php
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<html>
<title>Inloggen.</title>
<body>
<form action='loginv.php' method='POST'>
<table>
<fieldset>
  <label>Gebruikersnaam:</label><input type='text' name='gebruikersnaam'><br>
  <label>Stalnaam:</label><input type='text' name='stalnaam'><br>
  <label>Wachtwoord:</label><input type='password' name='password'><br>
  <input type='submit' value='Inloggen'>
</fieldset>
</form>
</body>
</html>



loginv.php
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
<?php
session_start();
if( $_SERVER['REQUEST_METHOD'] == 'POST')        // Controle of er op de knop is gedrukt.
{
          
    if(!empty($_POST['gebruikersnaam']) AND !empty($_POST['password'])) // Controle of alles is ingevult.
    {
        include_once 'connect.php';            // Connectie met database.
        include_once 'uwx3g.php'; // Connectie salt page.

        $gebruikersnaam    = mysql_real_escape_string($_POST['gebruikersnaam']);  // Gevaren voor sql injectie weren dmv. mysql_real_.......
        $password        = sha1(salt($_POST['password']));  // Hash en Salting van pw.
        $sql = ("SELECT gebruikersnaam, password FROM gebruikers WHERE gebruikersnaam='". $gebruikersnaam . "' AND password= '" . $password . "'"); // Selecteer user waar de gebruiker overeenkomt met ingevoerde pas
        $uitvoer = mysql_query($sql);
        
        $controle = mysql_num_rows($uitvoer); //Uitvoer van inlog
            if($controle != 0)
            {
                //VERDERE VERWERKING. (DIT is aanjou, bijv. sessie ofziets?
            
               header('Location: Page1.html');
               echo 'Je bent succesvol ingelogd, je wordt doorgestuurd. ';
            
            }
            else
            {
                header('Location: Index.html');
                echo ('Verkeerde gebruikersnaam of wachtwoord.');        // Negatieve melding van ingevoerde gegevens.
            }            
    }
    else
    {
        header('Location: Index.html');
        echo ('U heeft een van de gegevens niet goed ingevuld.');        // Negatieve melding van ingevoerde gegevens.
    }  
}
else
{
    header('Location: Index.html'); // Negatief op de verwerk pagina gekomen, direct terug verwijzen met gepaste melding.
    exit ('U bent op de verkeerde pagina gekomen, u wordt doorverwezen.');
}
?>



registreren.php

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<html>
<title>Registratie.</title>
<body>
<form action='registreerv.php' method='POST'>
<table>
<fieldset>
  <label>Gebruikersnaam:</label><input type='text' name='gebruikersnaam'><br>
  <label>Stalnaam:</label><input type='text' name='stalnaam'><br>
  <label>Naam paard:</label><input type='text' name='naam paard'><br>
  <label>Ras:</label><input type='text' name='ras paard'><br>
  <label>Geslacht:</label><input type='text' name='geslacht paard'><br> 
  <label>Wachtwoord:</label><input type='password' name='password'><br>
  <label>Controle wachtwoord:</label><input type='password' name='passwordc'><br>
  <label>E-mail:</label><input type='text' name='mail'><br>
<input type='submit' value='Aanmelden'>
</fieldset>
</form>
</body>
</html>



registreerv.php

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
<?php

//Defineer functie
function error($link)
{
header('Refresh: 3; url=' . $link.php . '');
}

if($_SERVER['REQUEST_METHOD'] == 'POST') // Controle of er op de knop is geklikt.
{
    include_once 'connect.php'; // Connectie db.

    if(!empty($_POST['gebruikersnaam']) AND !empty($_POST['password']) AND !empty($_POST['passwordc']) AND !empty($_POST['mail'])) // Controle op invoeren
    {
        if(($_POST['password']) == ($_POST['passwordc'])) // Controle of controle pw overeenkomt met echte pw.
        {
            
            include_once 'uwx3g.php';            // Connectie met salt page.
            $gebruikersnaam    = mysql_real_escape_string($_POST['gebruikersnaam']); //Data veilig maken voor sql injectie d.m.v. mysql_real.....
            $password        = sha1(salt($_POST['password'])); //sha1 hash van pass. Inclusief salt.
            $mail            = mysql_real_escape_string($_POST['mail']);
            $sql = ("SELECT gebruikersnaam FROM gebruikers WHERE gebruikersnaam='". $gebruikersnaam . "'"); // Controle op gebruikersnaam, zo ja een 1 else en 0 (zie controle bij de volgende if)
            $uitvoer = mysql_query($sql);        //($row = mysql_fetch_assoc($get))
            
            $controle = mysql_num_rows($uitvoer);
                
            if($controle == 0) // Als uitvoer is 0 registreren.
            {
                mysql_query("INSERT INTO gebruikers (id, gebruikersnaam, password, mail, datum) VALUES ('','" . $gebruikersnaam . "', '" . $password . "', '" . $mail . "', '" . now() . "')"); // Gebruiker in db plaatsen.
                header('Refresh: 4; url=login.php');
                exit ('U bent succesvol aangemeld, u kunt nu inloggen.');
            }
            else
            {
                header('Refresh: 2; url=registreren.php');
                exit ('Verkeerde gebruikersnaam of wachtwoord.');        // Negatieve melding van ingevoerde gegevens.
            }    
        }
        else
        {
            error(registreren.php);
            exit ('De ingevoerde gegevens kloppen niet, u heeft het controle wachtwoord verkeerd ingevuld.');  // Negatieve melding van ingevoerde gegevens.
        }
    }
    else
    {
        error(registreren.php);
        exit ('De ingevoerde gegevens kloppen niet, niet alles is ingevuld.');  // Negatieve melding van ingevoerde gegevens.
    }


}
else
{
    error(registreren.php);
    exit ('U bent op de verkeerde pagina gekomen, U wordt doorverwezen.');
}

?>



connect.php

code:
1
2
3
4
5
6
7
8
<?php

//connecting to the database
$error = "Could not connect to the database";
$con = mysql_connect('---','---','---') or die($error);
mysql_select_db("---", $con) or die($error);

?>



uwx3g.php

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
<?php

function salt($pass, $salt="7dy23kl6yw4bd9x0k3", $str="")
{
    $pass = str_replace(" ", "", $pass);
    $pass = strrev($pass);

    $arr[0] = strlen($pass);
    $arr[1] = strlen($salt);
    
    while($arr[0] > $arr[1] + 1)
    {
        $salt = $salt.$salt;
        $arr[1] = strlen($salt);
    }

    $split_len = floor(max($arr) / (min($arr) - 1));
    
    $salt = explode(" ", chunk_split($salt, $split_len, " "));
    array_pop($salt);
    $salt = array_reverse($salt);
    
    $j = $arr[0] > count($salt) ? $arr[0] : count($salt);
    
    for($i=0; $i<$j; $i++)
    {
        if(isset($pass{$i}))    $str .= $pass{$i};
        if(isset($salt[$i]))    $str .= $salt[$i];
    }
    
    return $str;
}
?>



Page1.html

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<!DOCTYPE html

<html>

<head>

<meta http-equiv="Content-Type" content="text/html;charset=utf-8" >


</head>

<body>

<p>Welkom!</p>

</body>


</html>



Ik hoop dat het zo beter is, dit topic?

  • Alain
  • Registratie: Oktober 2002
  • Niet online
Verwijderd schreef op donderdag 27 juni 2013 @ 18:04:
Mijn eerste probleem is, het inlog en registreersysteem werkt niet hoe het moet werken.
Hoe zou het moeten werken? en wat doet het nu wel of niet?

You don't have to be crazy to do this job, but it helps ....


Verwijderd

Topicstarter
Nou, het zou zo moeten werken:

Registratieformulier invullen, mail krijgen met activatielink, gegevens enz..
Op activatielink klikken.
Inloggen, op eigen pagina komen.

Maar ook als er iets niet of niet goed ingevuld is wil ik dat er gezegt wordt dat er iets niet goed is ingevuld.

en dit allemaal doet die dus niet.
over het activeren, logisch dat die dat niet doet, daar is ie op het moment nog niet voor gemaakt.
Maar ik bedoel, derest hoort die te doen maar doet die niet, zoals aangeven dat er iets niet goed is ingevuld enz.

Ik zelf denk dat het ligt aan dat else en if dat steeds onderelkaar staat?

  • -DarkShadow-
  • Registratie: December 2001
  • Niet online
Is dit een kleine oefening om PHP te leren, of is dit een begin van een website? In het laatste geval kun je beter met een framework of in ieder geval scheiding van logica/ presentatie/ datalaag aan de slag gaan.

Specialist in:
Soldeerstations
Oscilloscoop


Verwijderd

Topicstarter
Nou, ik oefen ermee en probeer er dan een soort website van te maken waarop mensen hun stal kunnen runnen (spel)....

Oke, ik zal eens gaan kijken hoe dat gaat werken met framework of scheiding :)

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Verwijderd schreef op donderdag 27 juni 2013 @ 18:04:
Zou iemand alsjebleft even kunnen kijken wat er niet goed is, dankje? O-)
*DUMPT LAPPEN CODE*
Ik hoop dat het zo beter is, dit topic?
Nee.

Allereerst is je topic een Kan iemand even...? topic en daarbij is wederom eigen inzet (zie onze Quickstart waar NMe je eerder naar verwees) nergens te bekennen. Niemand zegt dat 't er niet is, maar niemand ziet er iets van terug in je topic. Ook "werkt niet hoe het moet werken" is geen afdoende probleemomschrjiving. Wees specifiek in wat er niet werkt, waarom je denkt dat dat zo is, eventuele foutmeldingen die je krijgt etc. etc.

Ik wil je vriendelijk, doch dringend, verzoeken NMe's eerdere post en de daarin gegeven linkjes en de linkjes in deze sluitmessage eens aandachtig door te nemen. En nogmaals: beperk je tot relevante(!) delen(!) code; niet 8 bestanden met in totaal om-en-nabij de 250 regels code.

Tot slot: probeer eens wat te debuggen: Debuggen: Hoe doe ik dat?.

[ Voor 8% gewijzigd door RobIII op 27-06-2013 18:30 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij

Pagina: 1

Dit topic is gesloten.