Avatar billede budda Nybegynder
28. januar 2006 - 12:33 Der er 7 kommentarer og
1 løsning

IN problemer

Jeg har en SQL der så ud som følger:
$AlleGET = mysql_query("SELECT * FROM pp_folders WHERE '".$fromid."' IN (fol_cat)")or die(mysql_error());
echo mysql_num_rows($AlleGET);

$fromid er et nummer eks 5 der bliver hentet udefra.

fol_cat = en ellere flere kategorier. eks: 4,2,3,5,1 eller 5

Jeg har 1 record i den kategori jeg prøver at hente men når jeg prøver at udskrive antallet af post giver den mig 0.

Nogen der kan hjælpe? Det er meningen man skal tage de records der har fol_cat = $fromid
Avatar billede jaw Nybegynder
28. januar 2006 - 12:35 #1
Du skal da vist lige bytte om på den:
$AlleGET = mysql_query("SELECT * FROM pp_folders WHERE fol_cat IN (".$fromid.")")or die(mysql_error());
Avatar billede budda Nybegynder
28. januar 2006 - 12:43 #2
Jeg forstår det simpelhen ikke.
Har prøvet at udskrive sqlen:
SELECT * FROM pp_folders WHERE fol_cat IN (1)

og det virker stadig ikke..
Og jeg har 4 nu i kategori 1..
Avatar billede budda Nybegynder
28. januar 2006 - 12:57 #3
Det er jo fol_cat der er flere tal i
Avatar billede jaw Nybegynder
28. januar 2006 - 13:07 #4
Nåå, altså du har dem som 1,2,3 i feltet? Det er ikke den smarteste måde, men så skal du vist ud i noget a'la:

WHERE fol_cat LIKE '%1%'
...hvis det da ikke overstiger 9, for ovenstående vil også returnere 10, 11, 12 etc. og 21 for den sags skyld.
Avatar billede budda Nybegynder
28. januar 2006 - 13:11 #5
Nemlig men det overstiger skam de 100 med tiden.

Der er ikke en "reverse" IN funktion ?
Avatar billede jaw Nybegynder
28. januar 2006 - 13:13 #6
Hvad mener du? IN() eller NOT IN(), som må være det modsatte, ser jo på feltets indhold, og ikke dele af indholdet. Men hvis du sørger for, at alle tal f.eks. efterfølges af et komma (også det sidste) som 1,2,3, så kan du jo bruge:
WHERE fol_cat LIKE '%".$formid.",%'
Avatar billede budda Nybegynder
28. januar 2006 - 14:24 #7
Ja har gjort noget ligende smed også et , foran.
Takker smid du et svar :)
Avatar billede jaw Nybegynder
28. januar 2006 - 14:26 #8
Selv tak :)
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