login  Naam:   Wachtwoord: 
Registreer je!
 Forum

email check vraagje

Offline webbiexl - 12/07/2005 11:10
Avatar van webbiexlPHP interesse hey ik heb het volgende email"checkje" gemaakt voor mijn wijzig pagina.

  1. if(geregistreerd($_POST['email'],email)) {
  2. $error[] = '<strong>'.$_POST['email'].'</strong> is reeds geregistreerd. Slechts één account per e-mailadres is toegestaan.';
  3. }


Zoals je misschien wel kan zien, wordt elk mailadres in de DB gecheckt of ie al bestaat of niet. nix mis mee. maar als ik voor mijn wijzig pagina (om het beter te beveiligen) dit erin wil hebben, checked deze statement ook het mail adres van de gebruiker die zijn profiel wilt wijzigen. Nu heb ik alle textvakjes het gegeven uit de database laten weergeven zodat de gebruiker weet wat ie ooit heeft ingevuld, dus ook het mail adres. drukt de gebruiker nu op profiel wijzigen dan krijgt hij dus de error hierboven te zien....

Nu is mijn vraag, is het mogelijk deze error aan te passen zoals dit
  1. if(geregistreerd($_POST['email'],email, behalve die van de user)) {
  2. $error[] = '<strong>'.$_POST['email'].'</strong> is reeds geregistreerd. Slechts één account per e-mailadres is toegestaan.';
  3. }

dus dat ie alle emails checked behalve die van de user zelf (dit zodat de user geen email kan gebruiken van een andere user wat nu nog wel mogelijk is

2 antwoorden

Gesponsorde links
Offline Thomas - 12/07/2005 12:17
Avatar van Thomas Moderator
  1. SELECT *
  2. FROM users
  3. WHERE userid != <het userid van de user die email wil wijzigen>
  4. AND email = <nieuwe email van user>


Dit mag dan geen resultaten opleveren...
Offline Dolfje - 12/07/2005 19:22 (laatste wijziging 12/07/2005 19:25)
Avatar van Dolfje Gouden medailleGouden medailleGouden medaille

PHP ver gevorderde
check vooraleer je die functie aanroept als de nieuwe email gelijk is aan het oude.

if(geregistreerd( addslashes($_POST['email']))) {
$error[] = '<strong>'.htmlspecialchars($_POST['email']).'</strong> is reeds geregistreerd. Slechts één account per e-mailadres is toegestaan.';
}
elseif( $email == $email van die user)
{
$error[] = '<strong>'.htmlspecialchars($_POST['email']).'</strong> is jouw email-adres.';
}

(ben daar weer met mijn XSS-gezever)
en voor het echt veilig te maken moet je vooralleer je iets in een query zet: addslashes();
en vooralleer je het uitprint: htmlspecialchars();
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2025 Sitemasters.be - Regels - Laadtijd: 0.198s