merhaba,
kategoriye göre alt kategori,alt kategoriye görede yazı başlığını gösteren kod.
SQL :
-- phpMyAdmin SQL Dump
-- version 2.6.3-pl1
-- http://www.phpmyadmin.net
-- 
-- Sunucu: localhost
-- Çıktı Tarihi: Temmuz 18, 2006 at 08:47 PM
-- Server sürümü: 4.1.14
-- PHP Sürümü: 5.0.4
-- 
-- Veritabanı: `antonius`
-- 

-- --------------------------------------------------------

-- 
-- Tablo yapısı : `altkategori`
-- 

CREATE TABLE `altkategori` (
  `altkno` smallint(6) NOT NULL auto_increment,
  `kategori` smallint(6) NOT NULL default '0',
  `altkbaslik` varchar(50) NOT NULL default '',
  PRIMARY KEY  (`altkno`)
) ENGINE=MyISAM DEFAULT CHARSET=latin5 AUTO_INCREMENT=5 ;

-- 
-- Tablo döküm verisi `altkategori`
-- 

INSERT INTO `altkategori` VALUES (1, 1, 'Beden sağlığı');
INSERT INTO `altkategori` VALUES (2, 2, 'Futbol');
INSERT INTO `altkategori` VALUES (3, 3, 'Borsa');
INSERT INTO `altkategori` VALUES (4, 4, 'Güncel Siyaset');

-- --------------------------------------------------------

-- 
-- Tablo yapısı : `kategori`
-- 

CREATE TABLE `kategori` (
  `katno` smallint(6) NOT NULL auto_increment,
  `katbaslik` varchar(50) NOT NULL default '',
  PRIMARY KEY  (`katno`)
) ENGINE=MyISAM DEFAULT CHARSET=latin5 AUTO_INCREMENT=5 ;

-- 
-- Tablo döküm verisi `kategori`
-- 

INSERT INTO `kategori` VALUES (1, 'Sağlık');
INSERT INTO `kategori` VALUES (2, 'Spor');
INSERT INTO `kategori` VALUES (3, 'Ekonomi');
INSERT INTO `kategori` VALUES (4, 'Güncel');

-- --------------------------------------------------------

-- 
-- Tablo yapısı : `yazi`
-- 

CREATE TABLE `yazi` (
  `yno` smallint(6) NOT NULL auto_increment,
  `altkno` smallint(6) NOT NULL default '0',
  `ybaslik` varchar(50) NOT NULL default '',
  `yazi` text NOT NULL,
  PRIMARY KEY  (`yno`)
) ENGINE=MyISAM DEFAULT CHARSET=latin5 AUTO_INCREMENT=5 ;

-- 
-- Tablo döküm verisi `yazi`
-- 

INSERT INTO `yazi` VALUES (1, 1, 'Göz Sağlığı', 'Göz sağlığına dikkat edelim');
INSERT INTO `yazi` VALUES (2, 2, 'Futbolda bu hafta', 'futbolu da hiç sevmem');
INSERT INTO `yazi` VALUES (3, 3, 'Borsa durgun', 'borsa baya bir durgun');
INSERT INTO `yazi` VALUES (4, 4, 'Siyasi kulisler', 'kulislerde konuşuluyor falan');
config.php
<?php

    $baglanti=@mysql_connect('localhost','root','');
    if(!$baglanti) {
        echo "Baglantida bir hata olustu 1";
        exit();
    
    }
    
    if(!@mysql_select_db('site',$baglanti)){
        echo "Baglantida bir hata olustu 2";
        exit();
    }
?>
index.php
<?php
include("config.php");
$sorgu = mysql_query("select katno, katbaslik from kategori order by katbaslik");
while($bilgi = mysql_fetch_array($sorgu)) {
echo "<a href=\"altk.php?katno=".$bilgi['katno']."\">" . $bilgi['katbaslik'] . "</a><br>";
}
?>
altk.php
<?php
include("config.php");
$sorgu = mysql_query("SELECT altkno, altkbaslik FROM altkategori WHERE kategori = '" . $_GET['katno'] . "'");
while($bilgi = mysql_fetch_array($sorgu)) 
{
echo "<a href=\"yazi.php?altkno=".$bilgi['altkno']."\">" . $bilgi['altkbaslik'] . "</a><br>";
}
?>
yazi.php
<?php
include("config.php");
$sql = mysql_query("select * from yazi where altkno='" . $_GET['altkno'] . "'");
while($bilgi = mysql_fetch_array($sql)) {
echo "$bilgi[ybaslik]<hr>";
echo "$bilgi[yazi]";
}
?>