接上文
修改以下内容
将查询的 uid 改为 username,同时在 user 和 message 两张表中查询
$sql = "select m.id,u.username,m.title,m.content from user u,message m where u.id=m.uid;"
根据 message 中的 id 查询,形式为
http://127.0.0.1/mysql.php?id=
$id=$_REQUEST['id'];
$sql = "select m.id,u.username,m.title,m.content from user u,message m where u.id=m.uid and m.id={$id} ;";
为防止出现未传 id 是报错,可为 $id
设置默认值
$id=isset($_REQUEST['id'])?$_REQUEST['id']:1;
// 如果获取了上传的参数即使用获取的参数,否则 $id 默认为 1
$sql = "select m.id,u.username,m.title,m.content from user u,message m where u.id=m.uid and m.id={$id} ;";
源码
<?php$db_host="127.0.0.1"; //或 localhost$de_user="root";$db_pass="root";$db_name="bbs";$link = @mysqli_connect($db_host,$de_user,$db_pass,$db_name);// 防止报错加 @if(!$link){$failed = "[".mysqli_connect_errno()."]".mysqli_connect_error();exit($failed);//连接失败直接报错退出,不执行后续代码}else{$id=isset($_REQUEST['id'])?$_REQUEST['id']:1;// 如果获取了上传的参数即使用获取的参数,否则 $id 默认为 1$sql = "select m.id,u.username,m.title,m.content from user u,message m where u.id=m.uid and m.id={$id} ;";// 定义数据库查询语句$results = mysqli_query($link,$sql);// 返回结果对象集if(!$results){// 如果获取失败echo "[".mysqli_errno($link)."]".mysqli_error($link);}echo"<table border=1>";echo"<tr><td>id</td><td>name</td><td>title</td><td>content</td></tr>";// 每条数据包含 id、uid、title、content 四项while($result = mysqli_fetch_assoc($results)){// 在查询的对象集中依次提取每条数echo "<tr>";// 每次循环(每条留言)建立一行foreach($result as $key => $value){echo "<td>";echo $value;echo "</td>";}echo "</tr>";}echo"</table>";}mysqli_close($link);?>
未传参效果
传参效果