pass1 en pass2 controleren

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Karim

Karim

23/07/2007 17:04:00
Quote Anchor link
Hallo allemaal,

Ik ben nog steedsbezig met m'n eerste profielensysteem en heb weer een vastlopertje:

Ik weet nu eindelijk hoe ik de gegevens die een gebruiker in een html form invult in mijn database krijg, maar nu wil ik in het registratie formulier pass 1 en pass 2 (bijv) checken.

En dan moet het pas de db in gaan als het ook klopt.

Ik heb nu dit in m'n registratie pagina staan :
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?php
  if(!empty($_POST['pass']))
    {

        echo "U heeft geen wachtwoord ingevuld! Vul hem aub in.";
    }

?>


Ik neem aan dat ik hier iets moet verbouwen zodat pass1 en pass 2 gechecked worden en dan pas de db in gaan.

Alvast bedankt,

Karim
 
PHP hulp

PHP hulp

17/11/2024 23:40:50
 
Frank -

Frank -

23/07/2007 17:06:00
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
<?php
if($_POST['pass'] == $_POST['pass2']){
  // doe iets
}
else {
  // pass is niet gelijk aan pass2
}
?>

Een simpele vergelijking en niet meer dan dat
 
Karim

Karim

23/07/2007 20:31:00
Quote Anchor link
Ik wil eigenlijk niets doen bij het doe iets gedeelte.

Ik wil als de wachtwoorden gelijk zijn aan elkaar ze op deze manier in een database zetten:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
mysql_query("INSERT INTO `gasten` (`user`, `pass`) VALUES ('".$_POST['user']."', '".$_POST['pass']."')");
?>


Alvast bedankt,

Karim
 
Harm

Harm

23/07/2007 20:39:00
Quote Anchor link
Karim schreef op 23.07.2007 20:31:
Ik wil eigenlijk niets doen bij het doe iets gedeelte.

Ik wil als de wachtwoorden gelijk zijn aan elkaar ze op deze manier in een database zetten:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
mysql_query("INSERT INTO `gasten` (`user`, `pass`) VALUES ('".$_POST['user']."', '".$_POST['pass']."')");
?>


Alvast bedankt,

Karim


Leg het even beter uit. Bedoel je dat hij bij de regestratie gaat controleren? Of bij het inloggen??
 
Marcel K

Marcel K

23/07/2007 20:41:00
Quote Anchor link
dan wil je toch wel iets doen als ze gelijk zijn ?
Je geeft zelf het antwoord al lijkt mij.
 
Chris

Chris

23/07/2007 20:41:00
Quote Anchor link
Volgens mij bedoelt de TS nog steeds met het registreren.
Ziet de mysql er bij jou uit voor inloggen?

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
<?php
if($_POST['pass'] == $_POST['pass2']){
  // doe iets -> voer de pass in het mysql =)

mysql_query("INSERT INTO `gasten` (`user`, `pass`) VALUES ('".$_POST['user']."', '".$_POST['pass']."')");

}

else {
  // pass is niet gelijk aan pass2
  echo "Je wachtwoorden zijn niet gelijk!"; // of iets dergelijks...
}
?>

Edit:
Is dit wat je bedoelt?
Gewijzigd op 01/01/1970 01:00:00 door Chris
 
Frank -

Frank -

23/07/2007 20:46:00
Quote Anchor link
Quote:
maar nu wil ik in het registratie formulier pass 1 en pass 2 (bijv) checken
Hieruit maak ik op dat je wilt checken of deze 2 wel aan elkaar gelijk zijn. Dat lijkt mij ook de enige mogelijkheid, ik zou niet weten wat je nog meer kunt checken aan 2 door de gebruiker ingegeven wachtwoorden.
 
PHP Newbie

PHP Newbie

23/07/2007 20:50:00
Quote Anchor link
Maar gaat het allemaal niet wat te ver?

Je weet niet hoe je wachtwoorden kunt vergelijken, maar wilt al wel een profielensysteem gaan bouwen...
 
Jan Koehoorn

Jan Koehoorn

23/07/2007 20:51:00
Quote Anchor link
Let er wel op dat je eerst checkt of (bijv) $_POST['pass1'] niet empty is, en dan pas of ze gelijk zijn. Je zou bovendien nog een minimale lengte kunnen checken.
 
Karim

Karim

23/07/2007 21:02:00
Quote Anchor link
Ik wil zorgen dat er een juist wachtwoord de db in gaat.
Nadat er dus gecontroleerd is of de 2 velden gelijk zijn aan elkaar moet er dus een goed resultaat de db in.


Hier even een kleine samenvatting van hoe het er ongeveer uit ziet:
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
<?php
<form>
<
label>pass
<input type="pass">
<
/label>
<
label>pass2
<input type="pass">
<
/label>

  if(!empty($_POST['pass']))
    {

        echo "U heeft geen wachtwoord ingevuld! Vul hem aub in.";
    }

  if(!empty($_POST['pass'2]))
    {

        echo "U heeft geen wachtwoord2 ingevuld! Vul hem aub in.";
    }

