Avatar billede marville Nybegynder
12. december 2005 - 21:56 Der er 9 kommentarer og
1 løsning

output af fejlkode

Jeg har en php fil og en database - OG er total newbie indenfor PHP. Hver gang jeg kalder databasen, vil jeg have et response, der fortæller om det gik fint eller ej!
Det skal gå 'skidt' hvis jeg bruger samme emailadr. idet jeg har gjort emailadr. Unique.

Jeg har lavet en :
$blabla = mysql_query("INSERT INTO test(email, name)values('$var1', '$var2')") or die (mysql_error());

Hvis jeg skriver echo "$blabla";  - modtager jeg '1', hver gang jeg kalder scriptet, uanset om jeg rammer en unique mailadr eller ej.

Kan nogle give et eksempel på hvordan jeg modtager et "fint/skidt" svar fra min php fil?  Det må være verdens simpelste if() - sætning der skal til. Men som sagt, et spørgsmål fra en nybegynder.. hjæælp :)
Avatar billede bromer Nybegynder
12. december 2005 - 21:58 #1
$blabla skulle meget gerne indeholde false, hvis der gik noget galt i din query.
Avatar billede jakobdo Ekspert
12. december 2005 - 22:21 #2
Du skal tjekke på mysql_affected_rows()
Avatar billede marville Nybegynder
12. december 2005 - 22:24 #3
ok... Og hvordan gøres dette? Tak for dit svar, iøvrigt! Hvis $blabla synes som en forkert måde at gribe det an på, gør jeg bare noget andet. Min logik sagde mig at det burde være sådn :)
Avatar billede jakobdo Ekspert
12. december 2005 - 22:26 #4
Du kan gøre sådan her:
mysql_query("INSERT INTO test(email, name)values('$var1', '$var2')") or die (mysql_error());
if(mysql_affected_rows()>0)
{
echo "opdateringen gik godt";
}
else
{
echo "opdateringen gik ikke godt";
}
Avatar billede marville Nybegynder
12. december 2005 - 22:34 #5
Så får jeg det rigtige echo på if() - sætningen, men et :
Duplicate entry 'a' for key 2  på else sætningen, hvis jeg forsøger igen.

('a' er det jeg har forsøgt at oprette igen)
Avatar billede marville Nybegynder
12. december 2005 - 23:14 #6
Det kører jo næsten - er der nogle der kan komme med den sidste løsning? Altså så den ikke skriver 'Duplicate entry 'a' for key 2'  men echo "opdateringen gik ikke godt";  ?
Avatar billede jakobdo Ekspert
13. december 2005 - 07:49 #7
Så skal du "Bare" fjerne: or die (mysql_error())
Avatar billede marville Nybegynder
13. december 2005 - 13:10 #8
sejt... virker! Tak! - Smid et svar, så smider jeg point tilbage
Avatar billede jakobdo Ekspert
13. december 2005 - 13:24 #9
Svar!
Avatar billede jakobdo Ekspert
13. december 2005 - 13:43 #10
Takker for point!
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester