Sorteren op TAG
Ik probeer alle resultaten uit mn database te halen op basis van een tag.
Ik heb een tabel die heet collection en daarin staat een veld Tags . Hierin staan de tags als volgt : tag1,tag2,tag3,tag4,tag5.
Nu probeer ik wil ik bijv alle posts waar tag1 in zit laten zien, die vraag ik op door bijv tag.php?tag=tag1
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
if (isset($_GET['tag']))
{
$tag = mysql_real_escape_string($_GET['tag']);
$gettags = mysql_query("SELECT * FROM collection WHERE 'tags' LIKE '% $tag %' OR 'tags' LIKE '$tag %' OR 'tags' LIKE '% $tag' OR 'tags' = '$tag'");
if(mysql_num_rows($gettags) > 0)
{
while ($tagresult = mysql_fetch_array($gettags))
{
echo $tagresult['title'];
echo "<br />";
}
}
else {
echo "No results =(";
}
}
else {
echo "no tag selected.";
}
{
$tag = mysql_real_escape_string($_GET['tag']);
$gettags = mysql_query("SELECT * FROM collection WHERE 'tags' LIKE '% $tag %' OR 'tags' LIKE '$tag %' OR 'tags' LIKE '% $tag' OR 'tags' = '$tag'");
if(mysql_num_rows($gettags) > 0)
{
while ($tagresult = mysql_fetch_array($gettags))
{
echo $tagresult['title'];
echo "<br />";
}
}
else {
echo "No results =(";
}
}
else {
echo "no tag selected.";
}
Maar het levert ALTIJD 0 resultaten op, krijg ook op geen enkele manier wel resultaten in phpmyadmin.. ziet iemand wat ik fout doe?
Gewijzigd op 06/05/2012 19:41:46 door Patrick vd Pols
je moet dus een aparte tabel aanmaken voor je tags
Ik heb het eerder wel precies werkend gekregen op deze manier
Patrick vd Pols op 06/05/2012 19:41:25:
Maar het levert ALTIJD 0 resultaten op, krijg ook op geen enkele manier wel resultaten in phpmyadmin.. ziet iemand wat ik fout doe?
Hier is 'tags' gewoon de string 'tags'.
WHERE 'tags' LIKE '....'
Ik denk dat je het veld `tags` bedoelt:
WHERE tags LIKE '....'
Heb het al aan de praat, zat een spatie tussen % $tag % .. die moest weg:p
Foutafhandeling inbouwen.
Aan een melding dat iets niet lukt heb je, bij het ontwerpen/testen, niet zo heel veel. Je wilt weten waarom het niet werkt.
Ja maar de query klopte, maar gaf gewoon 0 resultaten , dus daar zou die geen fout voor geven. Maar ik snap wat je bedoeld.