php+mysql的留言板(仅实现功能)

database

php+mysql的留言板(仅实现功能)
基于上次做好的登录注册界面和sql表,进一步实现用户留言功能。
我的思路:
1.以上次的loginaf.php为基础,添加html代码,再做一个form表单用来传输用户的留言。

<?php
session_start();
 header("Content-type:text/html;charset=utf-8"); 

$link=mysqli_connect("localhost","root","123456","test01");
$name=trim($_POST["username"]);
$password=trim($_POST["password"]);

$sql="select * from user where name="$name"&&passw=$password ";
$result=mysqli_query($link,$sql);
$row=mysqli_fetch_assoc($result);

if($row!=null){
 echo $name;
 echo ",welcome";
$_SESSION["name"] = $name;
 echo "
<!DOCTYPE html>
<html>
<head>
 <title></title>
</head>
<body>
<form action="liuyan.php" method="post" >

用户留言:<input type="text"  name="ly"/><br>

<input type="submit" name="submit" value="提交" >

 
</form>
</body>
</html>
";}
 else
  echo "sorry";
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
2.用liuyan.php接收留言,并写入数据库。
这里遇到了一个问题,loginaf.php中传输的数据只有留言,如何把留言写到与用户(name)对应的行里呢?要想办法把登录界面(login.html)里传来的name值也传到当前界面才行。我本来想找form表单想多个php文件传值的办法,结果发现找到也不会用,最后无奈直接把loginaf.php里的name变量设为session,在当前界面直接拿来用了。。。(第4行)

<?php
session_start();
 header("Content-type:text/html;charset=utf-8"); 
$name=$_SESSION["name"];
$liuyan=trim($_POST["ly"]);
$link=mysqli_connect("localhost","root","123456","test01");
$sql1="UPDATE user SET liuyan = "$liuyan" WHERE name = "$name" ";
$result=mysqli_query($link,$sql1);
echo "留言成功"; 郑州男科医院哪家好:http://www.zztjnk.com/郑州看男科医院那里好:http://www.zztjnk.com/郑州医院做男科检查多少钱:http://www.zztjnk.com/
header("Refresh:2;url=liuyanaf.php");
1
2
3
4
5
6
7
8
9
10
3.最后是所有用户留言的展示,与之前的登录注册等界面没有什么联系,只要连接数据库就可以了。我的思路是在php端验证liuyan字段是否为空,不为空则输出该行的name和liuyan字段。但是不管我用以下哪种方法,返回的结果都为null(也就是所有liuyan字段都不为空)

select name,liuyan from user where liuyan!=null;

select name,liuyan from user where liuyan!=‘null’;

所以说这里我想要的null其实就是空格,最后这样解决:

select name,liuyan from user where liuyan!=’ ";

<?php
 header("Content-type:text/html;charset=utf-8"); 
$link=mysqli_connect("localhost","root","123456","test01");
$sql="select name,liuyan from user where liuyan!=" ";";
$result=mysqli_query($link,$sql);
while($row=mysqli_fetch_assoc($result))
{
 echo "$row[name]说:$row[liuyan]<br>";
}
1
2
3
4
5
6
7
8
9
新增的代码实际上就只有两个php文件和一些form表单的改动,大量时间都用在了测试怎么各板块间如何传值上,还是有所收获的。

下面演示:


留言

over.
 

以上是 php+mysql的留言板(仅实现功能) 的全部内容, 来源链接: utcz.com/z/533118.html

回到顶部