login  Naam:   Wachtwoord: 
Registreer je!
 Forum

If statement werkt niet naar behoren (Opgelost)

Offline Pythonmaniac - 30/10/2013 19:08
Avatar van PythonmaniacLid Beste sitemasters,

Ik ben nog niet zo heel erg ervaren in PHP, laat ik dat voorop zetten. Ik ben bezig met een ledensysteem. Bij het registreren gaat er al wat fout. Wat wil het geval. Na het registreren (gebruikersnaam opgeven, 2x dezelfde wachtwoord en e-mail adres) wil ik controleren of de gebruikersnaam al bestaat op het moment de 2 wachtwoorden die zijn opgegeven wel overeen komen. Nou als ik de wachtwoorden verkeerd intyp, gaat hij gewoon verder met de if statement alsof hij wel goed is. Dan voer ik een gebruikersnaam in (een lege database, eerste account dus) en dan geeft hij aan dat de gebruikersnaam al bestaat. Wat doe ik verkeerd?

http://www.plaatscode.be/142282/

De connectie maak ik al en die klopt gewoon, het gaat puur om de if else statement. Kan iemand mij vertellen wat er verkeerd aan gaat?

Gr,

Jelle

3 antwoorden

Gesponsorde links
Offline Joel - 30/10/2013 20:35 (laatste wijziging 30/10/2013 20:45)
Avatar van Joel Eigenaar
  1. if ($pass == pass2)

Je bent daar de $ vergeten bij pass2.

Trouwens, controleren of een user al bestaat in de database doe je best door gebruik te maken van de COUNT() MySQL functie.

  1. $userQuery = mysql_query("SELECT count(*) FROM gebruikers WHERE UserName = '".$_POST['user'] . "'");


één veld terug ophalen van je query, doe je dan best met een andere functie, in plaats van het in een array te steken. Een array gebruiken voor maar één waarde is niet echt nodig. Een array gebruik je voor een rij met meerdere kolommen.

Maar dus om maar 1 veld op te halen, gebruik je de mysql_result() best (http://www.w3schools.com/php/func_mysql_result.asp)

  1. $userCount = mysql_result($userQuery, 0);


Je kan dan controleren of de waarde groter is als 0. Zoja, dan bestaat de gebruiker al.

  1. if ($userCount > 0) {
  2. echo "De user bestaat al";
  3. }
Offline Pythonmaniac - 30/10/2013 22:45
Avatar van Pythonmaniac Lid Hartstikke bedankt, het is inderdaad opgelost. Ik zag dat ik nog een fout had in een echo, het is makkelijker 1 regel echo te kopieren en te plakken als er 3x ongeveer hetzelfde eruit ziet. Maar de derde echo stond ook dat de gebruikersnaam al in gebruik was in plaats van dat de wachtwoorden niet overeen kwamen. Zorgde ook voor verwarring.
Offline Wijnand - 31/10/2013 11:44
Avatar van Wijnand Moderator Kun je 'm dan op "oplossing!" zetten (als Joël's antwoord dat was die de oplossing gaf dan bij hem, anders bij jou).
Gesponsorde links
Je moet ingelogd zijn om een reactie te kunnen posten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.23s