//Hier moet dan ook gecontrolleerd worden of de 2 pass velden gelijk zijn aan elkaar

mysql_query("INSERT INTO `gasten` (`user`, `pass`) VALUES ('".$_POST['user']."', '".$_POST['pass']."')");

//Dan moet hij zo dus de db in

?>


Zo wil ik dus een veilige registratie pagina maken.
(Al begreep ik dat deze opbouw van het script al niet redelijk veilig was)

Alvast bedankt,
Karim
 
Frank -

Frank -

23/07/2007 21:07:00
Quote Anchor link
Zie mijn reactie van 23.07.2007 17:06, daar staat de kant-en-klare oplossing. Nog even op de juiste plek in je code zetten, mag je zelf doen, en klaar is klara.
 
Karim

Karim

28/07/2007 18:37:00
Quote Anchor link
Gaat het op deze manier allemaal werken?? (A)

<html>
<head>
<title> Registreren op Seriousmusic.nl </title>
</head>
<body>

<form method="post" action="">
<label>usernaam
<input type="text" name="user" id="user" />
</label>

<label>mail
<input type="text" name="mail" id="mail" />
</label>

<label>mail2
<input type="text" name="mail2" id="mail2" />
</label>

<label>pass
<input type="pass" name="pass" id="pass" />
</label>

<label>pass2
<input type="pass" name="pass2" id="pass2" />
</label>

<label>Verzenden
<input type="submit" name="Submit" id="Submit" value="Wordt lid!" />
</label>
</form>

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
<?php

include("database.php");

if(isset($_POST['Submit']))
{

    if(!empty($_POST['user']))
    {

        echo "U heeft geen username ingevuld! Vul hem aub in.";
    }

       if(!empty($_POST['mail']))
    {

        echo "U heeft geen mailadres ingevuld, vul hem in aub.";
    }

         if(!empty($_POST['mail2']))
    {

        echo "U heeft geen controlle van uw mailadres ingevuld, vul hem in aub.";
    }

     if($_POST['mail'] == $_POST['mail2']){


mysql_query("INSERT INTO `leden` (`mail`) VALUES ( '".$_POST['mail']."')");

}

else {

  echo "De mail adressen zijn niet hetzelfde!";
}

    if(!empty($_POST['pass']))
    {

        echo "U heeft geen password ingevuld, vul hem in aub.";
    }

     if(!empty($_POST['pass2']))
    {

        echo "U heeft geen controlle van uw wachtwoord ingevuld, vul hem in aub.";
    }

 if($_POST['pass'] == $_POST['pass2']){


mysql_query("INSERT INTO `leden` (`pass`) VALUES ( '".$_POST['pass']."')");

}

else {

  echo "De wachtwoorden zijn niet hetzelfde!";
}


 mysql_query("INSERT INTO `leden` (`user`) VALUES ( '".$_POST['user']."')");
?>


</body>
</html>


Alvast bedankt,
Karim
Gewijzigd op 01/01/1970 01:00:00 door Karim
 
Frank -

Frank -

28/07/2007 18:39:00
Quote Anchor link
Of het gaat werken, dat kun je zelf testen. Daar leer je het meeste van.

Offtopic: Backtics ` horen niet thuis in SQL! Gooi deze zooi dus weg, ritueel verbranden die troep!

Vroeg of laat ga je daarmee de mist in en loop je zelfs de kans dat jouw database wordt leeggegooid (afhankelijk van de fout die je maakt).
 
Karim

Karim

28/07/2007 18:41:00
Quote Anchor link
Daar kan ik dus ook gewoon ' voor gebruiken?
 
Joren de Wit

Joren de Wit

28/07/2007 18:56:00
Quote Anchor link
Nee, gewoon niets. Een tabel- of kolomnaam hoort in SQL niet tussen quotes of backticks te staan.

ps. Het enige waar je quotes voor gebruikt is bij strings in de query.
Gewijzigd op 01/01/1970 01:00:00 door Joren de Wit
 
Frank -

Frank -

28/07/2007 19:01:00
Quote Anchor link
Karim schreef op 28.07.2007 18:41:
Daar kan ik dus ook gewoon ' voor gebruiken?
Nee, een backtic ` is wat anders dan een quote '.

Een backtic verneukt jouw SQL en uiteindelijk ook de database, een quote zet je om een string.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
INSERT INTO
  tabelnaam (
    kolom1,
    kolom2
  )
VALUES(
  'waarde 1',
  23
)

Zoals je ziet, geen backtics in deze query maar wel een paar quotes om een string. De integer 23 kan zonder quotes in de query staan, maar mag je ook tussen quotes zetten. tabel- en kolomnamen staan nooit tussen quotes of backtics.
 



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.