login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Email veranderen in controlepaneel

Offline Ernst - 03/11/2006 10:22 (laatste wijziging 03/11/2006 10:25)
Avatar van ErnstNieuw lid Dit naar aanleiding van het inlog registratie systeem, ik heb bij het controlepaneel de optie gedaan om het email te veranderen. Op het veranderen van het email adres is er een check om te kijken of iemand anders al geregistreerd staat met het zelfde email adres. Nou heb ik een probleem dat wanneer de klant zijn email adres niet veranderd maar wel iets anders veranderd , laten we zeggen zijn naam, deze check nog wel wordt uitgevoerd en ik dus een foutmelding krijg.

Goed, wat ik dus wil is dat er geen foutmelding wordt gegeven als het geposte email adres overeen komt met het al geregistreerde email adres van de klant die ingelogd is. Ik neem aan dat dit moet gebeuren met een check van het id, dus het id uit de sessie vergelijken met het id uit de query. Ikzelf heb dit op vele manieren geprobeerd, dit is de laatste:
http://www.plaatscode.be/3032/

Dit werkt natuurlijk niet. Dus weet iemand hoe ik dit wel werkend kan krijgen. Dus wanneer het geposte email adres gelijk is aan een geregistreerde email, dit is logisch aangezien het de email is van de klant zelf, hij geen foutmelding geeft.

14 antwoorden

Gesponsorde links
Offline Gerard - 03/11/2006 10:53
Avatar van Gerard Ouwe rakker
Citaat:
Dus wanneer het geposte email adres gelijk is aan een geregistreerde email, dit is logisch aangezien het de email is van de klant zelf, hij geen foutmelding geeft.


Je geeft hier zelf een antwoord op je eigen vraag.

Wanneer het formulier gesubmit is, doorloop je dus een aantal stappen.
1) Het ophalen van het huidige email adres van de ingelogde gebruiker
2) Controleren of het email adres uit het formulier anders is dan het email adres in de database.
2a) Als het email adres is gelijk is, doe je niets
2b) Als het email adres anders is controleer je of dit email adres al in de database aanwezig is.

Dat zijn de functionele stappen die je zelf al hebt aangegeven. Het bedenken van de technische code die eronder ligt moet geen probleem zijn vanaf dit moment. Als het goed is herken je al if-else structuren in de stappen die ik hierboven heb aangegeven.
Offline Ernst - 03/11/2006 10:57
Avatar van Ernst Nieuw lid Ik heb het zelf inderdaad wel in mijn hoofd zitten, maar op de 1 of andere manier komt het er niet uit. Alles wat ik probeer lukt niet.
Offline Gerard - 03/11/2006 11:19 (laatste wijziging 03/11/2006 11:20)
Avatar van Gerard Ouwe rakker Maar welk onderdeeltje ervan lukt je dan precies niet.

- Gaat het hier om een probleem dat je niet precies weet hoe je op een flexibele manier kan controleren of een waarde in een database voorkomt.
- Gaat het om een manier hoe je bij kan houden welke errors je tegen bent gekomen, en hoe je moet handelen om deze weer te geven en acties wel/niet uit te voeren
- Gaat het om een manier om flexibeler met je update query om te gaan, dat je hem niet in delen hoeft op te bouwen maar wilt zeggen;
UPDATE tabel
SET email = (if email is anders -> nieuwemail, anders -> huidigewaarde)

Waar heb je precies problemen mee?

edit
De reden dat ik dit vraag, is dat ik het zonde vind om je nu eventueel je antwoord voor te kauwen. Met daarnaast het gevoel dat dit dus niet ligt op jouw technische kunnen, maar gewoon een stukje logica omzetten naar die technische taal.

Als dat namelijk zo is en ik kauw het voor, hou je precies dezelfde problemen.
Offline Ernst - 03/11/2006 13:39 (laatste wijziging 03/11/2006 13:42)
Avatar van Ernst Nieuw lid http://www.plaatscode.be/3034/

Dit probeer ik maar hij doet alleen het eerste maar niet de else statement. Als ik het omdraai idem.

En dit werkt ook niet:
http://www.plaatscode.be/3035/
Offline Thomas - 03/11/2006 13:43
Avatar van Thomas Moderator Wat is $session precies?
En het moet $_POST zijn lijkt me, niet $_post.

Ik denk ook dat je de haken om $veld moet weglaten.

Verder declareer je 2x dezelfde query - waarom precies?

Deze functie kan korter en netter.
Offline Ernst - 03/11/2006 13:46
Avatar van Ernst Nieuw lid Ja dat klopt, in de tweede hoeft die tweede query er niet bij. Maar dat zou het resultaat niet moeten beinvloeden. Dat van die $_post en $veld is niet correct aangezien hij de if wel doet en daar staat dit zo ook in.
Offline Thomas - 03/11/2006 13:52
Avatar van Thomas Moderator Let op: $session <--> $_SESSION (underscore en hoofdletters)?
Offline Ernst - 03/11/2006 13:55
Avatar van Ernst Nieuw lid Ik begrijp je opmerking, maar het gaat mij om de else statement in mijn script. Het eerste met de $session werkt als een klokje. Maar hij gaat niet naar de else statement. Ik weet niet waarom hij het niet doet.
Offline Thomas - 03/11/2006 13:57 (laatste wijziging 03/11/2006 13:57)
Avatar van Thomas Moderator Het else-statement wordt niet uitgevoerd omdat je if-statement blijkbaar true oplevert? Voeg anders eens die-statements toe, om te kijken wat er precies wordt uitgevoerd.
Offline Ernst - 03/11/2006 14:43 (laatste wijziging 03/11/2006 14:45)
Avatar van Ernst Nieuw lid Juist ik heb het........
Offline Thomas - 03/11/2006 14:53
Avatar van Thomas Moderator * drum roll *

En de oplossing is ...
Offline Ernst - 03/11/2006 15:24
Avatar van Ernst Nieuw lid oooh het was heel simpel, en ik zat steeds in de buurt. Het is:
http://www.plaatscode.be/3036/
Offline Thomas - 03/11/2006 15:29
Avatar van Thomas Moderator Daar maakte ik je toch al 2x op attent, dat die $session niet klopte?

... 

Je kunt trouwens een hoop haken e.d. verwijderen.
Offline Ernst - 03/11/2006 15:37
Avatar van Ernst Nieuw lid Nee klopt, die had ik wel goed. Maar had hem per ongeluk aangepast en toen niet meer gechecked toen ik hem hier postte. Maar door jou werd ik er op attent gemaakt gelukkig, het blijven de kleine dingen die soms zeer irritant kunnen zijn. Van die haakjes weet ik, die heb ik er geplaats omdat het niet werkte en je dan van alles probeerd.
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2025 Sitemasters.be - Regels - Laadtijd: 0.171s