Jag har suttit och funderat och försökt att göra en länksamling. Med olika kategorier och underkategorier...Men det har inte direkt lyckats något bra. Skulle behöva hjälp med hur tabellen kan se ut och så...?
Hoppas på svar! :h
21 svar · 662 visningar · startad av giik
Jag har suttit och funderat och försökt att göra en länksamling. Med olika kategorier och underkategorier...Men det har inte direkt lyckats något bra. Skulle behöva hjälp med hur tabellen kan se ut och så...?
Hoppas på svar! :h
En idé:
link_categories:
catID
cat_name
cat_description
link_subcategories:
subcatID
subcat_catID
subcat_name
subcat_description
links:
linkID
link_name
link_url
link_description
link_subcatID
link_submitter
Hämta sä här:
<?PHP
$sql = "SELECT * FROM link_categories";
$result = mysql_db_query(din_db,"$sql");
while($row = mysql_fetch_array($result)){
echo $row['cat_title']."<br>";
$sub_sql = "SELECT * FROM link_subcategories WHERE subcat_catID = '".$row['catID']."'";
$sub_result = mysql_db_query(din_db,"$sub_sql");
while($sub_row = mysql_fetch_array($sub_result)){
echo $sub_row['subcat_name']."<br>";
$link_sql = "SELECT * FROM links WHERE link_subcatID = '".$sub_row['subcatID']."'";
$link_result = mysql_db_query(din_db,"$link_sql");
while($link_row = mysql_fetch_array($link_result)){
echo $link_row['link_name']."<br>";
}
}
}
?>
Du får slänga in <a href's där det behövs... men något sånt där borde fungera... har inte testat det än. ;)
EDIT:
Kom på att det kan vara bra om du lägger in lite mellanslag framför $sub_row['sub_name'] och lite fler framför $link_row['link_name']... annars så kommer allt listas rakt ner och det kan bli knepigt att se vad som är en länk och vad som är kategori etc.
Inte för att verka kaxig eller nåt, men behövs de verkligen så pass mycket? Inte för att jag kan komma på nåt bättre men.. ;)
Om du beskriver mer nogrannt hur du tänkt dig din länksamling så är det nog lättare att svara på frågan om ovanstående kodexempel är "overkill". Det som Webslave så vänligt knåpat ihop ör EN ide. Sen finns det fler idéer.
På dindator.nu så byggde jag ett länkarkiv. Där så använder jag en tabell för kategorier och en för länkarna samt en tabell som kopplar länkarna till kategorierna(ifall samma länk skall förekomma på flera ställen).
Jag har på det sättet sett till så att man kan lägga till oändligt(?) antal underkategorier till en kategori. Vi begränsar oss alltså inte till en fast struktur.
Vill du ha mer information i hur man bygger ett sådant system?
Det handlar om rekursion.
* Du skapar en tabell (Categories) med följande kolumner:
CategoryID(autoinc) | ParentID | CategoryTitle
* Du skapar en tabell (Links) med följande kolumner:
LinkID(autoinc) | LinkTitle | LinkUrl
* Du skapar en tabell (RelCategoriesLinks) med följande kolumner:
ReferenceID(autoinc) | CategoryID | LinkID
Nu har du grunden för ett bra länkarkiv.
----
Grundtanken är att du skapar ett antal kategorier. De som är de allra första kategorierna får inget ParentID. Om du däremot skapar en underkategori så skall ParentID vara likamed huvudkategorins CategoryID. Om du skapar en underkategori till underkategorin så skall föregående underkategoris ID ligga i den nya underkategorin. Hänger du med?
---
Det du behöver göra är att bygga en funktion som hämtar alla kategorier där ParentID = [inkommande ID]. Om det inte finns något inkommande ID så är vi ju i toppen :).
---
Hmmm, jag känner att det här inte blir direkt lärorikt... jag förklarar mig lite luddigt. Jag kan dock försäkra dig om att tabellstrukturen är riktigt bra och effektiv. :-D
Ställ frågor så besvarar jag dem så gott jag kan.
Okej, jag förstår.....Får se om det blir något utav det! Nu har jag ju fått grunden av er i alla fall!
Tackar så hjärtligt! h0h0. :D
giik skrev:
Inte för att verka kaxig eller nåt, men behövs de verkligen så pass mycket? Inte för att jag kan komma på nåt bättre men.. ;)
Antagligen inte... men om du vill ha det enkelt så är detta väldigt bra... och så mycket är det inte ;) Men du får vad du ber om... i detta fall inte så mycket
Okej, jag tyckte väl att det verkade lite bökigt att ha 3 tabeller i ett och samma script..tror jag :)
Vill du ha tre olika saker som t.ex:
Huvudkategori
- underkategori
- - Länk
- - Länk
- - Länk
Så blir det absolut enklast att ha tre tabeller... går att ha en säkert men det blir mycket bökigare.
giik: Var inte rädd för många tabeller så länge de helgar ändamålet.
Jag följde era råd och körde med 3 tabeller! Och det var faktiskt inte så bökigt som jag trodde det skulle vara. Dessutom blev länksamlingen kanon!
Måste bara passa på att tacka er för att ni haft sånt tålamod mot en skeptisk person som jag :p
Man ska ifrågasätta allt ;)
Lägg in en länk till länksamlingen när den är klar så jag får se hur det blev
Ja det kanske inte är det snyggaste, men jag är nöjd med det. Lätt använt tycker jag det blev i alla fall..Här kommer länken.
Webslave: bra det. Då kan jag fortsätta ifrågasätta då? :P
Hehe... klart du kan ;)
Såg helt ok ut... kul att det funkar
Det var ju bra :). Då vågar jag nog fråga om ett par problem till som lär dyka upp när jag försöker knåpa :)
Ja jag blev helnöjd med allt ! :e
i Webslaves exempel hur skriver man så url blir en länk ?
har försökt med
echo "<a href=\"$link_row['link_url']\"> $link_row['link_name']. </a><br>";
samt
echo "<a href=$link_row['link_url']> $link_row['link_name']. </a><br>";
men får det inte att fungera men skriver jag
echo $link_row['link_url'];
så skriver den ut url men då blir den ju inte klickbar som en länk
// Micke
Testa med
echo "<a href=\"".$link_row['link_url']."\"> ".$link_row['link_name'].". </a><br>";