Avatar billede coolcom Nybegynder
19. august 2008 - 12:19 Der er 9 kommentarer og
1 løsning

Udtrække poster med bestemt begyndelsesbogstev

Hej

Jeg er ved at lave et galleri hvor jeg, i kategorivisningen er ved at lave en mulighed for kun at vise kategorier der begynder med et bestemt bogstav.

Når man har trykket på f.eks. S, vil adressen være index.php?page=gallery&limit=S.

Her skal jeg så bruge en MySQL forespørgsel, der kan hive alle poster frem, med begyndelsesbogstevet S.

Hvordan kan jeg lave dette?
Avatar billede w13 Novice
19. august 2008 - 12:20 #1
Så bruger du bare:

WHERE felt1 LIKE 's%'
Avatar billede w13 Novice
19. august 2008 - 12:20 #2
Dvs.:

WHERE felt1 LIKE '".$_GET['limit']."%'
Avatar billede coolcom Nybegynder
19. august 2008 - 12:56 #3
Nu ser min forespørgsel således ud:

$totalrow = $connector->query('SELECT COUNT('.$field_to_count.') AS TOTAL FROM ' .$table_to_use.' WHERE '.$limit_field.' LIKE '.$_GET['limit'].'%') or die(mysql_error());

Men den trækker stadig alle poster ud
Avatar billede w13 Novice
19. august 2008 - 12:59 #4
Prøv lige:
echo 'SELECT COUNT('.$field_to_count.') AS TOTAL FROM ' .$table_to_use.' WHERE '.$limit_field.' LIKE '.$_GET['limit'].'%';

Hvad bliver der så udskrevet?
Avatar billede coolcom Nybegynder
19. august 2008 - 14:07 #5
Dette bliver udskrevet 2 gange:

SELECT COUNT(category_id) AS TOTAL FROM cms_gallery_category WHERE category_name LIKE S%
Warning: mysql_result(): supplied argument is not a valid MySQL result resource in C:\AppServ\www\splatter\includes\class_pager.php on line 62
Avatar billede coolcom Nybegynder
19. august 2008 - 14:08 #6
Og med den anden skriver den nu:

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 '%' at line 1
Avatar billede w13 Novice
19. august 2008 - 14:16 #7
Det er også forkert, det du skriver. Du bruger " og ' forkert. Brug:

$totalrow = $connector->query('SELECT COUNT('.$field_to_count.') AS TOTAL FROM ' .$table_to_use.' WHERE '.$limit_field.' LIKE "'.$_GET['limit'].'%"') or die(mysql_error());
Avatar billede w13 Novice
19. august 2008 - 14:17 #8
Din kode vil resultere i:

WHERE category_name LIKE S%

og det skal være:

WHERE category_name LIKE "S%"
Avatar billede coolcom Nybegynder
19. august 2008 - 15:04 #9
Det vr lige præcis det der var galt:P..

Tak for hjælpen
Avatar billede w13 Novice
19. august 2008 - 15:13 #10
Det var så lidt og tak 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
Computerworld tilbyder specialiserede kurser i database-management

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