login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Controle van gebruikersnaam bij registratie (Opgelost)

Offline Trabajo - 21/06/2007 19:31
Avatar van TrabajoNieuw lid Hallo,

Ik heb een registratiesysteem opgezet waarbij de nieuwe gebruikers op de eerste pagina een gebruikersnaam en paswoord kiezen.

Nu wil ik voor ze verder gaan met de registratie dat eerst wordt gecontroleerd of de gebruikersnaam nog niet bestaat.

De code van de verwerkingspagina gaat als volgt:

  1. <?php session_start();
  2. include_once('config.php');
  3. //opslaan van de postvariabelen
  4. $gebruiker = $_POST['username'];
  5. $paswoord = $_POST['password'];
  6. //aanmaken van een sessievariabele
  7. $_SESSION['exists'] = false;
  8. //db-verbinding maken
  9. $db = mysql_connect($host,$gebruiker,$wachtwoord);
  10. mysql_select_db($database,$db);
  11. //query opstellen
  12. $query = "SELECT * from users_login WHERE users_login.username = '$gebruiker' ";
  13. $result = mysql_query($db,$query);
  14. //bestaat er al een zelfde gebruiker, terugsturen naar de vorige pagina
  15. if(mysql_num_rows($result) >0)
  16. {
  17. $_SESSION['exists'] = true;
  18. header ("Location: subscription_part1.php");
  19. }
  20. //bestaat er nog geen zelfde gebruiker, doorsturen naar volgende pagina
  21. else
  22. {
  23. $_SESSION['username'] = $gebruiker;
  24. $_SESSION['password'] = $paswoord;
  25. header ("Location: subscription_part2.php");
  26. }
  27. ?>


Dan krijg ik volgende foutmelding:

  1. Warning: mysql_connect() [function.mysql-connect]: Access denied for user 'een'@'localhost' (using password: NO) in C:\padnaam\controle_gebruiker.php on line 10
  2.  
  3. Warning: mysql_select_db(): supplied argument is not a valid MySQL-Link resource in C:\padnaam\controle_gebruiker.php on line 12
  4.  
  5. Warning: mysql_query(): supplied argument is not a valid MySQL-Link resource in C:\padnaam\controle_gebruiker.php on line 15
  6.  
  7. Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in C:\padnaam\controle_gebruiker.php on line 17
  8.  
  9. Warning: Cannot modify header information - headers already sent by (output started at C:\padnaam\controle_gebruiker.php:10) in C:\padnaam\controle_gebruiker.php on line 27


Iemand een idee wat de fout kan zijn?

6 antwoorden

Gesponsorde links
Offline Koen - 21/06/2007 19:36 (laatste wijziging 21/06/2007 19:47)
Avatar van Koen PHP expert Geef je config.php eens?
ik vermoed dat $host, $... daar instaat?
EDIT:
voor die laatste error moet je [URL=http://php.net/ob_start]Ob_Start();[/URL] gebruiken, helemaal boven aan de pagina zetten.
Offline Rik - 21/06/2007 19:40
Avatar van Rik Gouden medailleGouden medaille

Crew algemeen
Citaat:
Access denied for user 'een'@'localhost'
Als de logingegevens niet geldig zouden zijn zou ik eerder zoiets verwachten:
Citaat:
Access denied for user een@localhost

Staan die quotes soms al in die variabelen?
Offline Trabajo - 21/06/2007 19:47
Avatar van Trabajo Nieuw lid een was de naam voor een nieuwe gebruiker, weet ook niet waar de quotes vandaan komen.

config-bestand ziet er zo uit:
  1. <?php
  2.  
  3. /* configuratiebestand van de webapplicatie
  4. instelling van de databaseverbinding */
  5.  
  6. $host = 'localhost';
  7. $gebruiker = 'root';
  8. $wachtwoord = '';
  9. $database = 'test';
  10. $query = null;
  11. $db = null;
  12.  
  13. ?>
Offline Koen - 21/06/2007 19:49 (laatste wijziging 21/06/2007 19:50)
Avatar van Koen PHP expert je gebruikt 'root', waarom staat er dan 'een'@'localhost' in je error?
btw, als je hem in vorige post niet zo lezen:
Citaat:
EDIT:
voor die laatste error moet je [URL=http://php.net/ob_start]Ob_Start();[/URL] gebruiken, helemaal boven aan de pagina zetten.
Offline Rens - 21/06/2007 19:50
Avatar van Rens Gouden medaille

Crew algemeen
Omdat hij $gebruiker 2 keer gebruikt.
1 keer voor zijn formulier af te handelen, en 1 keer om zijn mysql gegevens in te zetten.
Even de $gebruiker van je formulier aanpassen naar iets als $gebruikerForm of zo...
Offline Trabajo - 21/06/2007 20:06 (laatste wijziging 21/06/2007 20:49)
Avatar van Trabajo Nieuw lid Dat had ik nog niet gezien :-)
Heb de nieuwe gebruiker nu $gebruiker_nieuw genoemd

De controle werkt! Alleszins al een grote merci!

Nog 1 probleem: met dit script stuurt hij een sessie variabele terug met de waarde true. Op mijn eerste pagina zeg ik dan dat als deze variabele true is, er een boodschap op het scherm moet komen.

Het probleem is nu dat deze boodschap er al staat vanaf de eerste keer en niet na een foutieve registratie.

Hoe kan je dat dan doen?
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.19s