Gerelateerde items zoeken
Allereerst lees ik het volgende uit, zodat het bericht met juiste id wordt weergeven:
Code (php)
1
2
3
4
5
6
7
2
3
4
5
6
7
<?
$query = mysql_query("SELECT * FROM x WHERE id = $_GET[id]");
while($object = mysql_fetch_object($query)){
$id = $object->id;
$titel = $object->titel;
?>
$query = mysql_query("SELECT * FROM x WHERE id = $_GET[id]");
while($object = mysql_fetch_object($query)){
$id = $object->id;
$titel = $object->titel;
?>
wat prima gaat (later in het document wordt de while weer afgesloten).
Vervolgens wil ik relaterende items weergeven waarbij ik nog een error krijg 'not a valid mysql re...'
Code (php)
1
2
3
4
5
6
7
8
9
10
11
2
3
4
5
6
7
8
9
10
11
<?
// RELATED ITEMS ETC
$queryje = mysql_query("SELECT * FROM x WHERE $titel LIKE ‘$object->relaterend%’ ORDER BY titel");
while($objectje = mysql_fetch_object($queryje)){
$titel = $objectje->titel;
echo $titel;
}
}
?>
// RELATED ITEMS ETC
$queryje = mysql_query("SELECT * FROM x WHERE $titel LIKE ‘$object->relaterend%’ ORDER BY titel");
while($objectje = mysql_fetch_object($queryje)){
$titel = $objectje->titel;
echo $titel;
}
}
?>
Code (php)
1
2
3
4
5
6
2
3
4
5
6
<?
// RELATED ITEMS ETC
$queryje = mysql_query("SELECT * FROM nieuwsberichten WHERE '$titel' LIKE '%$relaterend%' ORDER BY datum");
while($objectje = mysql_fetch_object($queryje)){
$titel = $objectje->titel;
?>
// RELATED ITEMS ETC
$queryje = mysql_query("SELECT * FROM nieuwsberichten WHERE '$titel' LIKE '%$relaterend%' ORDER BY datum");
while($objectje = mysql_fetch_object($queryje)){
$titel = $objectje->titel;
?>
Site waar het op staat is te bekijken via volgende link:
http://www.vin-extreme.com/test/TESTv2/index.php
misschien makkelijker als je ziet wat ik bedoel;)
Gewijzigd op 15/05/2004 19:25:00 door Vincent
id -> unieke id nummer
titel -> nieuws titel
bericht -> nieuws bericht
datum -> datum van plaatsing
related -> related keywords
Als je dan iets uitleest:
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
24
25
26
27
28
29
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
<?
$sql = "SELECT titel,bericht,datum,related FROM tabel_naam WHERE id = '" . $_GET['id'] . "'";
$res = mysql_query($sql);
if (mysql_num_rows($res) >= 1)
{
$row = mysql_fetch_array($res);
echo "<b>" . $row['titel'] . "</b> op " . $row['datum'] . "<br>";
echo $row['bericht'] . "<p>";
$sql_related = "SELECT id,titel FROM tabel_naam WHERE related LIKE '%" . $row['related'] . "%'";
$res_related = mysql_query($sql_related);
echo "<b>Related links</b><br>";
if (mysql_num_rows($res_related) >= 1)
{
while ($row_related = mysql_fetch_array($res_related))
{
echo "<a href=\"nieuws.php?id=" . $row_related['id'] . "\">" . $row_related['titel'] . "</a><br>";
}
}
else
echo "Er zijn geen gerelateerde links";
}
else
{
echo "<b>Nieuws bericht niet gevonden.</b>";
}
?>
$sql = "SELECT titel,bericht,datum,related FROM tabel_naam WHERE id = '" . $_GET['id'] . "'";
$res = mysql_query($sql);
if (mysql_num_rows($res) >= 1)
{
$row = mysql_fetch_array($res);
echo "<b>" . $row['titel'] . "</b> op " . $row['datum'] . "<br>";
echo $row['bericht'] . "<p>";
$sql_related = "SELECT id,titel FROM tabel_naam WHERE related LIKE '%" . $row['related'] . "%'";
$res_related = mysql_query($sql_related);
echo "<b>Related links</b><br>";
if (mysql_num_rows($res_related) >= 1)
{
while ($row_related = mysql_fetch_array($res_related))
{
echo "<a href=\"nieuws.php?id=" . $row_related['id'] . "\">" . $row_related['titel'] . "</a><br>";
}
}
else
echo "Er zijn geen gerelateerde links";
}
else
{
echo "<b>Nieuws bericht niet gevonden.</b>";
}
?>
Thnx, ga het vanaaf ff proberen. Is stuk ingewikkelder dan ik dacht.
Het grotere probleem is dat ik nu de waardes niet meer goed krijg. In de tabel staat namelijk ook categorie en genre, en afhankelijk daarvan wordt een plaatje getoond en de kleur van de lijn bepaald, die nu dus niet werken. Heb verschillende manieren geprobeerd maar toen kreeg ik alleen maar errors.
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
24
25
26
27
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<?
$sql = "SELECT titel,bericht,datum,relaterend,auteur,genre,categorie,mid FROM tabel_naam WHERE id = '" . $_GET['id'] . "'";
$res = mysql_query($sql);
if (mysql_num_rows($res) >= 1)
{
if($categorie == nieuws) { $hrcolor = 862627; }
if($categorie == overig) { $hrcolor = 339933; }
if($categorie == announcement) { $hrcolor = CCCCCC; }
if($genre == nu) { $image = nu; }
if($genre == dark) { $image = dark; }
if($genre == old) { $image = old; }
if($genre == goth) { $image = goth; }
if($genre == gr) { $image = gr; }
if($genre == rock) { $image = rock; }
if($genre == punk) { $image = punk; }
if($genre == ander) { $image = ander; }
if($genre == algem) { $image = algem; }
$row = mysql_fetch_array($res);
echo "<div class=\"tekst\"><img src=\"templatepics/news/$image.gif\" height=\"11\" width=\"42\" border=\"0\"> <b>" . $row['titel'] . "</b></div>";
echo "<hr width=\"585\" size=\"2\" color=\"#$hrcolor\" align=\"left\">";
echo "<div class=\"teksts\">Gepost op" . $row['datum'] . "door <a href=\"./member/profiel.php?mid=". $row['datum'] ."\">" . $row['auteur'] . "</a></div>";
echo "<div class=\"tekst\">" . $row['bericht'] . "</div>"; ?>
$sql = "SELECT titel,bericht,datum,relaterend,auteur,genre,categorie,mid FROM tabel_naam WHERE id = '" . $_GET['id'] . "'";
$res = mysql_query($sql);
if (mysql_num_rows($res) >= 1)
{
if($categorie == nieuws) { $hrcolor = 862627; }
if($categorie == overig) { $hrcolor = 339933; }
if($categorie == announcement) { $hrcolor = CCCCCC; }
if($genre == nu) { $image = nu; }
if($genre == dark) { $image = dark; }
if($genre == old) { $image = old; }
if($genre == goth) { $image = goth; }
if($genre == gr) { $image = gr; }
if($genre == rock) { $image = rock; }
if($genre == punk) { $image = punk; }
if($genre == ander) { $image = ander; }
if($genre == algem) { $image = algem; }
$row = mysql_fetch_array($res);
echo "<div class=\"tekst\"><img src=\"templatepics/news/$image.gif\" height=\"11\" width=\"42\" border=\"0\"> <b>" . $row['titel'] . "</b></div>";
echo "<hr width=\"585\" size=\"2\" color=\"#$hrcolor\" align=\"left\">";
echo "<div class=\"teksts\">Gepost op" . $row['datum'] . "door <a href=\"./member/profiel.php?mid=". $row['datum'] ."\">" . $row['auteur'] . "</a></div>";
echo "<div class=\"tekst\">" . $row['bericht'] . "</div>"; ?>