学生:
SELECT FROM student t1,category t2 WHERE t1.studentid = category.catid教师:
SELECT FROM teacher t1,category t2 WHERE t1.teacherid = category.catid我不太明白你的意思~~应该是这样啊~~

解决方案 »

  1.   

    mysql没有外键,你这样分数据表有问题也没有必要,用表名不就已经区分种类了吗?何必再浪费一个表来区分,如果你是用category内的catname来表示表明的话还稍有道理,php如下:
    <?
    $sql = "SELECT * FROM category";
    $res = mysql_db_query($dbname, $sql);
     while($myarray=mysql_fetch_array($res))
    {?><a href="brower.php?tablename=<?=$myarray[catname];?>"><?=$myarray[catname];?></a><br/>
    <?}?>brower.php:<?
    $sql = "SELECT * FROM $tablename";
    $res = mysql_db_query($dbname, $sql);
     while($myarray=mysql_fetch_row($res))
    {?>
    <?=$myarray[1];?>
    <?=$myarray[2];?>
    <?=$myarray[3];?><?}?>事实上因为你student,teacher两个表的定义很不同,这样做不好,劝你去掉category表,然后通过tablename判断哪个表然后不同情况的做