Nybörjarfrågor är väl roliga? =)
Tänkte ha en meny, som skapas dynamiskt av en användare som loggar in via ett adminsystem och där själv skapar grupper o undergrupper. Jag skapar en tabell (Grupper) i databasen med t ex grupp och undergrupp som 2 fält.
Hur trollar jag sedan enklast ihop koden för att skriva ut det såhär på sidan?
Grupp1
Undergrupp1
Undergrupp2
Grupp2
Undergrupp1
Undergruipp2
MatteMedlem sedan aug. 20002 975 inlägg Ska kika o testa lite =)
Tack för hjälpen...jag som trodde jag sökt igenom forumen här, men ack vad jag bedrog mig....*le lite*...
Testat lite hit o dit...
Vad kan strula här? Inga felmeddelanden o inget som skrivs ut.
<?
require("./dblib.php");
?>
<html>
<head>
<TITLE>TREEMENY-TEST</TITLE>
<BODY>
<?
function print_tree ($topID, &$kat, $step, $trace_route)
{
foreach ($kat[$topID] as $key => $value)
{
echo $step .': '. $key .' <a href="'. $value[1] .'">'. $value[0] .'</a><br>';
if (in_array ($key, $trace_route) AND count ($kat[$key]))
{
print_tree ($key, $kat, $step+1, $trace_route);
}
}
}
$SQLresult = mysql_query ('SELECT CatID, CatName, CatParent, CatUrl FROM Cat ORDER BY CatName') or die (mysql_error());
while ($row = mysql_fetch_row ($SQLresult))
{
$kat[$row[2]][$row[0]] = array ($row[1], $row[3]);
$trace[$row[0]] = $row[2];
}
unset ($trace_route);
settype ($trace_route, 'array');
if ($_GET['id'] > 0)
{
$start = $_GET['id'];
$trace_route[] = $start;
while ($trace[$start] != 0)
{
$start = $trace[$start];
$trace_route[] = $start;
}
}
if (count ($kat[0]))
{
print_tree (0, $kat, 0, $trace_route);
}
?>
</BODY>
</HTML>
bzktMedlem sedan juli 200431 inlägg Indentering tack. Och använd [ PHP] kod [ /PHP] (utan mellanslagen)
MatteMedlem sedan aug. 20002 975 inlägg Vad är det meningen att du ska få ut ?
Jag får ut saker.
Får t.ex. ut följande när id är 0 (noll) eller saknas:
(endast huvudkategorier)
0: 1 Kategori 1
0: 2 Kategori 2
0: 7 Kategori 7
När id är 1 visas underkategorier till 1:
(5 är underkategori till 1)
0: 1 Kategori 1
1: 5 Kategori 5
0: 2 Kategori 2
0: 7 Kategori 7
När id är 2 visas underkategorier till 2:
(3 och 4 är underkategorier till 2)
0: 1 Kategori 1
0: 2 Kategori 2
1: 3 Kategori 3
1: 4 Kategori 4
0: 7 Kategori 7
Kan det vara så att det har blivit något strul när du sparade dina kategorier.
Hade hoppats få ut en liten fin meny...från databasen...
Rubrik1
Undermeny1
Undermeny2
Rubrik2
Undermeny1
Undermeny2
..osv..
Men antar jag har druckit alldeles för lite kaffe för att ägna mig åt sånt nu kanske...*mutter mutter*...
Ska kika lite o se om jag hittar fel o brister =)
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /Library/WebServer/Documents/Hem/p/ptest/treemenu/view.php on line 11
Några förslag? Rättstavat í databas...
<?php
$kategoriquery = mysql_db_query($dbname, "SELECT DISTINCT kategori FROM menu ORDER BY kategori ASC", $dbopen);
while ($kategori = mysql_fetch_array($kategoriquery)){
echo "<span class=\"kategori\">",$kategori[kategori],"</span><br/>\n";
$titelquery = mysql_db_query($dbname, "SELECT * FROM menu where kategori='$kategori[kategori]' ORDER BY titel ASC", $dbopen);
while ($titel = mysql_fetch_array($titelquery)){
echo " <a class=\"titel\" href=\"$titel[link]\">$titel[titel]</a></span><br/>\n";
}
}
?>