Inlog script met mysql vraag

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Nawien Nawien

Nawien Nawien

02/11/2010 18:28:10
Quote Anchor link
hallo allemaal!

ik ben bezig met een inlog script en gistere werkte hij perfect maar vandaag probeerde ik weer in te loggen en hij deed het niet hij gaf gelijk de error aan voor als je je naam verkeerd hebt ingevuld of het wachtwoord terwijl die wel kloppen met me database zouden jullie me mischien willen helpen?

dit is de script
Quote:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
session_start();
include("config.php");
// kijke of hij de login wilt
if (!empty($_POST[username]))
{

    require_once("contactdb.php");

    // kijke of de info goed is
    $query = mysql_query("SELECT * FROM usersG
                            WHERE username = '$_POST[username]'
                            AND password = '$_POST[password]'"
)
    or die ("Error - De door u ingevulde gegevens zijn fout.");
    
    $row = mysql_fetch_array($query)
    or die ("Error - De door u ingevulde gegevens zijn fout.");
    
    if (!empty($row[username])) // hij heeft t
    {
        $_SESSION[username] = $row[username];
        $_SESSION[type] = $row[type];
        echo "Welkom $_SESSION[type] $_POST[username]! U bent nu ingelogd.<BR><BR> Klik <a href='home.php'><b>hier</b></a> om terug te gaan of wacht enkele seconden.";
        header ('refresh: 3; url=home.php');
        exit();
    }

    else // verkeerde info
    {
        echo "Error - De door u ingevulde gegevens zijn fout.<br /><br />
            Probeer opnieuw."
;
        exit();
    }
}

?>


Quote:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php
    
    // status bekijken
    if (!empty($_SESSION[username])) // hij heeft t
    {
        echo "U bent ingelogd als, <b>$_SESSION[username]</b>.";
    }

    else // verkeerde info
    {
        
    }
    
    [
/quote]

?>


Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
<?php
    if (isset($_SESSION['username']))
    {

        echo"U bent ingelogd";
    }

    else
    {  
        echo'
            <table>
                <tr>
                    </span><span class="style2"><span class="style13"><form action="index.php" method="post"><table width="75%" border="0" align=        "center" cellpadding="3" cellspacing="1">
                    <h2>Inloggen</h2>
                </tr>
                <tr>
                    <td width="100%"><label><span class="style14">Gebruikersnaam: </span>
                    <input type="text" name="username" size="25" value=""></label></td>
                </tr>
                <tr>
                    <td width="100%"><label><span class="style14">Wachtwoord: </span>
                    <input type="password" name="password" size="25" value=""></label></td>
                </tr>
                <tr>
                    <td width="100%"><input type="submit" value="Login!"><a href="register.php">Of Registreer hier.</a></td>
                </tr>
            </table>
        '
;
    }

?>

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?php
if (isset($_SESSION['username']))
{

    

    echo' <BR><BR><a href="logout.php">Uitloggen</a></span></span></td><br />
<br />
<br />
<br />
<br />
<br />
<br />


'
;
    }

    else
    {  
      
        }
?>
 
PHP hulp

PHP hulp

22/11/2024 16:05:13
 
Obelix Idefix

Obelix Idefix

02/11/2010 18:36:45
Quote Anchor link
Wat staat er in de query (regel 10) als je hem echoot naar het scherm? Klopt het dan met wat je verwacht?
 
Nawien Nawien

Nawien Nawien

02/11/2010 18:39:52
Quote Anchor link
als ik ehm echo laat hij me hele pagina niet zien

Toevoeging op 02/11/2010 18:40:59:

maar nu ik die echo weer weg heb gehaald dan doet hij het weer :| best wel vaag maar tog bedankt dat je me wou helpen
 
Obelix Idefix

Obelix Idefix

02/11/2010 18:45:58
Quote Anchor link
Als je hem echoot, zou hij de query moeten laten zien en de rest van je pagina.

Zorg voor controle op de input van je script.
Wees consequent <BR> en <br /> door elkaar.
Haal variabelen buiten quotes.

Is bovenstaande 1 script? Waarom dan steeds < ?php openen en sluiten?
Gewijzigd op 02/11/2010 18:46:15 door Obelix Idefix
 
Nawien Nawien

Nawien Nawien

02/11/2010 18:51:15
Quote Anchor link
omdat de eerste script boven me head staat en derest kan eigenlijk wel bij elkaar
 
Vincent Huisman

Vincent Huisman

02/11/2010 18:59:05
Quote Anchor link
je script is ook lek, sql injection
 
Milo S

Milo S

02/11/2010 20:54:50
Quote Anchor link
Je script klopt van geen kanten, gebruik het volgende als basis. Als je wat beter zoekt hier vind je kant en klare login scripts in het forum die perfect zijn! Bijna allemaal zo'n opbouw.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
<?php
# Sessie starten
session_start();

# DB Connectie maken
include('config.php');

# Forumulier verzonden
if( $_SERVER['REQUEST_METHOD'] == 'POST' )
{

    # Gebruikersnaam, wachtwoord ingevult?
    if( empty( $_POST['gebruikersnaam'] ) )
    {

        $errors[] = '';
    }

    if( empty( $_POST['wachtwoord'] ) )
    {

        $errors[] = '';
    }

    
    # Errors?
    if( !isset( $errors ) )
    {

        # Query + Check of query is gelukt e.d.
    }
    else
    {
        # Errors weergeven
        foreach( $errors as $error )
        {

            echo $error.'<br />';
        }
    }
}

else
{
    # Formulier    
}
?>
Gewijzigd op 03/11/2010 09:36:26 door Milo S
 
Bas IJzelendoorn

Bas IJzelendoorn

02/11/2010 21:21:46
Quote Anchor link
Tip:

Kijk ook eens naar: mysql_real_escape_string()

want dit:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
$query = mysql_query("SELECT * FROM usersG
                            WHERE username = '$_POST[username]'
                            AND password = '$_POST[password]'")


kan echt niet. Je sluit de regel niet af met ;
en je moet nooit $_ => POST, GET, REQUEST, SESSION in je query zetten!
Gewijzigd op 02/11/2010 21:23:39 door Bas IJzelendoorn
 
Nawien Nawien

Nawien Nawien

02/11/2010 21:22:29
Quote Anchor link
Milo S op 02/11/2010 20:54:50:
Je script klopt van geen kanten, gebruik het volgende als basis. Als je wat beter zoekt hier vind je kant en klare login scripts in het forum die perfect zijn! Bijna allemaal zo'n opbouw.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
<?php
# Sessie starten
session_start();

# DB Connectie maken
include('config.php');

# Forumulier verzonden
if( $_SERVER['REQUEST_METHOD'] == 'POST' )
{

    # Gebruikersnaam, wachtwoord ingevult?
    if( empty( $_POST['gebruikersnaam'] ) )
    {

        $errors[] = '';
    }

    if( empty( $_POST['wachtwoord'] ) )
    {

        $errors[] = '';
    }

    
    # Errors?
    if( isset( $erros ) )
    {

        # Query + Check of query is gelukt e.d.
    }
    else
    {
        # Errors weergeven
        foreach( $errors as $error )
        {

            echo $error.'<br />';
        }
    }
}

else
{
    # Formulier    
}
?>


oke dankjewel zal dese ff probere
 
Milo S

Milo S

02/11/2010 21:31:41
Quote Anchor link
Post je eind resultaat ook even dan kunnen we je wijzen op eventuele fouten...
 
Nawien Nawien

Nawien Nawien

02/11/2010 22:17:44
Quote Anchor link
Milo S op 02/11/2010 21:31:41:
Post je eind resultaat ook even dan kunnen we je wijzen op eventuele fouten...

Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
<?php
# Sessie starten
session_start();

# DB Connectie maken
include('contactdb.php');

# Forumulier verzonden
if( $_SERVER['REQUEST_METHOD'] == 'POST' )
{

    # Gebruikersnaam, wachtwoord ingevult?
    if( empty( $_POST['username'] ) )
    {

        $errors[] = 'Je bent je gebruikernaam vergeten.';
    }

    if( empty( $_POST['password'] ) )
    {

        $errors[] = 'Je bent je wachtwoord vergeten.';
    }

    
    # Errors?
    if( isset( $erros ) )
    {

        $query = mysql_query("SELECT * FROM usersG
                            WHERE username = '$_POST[username]'
                            AND password = '$_POST[password]'"
)
    or die ("Error - De door u ingevulde gegevens zijn fout.");
    
    $row = mysql_fetch_array($query)
    or die ("Error - De door u ingevulde gegevens zijn fout.");# Query + Check of query is gelukt e.d.
    
      if (isset($_SESSION['username']))
    {

        echo"U bent ingelogd";
    }
    }

  

    else
    {  
        echo'
            <table>
                <tr>
                    </span><span class="style2"><span class="style13"><form action="index.php" method="post"><table width="75%" border="0" align=        "center" cellpadding="3" cellspacing="1">
                    <h2>Inloggen</h2>
                </tr>
                <tr>
                    <td width="100%"><label><span class="style14">Gebruikersnaam: </span>
                    <input type="text" name="username" size="25" value=""></label></td>
                </tr>
                <tr>
                    <td width="100%"><label><span class="style14">Wachtwoord: </span>
                    <input type="password" name="password" size="25" value=""></label></td>
                </tr>
                <tr>
                    <td width="100%"><input type="submit" value="Login!"><a href="register.php">Of Registreer hier.</a></td>
                </tr>
            </table>
        '
;
    }  
}

?>




<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Goodfellas</title>
<style type="text/css">
<!--
body {
    background-color: #000;
}
body,td,th {
    color: #FFF;
}
-->
</style></head>

<body>
<center>



<p>&nbsp;</p>
<form id="form1" name="form1" method="post" action="">
  <p>  You know, we always called each other GoodFellas. Like you'd say to somebody: Your're gonna like this guy; he's alright.</p>
  <p>He's a good fella. He's one of us.You understand? <br />
  &quot;.We were GoodFellas; wiseguys.&quot;</p>
  <p><img src="goodfella.gif" width="320" height="135" />
  </p>
  <p>&nbsp;</p>
   <?php
    
    // status bekijken
    if (!empty($_SESSION[username])) // hij heeft t
    {
        echo "U bent ingelogd als, <b>$_SESSION[username]</b>.";
    }

    else // verkeerde info
    {
        
    }

    
    

?>



<?php
if (isset($_SESSION['username']))
{

    

    echo' <BR><BR><a href="logout.php">Uitloggen</a></span></span></td><br />
<br />
<br />
<br />
<br />
<br />
<br />


'
;
    }

    else
    {  
      
        }
?>

    
  </p>
  <p><u>Vragen / Wachtwoord Vergeten ?</u> </p>
  <p>&nbsp;</p>
  <p>&nbsp;</p>
  <p>&nbsp;</p>
  <p>&nbsp;</p>
  <p>&nbsp;</p>
  <p>&nbsp;</p>
  <p>&nbsp;</p>
  <p>&nbsp;</p>
  <p>&nbsp;</p>
  <p>&nbsp;</p>
  <p>&nbsp;</p>
  <p>&nbsp;</p>
  
  
  
  <embed src="Goodfellas.mp3" width="350" height="45" autostart="true" > </embed><br/> <br/> <br/>
  <br/>

</form>
</color>
</center>
</body>
</html>

Het is niet gelukt ik ben ook niet zo goed in php maar als ik naar me page ga dan zie ik me gebruikersnaam en wachtwoord balk en knop niet

Gebruik code-tags voor het overzichtelijk weergeven van je code[/modedit]
Gewijzigd op 02/11/2010 22:43:07 door Joren de Wit
 
- SanThe -

- SanThe -

03/11/2010 02:32:14
Quote Anchor link
Bekijk dat gegeven script eens goed. Daar staat correcte php in. Jij hebt in jouw stukje weer veel syntax onjuiste php staan. Verder is je html volgorde helemaal onjuist.
 
Milo S

Milo S

03/11/2010 09:39:26
Quote Anchor link
Damn...

Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
<?php
# Sessie starten
session_start();

# DB Connectie maken
include('config.php');

# Forumulier verzonden
if( $_SERVER['REQUEST_METHOD'] == 'POST' )
{

    # Gebruikersnaam, wachtwoord ingevult?
    if( empty( $_POST['username'] ) )
    {

        $errors[] = 'U bent uw gebruikernaam vergeten in te vullen.';
    }

    if( empty( $_POST['password'] ) )
    {

        $errors[] = 'U bent uw wachtwoord vergeten in te vullen.';
    }

    
    # Errors?
    if( !isset( $errors ) )
    {

    }

    else
    {
        foreach( $errors as $error )
        {

            echo $error.'<br />';    
        }
    }
}

else
{
    echo '
    <form action="" method="post">
    
        <label></label>
        <input name="username" type="text" />
        
        <label></label>
        <input name="password" type="password" />
        
        <input type="submit" value="Inloggen" />
    
    </form>
    '
;
}

?>


Weg met al die html! Eerst even gewoon een net php scriptje. Probeer je query er zelf in te bouwen! Vergeet or die(); en maak een goede foutafhandeling. Ook is het beter als je je formulier met css opmaakt en niet een tabel, dus houd het formuliertje wat ik er heb ingegooid.

@ SanThe; bij mijn sript stonden paar typ foutjes, nu verbetert :P. En ik denk dat de volgorde nog wel een van de grootste problemen is die we hier steeds tegenkomen, samen met de slechte afhandelingen natuurlijk.
Gewijzigd op 03/11/2010 09:40:48 door Milo S
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.