本文介紹了一款無刷新的新聞留言系統,最簡明易懂的一個ajax無刷新留言系統,源碼中省略了接受數據驗證的過程,大家可根據自己的需求進行擴展,下面進入主題。
核心源碼:
1.配置文件:config.php,代碼如下:
<?php //數據庫配置信息(用戶名,密碼,數據庫名,表前綴等) $cfg_dbhost = "localhost"; $cfg_dbuser = "root"; $cfg_dbpwd = "root"; $cfg_dbname = "ajaxdemo1"; $cfg_dbprefix = ""; $link = mysql_connect($cfg_dbhost,$cfg_dbuser,$cfg_dbpwd); mysql_select_db($cfg_dbname); mysql_query("set names utf8"); ?>
2.處理請求:deal.php,代碼如下:
<?php header("Content-type:text/html;charset=utf-8"); include "config.php"; //post接收數據,只是演示效果,這裡就省去驗證了 $name = $_POST['name']; $content = $_POST['content']; $sql = "insert into test (name,content) values ('{$name}','{$content}');"; $res = mysql_query($sql,$link); if($res){ echo '{"name": "'.$name.'","content": "'.$content.'","status": "1"}'; } ?>
3.首頁代碼:index.php,代碼如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>無刷新</title> <link href="css/css.css" type="text/css" rel="stylesheet" /> <style type="text/css"> body{color:#555;font-size:14px;padding:0;margin:0;} #form { background:#dedede; padding:10px 20px; width:300px;} #show{ background:#f6f6f6;padding:10px 20px; width:300px;} #show p{ margin:6px; font-size:13px; line-height:22px; border-bottom:1px dashed #cdcdcd;} </style> <script type="text/javascript" src="jquery-1.7.2.min.js"></script> <script type="text/javascript"> $(function(){ $("#sub").click(function(){ //只是說明原理,然後這裡省去了驗證文本框內容的步驟,直接發送ajax請求 $.post("deal.php",{name : $("#name").val(), content : $("#content").val()}, function(data){ if(data.status){ var str = "<p><strong>"+data.name+"</strong> 發表了:"+data.content+"</p>"; $("#show").prepend(str); //在前面追加 }else{ alert("評論失敗"); } }, 'json'); }); }); </script> </head> <body> <div id="form"> <form action="deal.php" method="get" id="suggest_form"> 用戶名:<input type="text" name="name" id="name" /><br/> 內 容:<textarea name="content" id="content"></textarea> <input type="button" value="發布" id="sub" /> </form> </div> <div id="show"> <?php include "config.php"; $sql = "select * from test;"; $res = mysql_query($sql,$link); while($row=mysql_fetch_array($res)){ echo "<p><strong>".$row['name']."</strong> 發表了:".$row['content']."</p>"; } ?> </div> </body> </html>
數據庫文件,代碼如下:
DROP TABLE IF EXISTS `test`; CREATE TABLE `test` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `name` varchar(64) NOT NULL, `content` text NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
以上就是為大家分享的php+ajax實現無刷新的新聞留言系統,希望對大家的學習有所幫助。