30. maj 2007 - 21:05Der er
11 kommentarer og 1 løsning
sql og if og samle streng
Nu har jeg forgæves brugt en time på at søge herinde om nedenstående. Jeg må søge på det forkerte, da jeg er sikker på det er besvaret mange gange før.
Hvordan laver man en if sætning i sql og samler sql sætninger. Noget lignende dette eller? (mysql og php)
$sql = mysql_query("select * from tabel WHERE "; if ($_GET[navn] != "") { $sql = $sql . "name='$_GET[navn]' AND "; } $sql = $sql . "hus='$_GET[nr]'";
Når du starter en function (i dit tilfælde mysql_query) og starter en ny function (i dit tilfælde en if) vil php gerne have, at du slutter den første function - dvs. nu mangler mysql_query en slut parentes ")" og if er derfor ikke længere i mysql_query men står for sig selv.
Det løses ved, at function "if" ligges ind i string via: (!empty($_GET[navn]) ? "`name`='$_GET[navn]' and " : "")
hmm10, super - dit forslag ser ud til at være brugbart. Hvis if sætningen i stedet så således ud: if ($_GET[navn] == "ok") hvordan skal strengen så skrives?
@w13: Til mig? Den giver mig ikke nogle records (html'en viser sig fint, men ingen data fra db)
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.