Oke,
ik ben dus eigenlijk nog maar net bezig met php en mysql.
En ik geraak maar niet aan een goede registratiepagina.
Mijn momentele registratiepagina doet het wel, maar is very basic.
Kan ik hier ergens een goede tut of script voor me registratiepagina vinden?
Momenteel staat er enkel:
Gewenste Gebruikersnaam:
Gewenste Wachtwoord:
+ het logt je ip
Maar hij checkt niet of de username al bestaat.

Ik hoop snel op een helpende reactie.
Die error kun je niet veranderen, want dat is wat MySQL teruggeeft. Je kunt natuurlijk wel je eigen error echoen als er iets fout gaat.
Zie
pgFrank schreef op 20.12.2008 14:29

2) Zie mysql_errno() wanneer er iets fout gaat, nr. 1064 (of 1062, ik vergeet dat altijd) moet het zijn.


..
Ksnap niks van die foutafhandeling tutorial...
Misschien dat je er iets meer dan een half uurtje tijd in moet steken? Wat snap je er niet aan? Volgens mij is alles toch vrij duidelijk uitgelegd aan de hand van voorbeelden...
Blanche schreef op 20.12.2008 15:27
Misschien dat je er iets meer dan een half uurtje tijd in moet steken?

Ja, maar ik heb niet lang nodig voor de fout te vinden,
wat ik begrijp aan jou tutorial is dat de error voor mij handig wordt,
wat heb ik eraan dat er staat:
Duplicate entry 'username' for key 2
Blanche schreef op 20.12.2008 15:27
Wat snap je er niet aan?

Hoe geef je een foutmelding zoals:
De opgegeven gebruikersnaam bestaat al.
In plaats van:
Duplicate entry 'username' for key 2
Door naar de error code van de foutmelding te kijken die je achterhaalt met mysql_errno().

In het geval van een unique key violation, zal mysql foutnummer 1062 terug geven. Daaruit zou jij kunnen concluderen dat er dus blijkbaar een bestaande gebruikersnaam ingevuld is.

Dus iets al dit:
<?php
if(mysql_errno() == 1062)
{
echo 'De opgegeven gebruikersnaam bestaat al';
}
?>
Let er wel op dat mysql je niet terug geeft wélke unique key er nu overtreden wordt. Dus als je er meerdere in je tabel hebt, heb je nog geen zekerheid...

ps. Precies hetzelfde al Frank je ook al zei, zie ik nu.
Bedankt.
Probleem opgelost :)

Reageren