求mysql语句,一个页面调用多表

来源:百度知道 编辑:UC知道 时间:2024/05/31 20:13:04
我safe数据库有两个新闻表,一个是国内新闻表,另外一个是国外新闻表,字段设置的都一样,然后做了三个页面,一个是显示国内新闻表标题的,另一个是显示国外新闻表标题的,还有一个是显示新闻内容的,问题来了,当我在国内新闻标题页面里随便点一个标题,显示的内容却是国外新闻的内容~~
请问一个页面怎么被两个表给调用~~
sql语句该怎么写,我是这么写的$sql=mysql_query("select * from gjfl,gjbz where gjfl.did='$id'or gjbz.did='$id'")..可出现了上面的错误...麻烦朋友帮帮忙啊

首先你的数据库设计不合理,国内、国外新闻应该放在一个表里面,增加一个字段来标识国内和国外,那样你的程序会非常简单。

如果不改变你现在的数据库,那么调用新的页面必须要增加一个参数,表示调用的国内还是国外,sql里面根据这个参数设置不同的表,例如:
if ($lb=='国内') $str="select * from gjfl where did='$id'";
else $str="select * from gjbz where did='$id'";
$sql=mysql_query($str);