ajax自從有了jquery就非常的簡單容易實(shí)現(xiàn)了,下面我來介紹一款基于jquery ajax+php mysql的無刷新的新聞留言系統(tǒng)實(shí)現(xiàn)過程,希望本文章能給您帶來幫助。
最簡明易懂的一個(gè)ajax無刷新留言系統(tǒng)了,源碼中省略了接受數(shù)據(jù)驗(yàn)證的過程。讀者可根據(jù)自己的需求進(jìn)行擴(kuò)展。
核心源碼:
1.配置文件:config.php,代碼如下:
- <?php
- //數(shù)據(jù)庫配置信息(用戶名,密碼,數(shù)據(jù)庫名,表前綴等)
- $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.處理請(qǐng)求:deal.php,代碼如下:
- <?php
- header("Content-type:text/html;charset=utf-8");
- include "config.php";
- //post接收數(shù)據(jù),只是演示效果,這里就省去驗(yàn)證了
- $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(){
- //只是說明原理,然后這里省去了驗(yàn)證文本框內(nèi)容的步驟,直接發(fā)送ajax請(qǐng)求
- $.post("deal.php",{name : $("#name").val(), content : $("#content").val()}, function(data){
- if(data.status){
- var str = "<p><strong>"+data.name+"</strong> 發(fā)表了:"+data.content+"</p>";
- $("#show").prepend(str); //在前面追加
- }else{
- alert("評(píng)論失敗");
- }
- }, 'json');
- });
- });
- </script>
- </head>
- <body>
- <div id="form">
- <form action="deal.php" method="get" id="suggest_form">
- 用戶名:<input type="text" name="name" id="name" /><br/>
- 內(nèi) 容:<textarea name="content" id="content"></textarea>
- <input type="button" value="發(fā)布" 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> 發(fā)表了:".$row['content']."</p>";
- }
- ?>
- </div>
- </body>
- </html>
數(shù)據(jù)庫文件,代碼如下:
- 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;
新聞熱點(diǎn)
疑難解答