09. oktober 2005 - 13:37Der er
36 kommentarer og 1 løsning
Søgefunktion som ikke virker
Hejsa
Jeg har en lidt advanceret søgefunktion som jeg ikke kan få til at virke.
I kan prøve den på http://babesite.woox.dk/ ved at klikke på "KILK HER FOR ADVANCERET SØGNING" også prøve forskellige kombinationer. Jeg har lave så man kan se hvordan der bliver søgt, med nedenstående som standart:
Her er sql søgningen: SELECT * FROM freeporn_data ORDER BY id DESC LIMIT 0, 100
Du bruger $_GET[] i dine if'er, men du sætter jo ikke nogen $_GET'er. Hvad er din method i din form? Hvis du har sat den til post, så skal det jo være $_POST og ikke $_GET.
For lige at fejlsøge, kunne du så ikke trække din søgning ud af dine frames og køre den "alene" ? Jeg har tjekket dit lille script, og jeg kan ikke finde noget galt, men jeg kan godt se, at dine post's heller ikke kommer igennem rigtigt.
Og du har rettet det du lige pastede til $_POST, ik???
Og så skal du lige smide "asc" ind som value i din stigende/faldende, ellers duer det jo selvf. ikke. Men vi er da kommet så langt, at der nu kommer id som standard.
Har jeg prøvet, og det virker til dels, men ikke hvis du kun udfylder type og ikke category. Jeg ville nok bevæge mig ud i noget i stil med: Men jeg ville måske nok gøre: $categori = " WHERE "; if( (isset($_POST['category']) && !empty($_POST['category'])) && (!isset($_POST['type']) || empty($_POST['type'])) ) { $category .= "category = '".$_POST['category']."'"; } elseif( (isset($_POST['type']) && !empty($_POST['type'])) && (!isset($_POST['category']) || empty($_POST['category'])) ) { $category .= "type = '".$_POST['type']."'"; } else { $category .= "category = '".$_POST['category']."' AND type = '".$_POST['type']."'"; }
Tjah, tjoh. Første del aktiveres hvis kun category er udfuldt. Anden del hvis kun type er udfuldt, og sidste del hvis de begge er udfyldt. (Eller det var i hvert fald tanken bag, har ikke testet den :)
Min computer giver: Notice: Undefined index: type in c:\programmer\php\www\babesite\main.php on line 10
Nettet giver: 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 '= '' AND type = '' ORDER BY id DESC LIMIT 0, 100' at line 1
Ved begge af ovenstående har jeg ikke foretaget nogen søgning.
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.