이 글에서는 가장 간결하고 이해하기 쉬운 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로 구현한 내용입니다. 모든 분들의 학습에 도움이 되기를 바랍니다.