skal kun opret bruger hvis email ikke findes

Tags:    php mysql

Hej

Det er sådan at man kan blive ved med at opret 2 ens email adr og man kan opret flere og flere og flere og man kan bare blive ved

og jeg kan seriøst ikke finde fejl... hvad har jeg gør galt siden at man kan blive ved med at opret ens email adr.

Fold kodeboks ind/udPHP kode 



Fold kodeboks ind/udPHP kode 




Hvad er der galt siden det ikke ville virker :)



Jeg tror problem ligger her


Fold kodeboks ind/udPHP kode 



Fold kodeboks ind/udSQL kode 




10 svar postet i denne tråd vises herunder
3 indlæg har modtaget i alt 13 karma
Sorter efter stemmer Sorter efter dato
Hej Jesper,

Du kan gøre det så let som sagt. Du skal jo blot lave et tjek på om email adressen allerede findes:

Fold kodeboks ind/udPHP kode 




prøv, at var_dump($email); hvordan ser indholdet ud ?



Hej Jesper,

Du kan gøre det så let som sagt. Du skal jo blot lave et tjek på om email adressen allerede findes:

Fold kodeboks ind/udPHP kode 


Daniele, når du skriver if(mysql_num_rows($q) >= 0) vil den i princippet altid sige at "Email adressen er optaget!" fordi >= spørger om mysql_num_rows() er større end eller lig med 0 i den sætning du har skrevet, og der kan ikke være minus antal brugere, det har jeg i hvert fald aldrig oplevet. ;)

Jesper, hvis Danieles eksempel ikke fortæller dig at email adressen er optaget, betyder det sandsynligvis at du har indsat kodestykket forkert i din egen kode.

Mvh. Andreas Voss



Indlæg senest redigeret d. 06.03.2012 06:51 af Bruger #8884
Hej Jesper,

Du kan gøre det så let som sagt. Du skal jo blot lave et tjek på om email adressen allerede findes:

Fold kodeboks ind/udPHP kode 




Hej Daniele

Det virker stadig.. man stadig lave en bruger med sammen email adr.. :( jeg forstår det godt nok ikke..

Jeg synes det virker meget mærkeligt da..



prøv, at var_dump($email); hvordan ser indholdet ud ?


Hvordan skulle jeg sæt den ind ??



Indlæg senest redigeret d. 06.03.2012 06:34 af Bruger #16353

if(mysql_num_rows($q) >= 0)


Den betingelse er altid true. Prøv med >0





Indlæg senest redigeret d. 06.03.2012 06:55 af Bruger #3173
Hej Jesper,

Du kan gøre det så let som sagt. Du skal jo blot lave et tjek på om email adressen allerede findes:

Fold kodeboks ind/udPHP kode 


Daniele, når du skriver if(mysql_num_rows($q) >= 0) vil den i princippet altid sige at "Email adressen er optaget!" fordi >= spørger om mysql_num_rows() er større end eller lig med 0 i den sætning du har skrevet.

Jesper, hvis Danieles eksempel ikke fortæller dig at email adressen er optaget, betyder det sandsynligvis at du har indsat kodestykket forkert i din egen kode.

Mvh. Andreas Voss


Fold kodeboks ind/udPHP kode 




Det er sådan at jeg prøve at lave en anden email og jeg have prøve at tag lidt af min gammel kode og så tag noget at daniele's kode og det virker stadig ikke..

Fold kodeboks ind/udPHP kode 


Taget Daneiel kode og den bliver bare ved med at sige det samme som min egen og gøre det sammen mv.. og den bliver ved med at sige at email findes..



Indlæg senest redigeret d. 06.03.2012 07:16 af Bruger #16353
Som jeg læser det nu siger den at email adressen ALTID er optaget.

Det er, som jeg forklarede i et tidligere indlæg, fordi dit if-statement altid returnerer true.

Prøv det her:
Fold kodeboks ind/udPHP kode 




Som jeg læser det nu siger den at email adressen ALTID er optaget.

Det er, som jeg forklarede i et tidligere indlæg, fordi dit if-statement altid returnerer true.

Prøv det her:
Fold kodeboks ind/udPHP kode 




så kommer den frem og siger:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '@jesperbok.dk' at line 1



Ja, sorry lavede lige den fail med >=0.
@Jesper, prøv bare at skrive >0 som @Andreas beskriver.



Indlæg senest redigeret d. 06.03.2012 08:11 af Bruger #16025
Ja, sorry lavede lige den fail med >=0.
@Jesper, prøv bare at skrive >0 som @Andreas beskriver.




Det virker 100% nu !!



Indlæg senest redigeret d. 06.03.2012 10:55 af Bruger #16353
t