Avatar billede simotho Nybegynder
25. juli 2009 - 22:11 Der er 4 kommentarer og
1 løsning

Reagerer ikke på min if sætning?

Har noget kode og derefter lavet en if sætning som tjekker om ip'en allerede findes i databasen.
Men der er bare det problem, at den ikke registrere if sætningen. Men indsætter noget i databasen, selvom ip'en findes..

Her er det stykke kode som jeg bruger til min if sætning.

$hent_car = mysql_query("SELECT * FROM shorturls_browser WHERE ip = '.$ip.'");
$count_car = mysql_num_rows($hent_car);
if ($count_car == '0')
Avatar billede kdjweb Nybegynder
25. juli 2009 - 22:29 #1
prøv evt. at bruge mysql_error(); og se om du har udfyldt noget forkert der, ellers kunne du ændre din if lidt.

$hent_car = mysql_query("SELECT * FROM shorturls_browser WHERE ip = '.$ip.'")or die(mysql_error());
$count_car = mysql_num_rows($hent_car);
if (!$count_car){
// indsæt i db
} else {
// er i db
}
Avatar billede simotho Nybegynder
25. juli 2009 - 22:35 #2
Perfekt, det virkede. Tak
Avatar billede repox Seniormester
25. juli 2009 - 22:35 #3
Den nemmeste måde at komme udover det er at sætte feltet 'ip' i din tabel til at være unik og så ignorere den fejl mysql kommer med når linien er forsøgt sat ind. På den måde sparer du også kode og lader mysql klare 'bøvlet' for dig.

Udover det er ikke tilrådeligt at kontrollere om en int er det samme som en streng.
Avatar billede kdjweb Nybegynder
25. juli 2009 - 22:40 #4
selv tak :)
Avatar billede showsource Seniormester
26. juli 2009 - 07:53 #5
Og i stedet for at hente al info, vil det være bedre at bruge COUNT(*)

Og ellers som repox skriver, lad feltet med ip være UNIQUE
Så findes der kun et row med den ip.
Afhænger selvf. af hvad det er du ønsker at bruge det til.

Er feltet UNIQUE kan du evt. også bruge REPLACE hvis der under alle omstændigheder skal være et row med ip'en.
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