[PHP] Probleempje

Gestart doorJosnl31 reacties82 weergaven

32 berichten · pagina 2 van 3

Josnl

Lid · Topicstarter

Berichten
3.461
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Bij allemaal?
0
Berichten
747
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Jponsen schreef:
Zeg het dan helemaal goed,
Gebruik daar gewoon de empty() functie voor.
if(empty($_POST[veldnaam])) {
Tuurlijk je hebt gelijk, gebruik zelf ook altijd empty.
Zat even te denken aan als je een 0 invult bij een veld, de functie empty zegt dat het een leeg veld is maar dat is idd in dit geval niet erg.
0
Josnl

Lid · Topicstarter

Berichten
3.461
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Maar wat moet ik dan met dat mysql_real_escape_string() doen?

Edit:

Heb het werkend, met de volgende code:

<!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>Registreren</title>
</head>

<body>

<div style="line-height:10px; color: #F30; font-family: Verdana, Geneva, sans-serif; font-size: 13px;">

[COLOR= #0000BB]<?php[/COLOR]

[COLOR= #FF8000]//Configuratiebestand includen[/COLOR]
[URL="http://www.php.net/include"]include[/URL][COLOR= #007700]([/COLOR][COLOR= #DD0000]config.php[/COLOR][COLOR= #007700]);[/COLOR]

[URL="http://www.php.net/if"]if[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$_SERVER[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]REQUEST_METHOD[/COLOR][COLOR= #007700]] ==[/COLOR] [COLOR= #DD0000]POST[/COLOR][COLOR= #007700])
{[/COLOR]

    [URL="http://www.php.net/if"]if[/URL][COLOR= #007700]([/COLOR][URL="http://www.php.net/empty"]empty[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$_POST[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]gebrnaam[/COLOR][COLOR= #007700]]))
    {[/COLOR]
        
        [URL="http://www.php.net/echo"]echo[/URL][COLOR= #DD0000]<li>Je hebt geen gebruikersnaam ingevuld!</li><br />[/COLOR][COLOR= #007700];
        
    }[/COLOR]
    
    [URL="http://www.php.net/elseif"]elseif[/URL][COLOR= #007700]([/COLOR][URL="http://www.php.net/empty"]empty[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$_POST[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]wachtwoord[/COLOR][COLOR= #007700]]))
    {[/COLOR]
        
        [URL="http://www.php.net/echo"]echo[/URL][COLOR= #DD0000]<li>Je hebt geen (geldig) wachtwoord ingevuld</li><br />[/COLOR][COLOR= #007700];
        
    }[/COLOR]
    
    [URL="http://www.php.net/elseif"]elseif[/URL][COLOR= #007700]([/COLOR][URL="http://www.php.net/empty"]empty[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$_POST[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]voornaam[/COLOR][COLOR= #007700]]))
    {[/COLOR]
        
        [URL="http://www.php.net/echo"]echo[/URL][COLOR= #DD0000]<li>Je hebt geen voornaam ingevuld!</li><br />[/COLOR][COLOR= #007700];
        
    }[/COLOR]
    
    [URL="http://www.php.net/elseif"]elseif[/URL][COLOR= #007700]([/COLOR][URL="http://www.php.net/empty"]empty[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$_POST[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]achternaam[/COLOR][COLOR= #007700]]))
    {[/COLOR]
        
        [URL="http://www.php.net/echo"]echo[/URL][COLOR= #DD0000]<li>Je hebt geen achternaam ingevuld</li><br />[/COLOR][COLOR= #007700];
        
    }[/COLOR]
    
    [URL="http://www.php.net/elseif"]elseif[/URL][COLOR= #007700]([/COLOR][URL="http://www.php.net/empty"]empty[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$_POST[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]telnr[/COLOR][COLOR= #007700]]))
    {[/COLOR]
        
        [URL="http://www.php.net/echo"]echo[/URL][COLOR= #DD0000]<li>Je hebt geen telefoonnummer ingevuld!</li><br />[/COLOR][COLOR= #007700];
        
    }[/COLOR]
    
    [URL="http://www.php.net/elseif"]elseif[/URL][COLOR= #007700]([/COLOR][URL="http://www.php.net/empty"]empty[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$_POST[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]email[/COLOR][COLOR= #007700]]))
    {[/COLOR]
        
        [URL="http://www.php.net/echo"]echo[/URL][COLOR= #DD0000]<li>Je hebt geen (geldig) email-adres ingevuld</li><br />[/COLOR][COLOR= #007700];
        
    }[/COLOR]
    [URL="http://www.php.net/else"]else[/URL]
    [COLOR= #007700]{[/COLOR] 
    
        [URL="http://www.php.net/mysql_query"]mysql_query[/URL][COLOR= #007700]([/COLOR][COLOR= #DD0000]"INSERT INTO `leden` (gebrnaam,
                                               wachtwoord,
                                               voornaam,
                                               tussenv,
                                               achternaam,
                                               telnr,
                                               email)
      
                       VALUES
                      (
                       "[/COLOR][COLOR= #007700].[/COLOR][URL="http://www.php.net/mysql_real_escape_string"]mysql_real_escape_string[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$_POST[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]gebrnaam[/COLOR][COLOR= #007700]]).[/COLOR][COLOR= #DD0000]",
                       "[/COLOR][COLOR= #007700].[/COLOR][URL="http://www.php.net/mysql_real_escape_string"]mysql_real_escape_string[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$_POST[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]wachtwoord[/COLOR][COLOR= #007700]]).[/COLOR][COLOR= #DD0000]",
                       "[/COLOR][COLOR= #007700].[/COLOR][URL="http://www.php.net/mysql_real_escape_string"]mysql_real_escape_string[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$_POST[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]voornaam[/COLOR][COLOR= #007700]]).[/COLOR][COLOR= #DD0000]",
                       "[/COLOR][COLOR= #007700].[/COLOR][URL="http://www.php.net/mysql_real_escape_string"]mysql_real_escape_string[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$_POST[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]tussenv[/COLOR][COLOR= #007700]]).[/COLOR][COLOR= #DD0000]",
                       "[/COLOR][COLOR= #007700].[/COLOR][URL="http://www.php.net/mysql_real_escape_string"]mysql_real_escape_string[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$_POST[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]achternaam[/COLOR][COLOR= #007700]]).[/COLOR][COLOR= #DD0000]",
                       "[/COLOR][COLOR= #007700].[/COLOR][URL="http://www.php.net/mysql_real_escape_string"]mysql_real_escape_string[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$_POST[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]telnr[/COLOR][COLOR= #007700]]).[/COLOR][COLOR= #DD0000]",
                       "[/COLOR][COLOR= #007700].[/COLOR][URL="http://www.php.net/mysql_real_escape_string"]mysql_real_escape_string[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$_POST[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]email[/COLOR][COLOR= #007700]]).[/COLOR][COLOR= #DD0000]"
                      )"[/COLOR][COLOR= #007700]);[/COLOR]
        
        [URL="http://www.php.net/echo"]echo[/URL] [COLOR= #DD0000]Succesvol geregistreerd[/COLOR][COLOR= #007700];
    
    }
}[/COLOR]
?>

<!-- Registratieformulier -->
<form action="" method="post">
   <table border="0">
      <tr>
         <td><input type="text" name="gebrnaam" value="Gebruikersnaam" size="25px"></td>
      </tr>
      <tr>
         <td><input type="password" name="wachtwoord" value="Wachtwoord" size="25px"></td>
      </tr>
            <tr>
         <td><input type="text" name="voornaam" value="Voornaam" size="25px"></td>
      </tr>
            <tr>
         <td><input type="text" name="tussenv" value="Tussenvoegsel" size="25px"></td>
      </tr>
            <tr>
         <td><input type="text" name="achternaam" value="Achternaam" size="25px"></td>
      </tr>
            <tr>
         <td><input type="text" name="telnr" value="Telefoonnummer" size="25px"></td>
      </tr>
            <tr>
         <td><input type="text" name="email" value="E-mailadres" size="25px"></td>
      </tr>
      <tr>
         <td><input type="submit" name="registreren" value="Registreren"></td>
      </tr>

   </table>
</form>


</body>
</html>


Bedankt voor de hulp en tips allemaal!shiny
0
Berichten
5.957
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
mysql_real_escape bestaat niet het is mysql_real_escape_string
0
Josnl

Lid · Topicstarter

Berichten
3.461
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Ja klopt, was het even vergeten dus heb het gelijk allemaal veranderd.
Gelukkig werkt het nu allemaal!
0
Josnl

Lid · Topicstarter

Berichten
3.461
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Ik heb nu het wachtwoord gecodeerd via md5, dit heb ik gedaan met een string.
Is dit een goede manier, of kan het ook anders? Dit werkt in ieder geval wel.

Alvast bedankt!!!

Edit:
Sorry voor dubbelpost!!!
0
Berichten
747
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Josnl schreef:
Ik heb nu het wachtwoord gecodeerd via md5, dit heb ik gedaan met een string.
Is dit een goede manier, of kan het ook anders? Dit werkt in ieder geval wel.

Alvast bedankt!!!

Edit:
Sorry voor dubbelpost!!!
Je krijgt je $_POST[password] binnen, die zet je in de databse via: md5($_POST[password]) (dus niet de MD5 functie van MySQL gebruiken maar die van PHP, waarschijnlijk heb je dat wel goed maar zeg het toch maar even)

Vervolgens bij het inloggen haal je het ingetypte wachtwoord dus weer door de md5() heen en vergelijk je deze md5 string met die in de database.

Als je het op die manier hebt gemaakt is het goed.
Nou is md5 niet meer de meest veilige manier maar nog steeds veel gebruikt, afraden doe ik het dus ook niet.
0
Rik

Lid

Berichten
18.393
Reputatie
0
Punten
0,04
Lid sinds
Laatst gezien
Ik zou toch wel sha1() gebruiken, en gebruik maken van een salt (ik leg wel uit wat een salt is als ik terug ben).
0
Josnl

Lid · Topicstarter

Berichten
3.461
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Oké Rik, ik zou graag uitleg willen over die sha1() en de salt.

Ik heb het nu zo (klein stukje code uit mn script):

$wachtwoord = md5($_POST[wachtwoord]);
    
        mysql_query("INSERT INTO `leden` (gebrnaam,
                                               wachtwoord,
                                               voornaam,
                                               tussenv,
                                               achternaam,
                                               telnr,
                                               email)
      
                       VALUES
                      (
                       ".mysql_real_escape_string($_POST[gebrnaam]).",
                       ".mysql_real_escape_string($wachtwoord).",
                       ".mysql_real_escape_string($_POST[voornaam]).",
                       ".mysql_real_escape_string($_POST[tussenv]).",
                       ".mysql_real_escape_string($_POST[achternaam]).",
                       ".mysql_real_escape_string($_POST[telnr]).",
                       ".mysql_real_escape_string($_POST[email])."
                      )");


Nogmaals bedankt!biggrin
0
Rik

Lid

Berichten
18.393
Reputatie
0
Punten
0,04
Lid sinds
Laatst gezien
sha1() is gewoon een alternatieve wachtwoord-encryptie methode. Een salt is zegmaar een string die je voor / achter / tussen het wachtwoord plakt, waardoor je gegarandeerd een onkraakbaar wachtwoord maakt.

Voorbeeld:

$salt = "Kh3j*6nfdl390)(**(74lf/ld;ds04ej(ldls";
$wachtwoord = hash("sha512", $salt . $wachtwoord .  $salt;
0
Josnl

Lid · Topicstarter

Berichten
3.461
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Oké, bedankt voor je uitleg Rik, ik ga die dan maar gebruiken want die lijkt mij dan een stuk veiliger!biggrinthumbsup
Edit:

Moet ik nog op een bepaalde manier het wachtwoord checken bij het inloggedeelte?smile
0
Rik

Lid

Berichten
18.393
Reputatie
0
Punten
0,04
Lid sinds
Laatst gezien
Ja, op dezelfde manier / met dezelfde salt als tijdens het registreren.
0
Berichten
6.144
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
En als je het dan nog veiliger wilt maken kan je die salt misschien ook nog wel door een md5() gooien, maar kweet niet of dat werukt.
0
Josnl

Lid · Topicstarter

Berichten
3.461
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Mwah, ik denk dat dit zo wel genoeg is.yummie
0
Berichten
20.364
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Of je gebruikt SHAhiem omdat het iets veiliger is dan md5. smile
0

Jouw reactie

Deel je idee, stel een vraag of help een ander verder.

Editor laden…

Praat mee met de One2xs-community.

Inloggen om te reageren