从这周开始学习PHP,老师叫我们做一个简单的留言板,这是我遇到的第一个问题
问题:当我提交一次留言后,参数就被记录在receive.php页面的地址栏里了,所以,如果刷新receive.php页面的话就会把先前提交的那个信息又显示一遍
解决:
法1,表单数据提交后即进行页面跳转:
具体如下:
数据库文件:
1
create
table
form(
2 name char ( 50 ) not null
3 );
2 name char ( 50 ) not null
3 );
表单文件一form.php
1
<
form action
=
"
form_handle.php
"
method
=
"
post
"
>
2 < input type = " name " name = " name " />< input type = " submit " value = " submit " >
3 </ form >
2 < input type = " name " name = " name " />< input type = " submit " value = " submit " >
3 </ form >
表单处理文件:form_handle.php
1
<?
php
2 if ( isset ( $_POST [ ' name ' ])){
3 $link = mysql_connect ( ' localhost ' , ' root ' , '' );
4 mysql_select_db ( ' test ' );
5 mysql_query ( " insert into form(name) values('{ $_POST ['name']}') " );
6 mysql_close ( $link );
7
8 }
9
10 header ( ' Location:form.php ' );
11
12 ?>
2 if ( isset ( $_POST [ ' name ' ])){
3 $link = mysql_connect ( ' localhost ' , ' root ' , '' );
4 mysql_select_db ( ' test ' );
5 mysql_query ( " insert into form(name) values('{ $_POST ['name']}') " );
6 mysql_close ( $link );
7
8 }
9
10 header ( ' Location:form.php ' );
11
12 ?>
另外可以做成,表单提交成功后,跳转到一个提示页,这个提示页几秒钟后自己跳转到另外一个页面。很多网站是这样做的,呵呵!,
当然这只是解决问题的一种方法,还有很多其它方法。