日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

php表单数据提交到本业,PHP_PHP+Mysql+jQuery实现发布微博程序 php篇,先还是要说明本例的业务流程 - phpStudy...

發布時間:2025/3/20 数据库 57 豆豆
生活随笔 收集整理的這篇文章主要介紹了 php表单数据提交到本业,PHP_PHP+Mysql+jQuery实现发布微博程序 php篇,先还是要说明本例的业务流程 - phpStudy... 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

PHP+Mysql+jQuery實現發布微博程序 php篇

先還是要說明本例的業務流程:

1、前端用戶輸入內容,并對輸入的內容字數進行實時統計。

2、用戶提交數據,jQuery實現通過Ajax向后臺發送數據。

3、后臺PHP接收提交表單的數據,并對數據進行必要的安全過濾。

4、后臺PHP連接Mysql數據庫,并將提交過來的表單數據寫入到相應的數據表中。

5、后臺向返回成功結果數據內容,并通過Ajax將返回的數據內容插入到前端頁面中。

上述1、2步在前篇文章:jQuery篇已講解了,本文將完成剩余的散步。

效果圖:

數據表首先我們要準備一個數據表,表結構如下:

CREATE TABLE `say` (

`id` int(11) NOT NULL auto_increment,

`userid` int(11) NOT NULL default '0',

`content` varchar(200) NOT NULL,

`addtime` int(10) NOT NULL,

PRIMARY KEY (`id`)

) ENGINE=MyISAM DEFAULT CHARSET=utf8;

注意,本例中將時間字段:addtime的類型設置為int,是為了后續的時間處理方便,在很多應用中(如Discuz論壇)都是將時間類型轉成數字型。

時間軸處理函數和格式化輸出列表函數:

時間軸處理函數,就是把時間轉換成我們看到的諸如“5分鐘前”,“昨天 10:21”等形式,代碼如下:

/*時間轉換函數*/

function tranTime($time) {

$rtime = date("m-d H:i",$time);

$htime = date("H:i",$time);

$time = time() - $time;

if ($time < 60) {

$str = '剛剛';

}

elseif ($time < 60 * 60) {

$min = floor($time/60);

$str = $min.'分鐘前';

}

elseif ($time < 60 * 60 * 24) {

$h = floor($time/(60*60));

$str = $h.'小時前 '.$htime;

}

elseif ($time < 60 * 60 * 24 * 3) {

$d = floor($time/(60*60*24));

if($d==1)

$str = '昨天 '.$rtime;

else

$str = '前天 '.$rtime;

}

else {

$str = $rtime;

}

return $str;

}

格式化輸出函數是將得到的用戶信息和發布內容及時間按照一定的格式輸出到前端頁面的函數,代碼如下:

function formatSay($say,$dt,$uid){

$say=htmlspecialchars(stripslashes($say));

return'

alt="demo" />

demo_'.$uid.' '.

preg_replace('/((?:http|https|ftp):\/\/(?:[A-Z0-9][A-Z0-9_-]*(?:\.[A-Z0-9][A-Z0-9_-]*)+):

?(\d+)?\/?[^\s\"\']+)/i','$1',$say).'

'.tranTime($dt).'';

}

將以上兩個函數都放入function.php中,準備隨時被調用。

submit.php處理表單數據在之前文章中,我們知道jQuery將前端獲得的數據以POST方式,通過Ajax提交給了后臺的submit.php。那么submit就是要完成后續的所有一攤子任務。請看代碼:

require_once('connect.php'); //數據庫連接文件

require_once('function.php'); //函數調用文件

$txt=stripslashes($_POST['saytxt']); //獲取提交的數據

$txt=mysql_real_escape_string(strip_tags($txt),$link); //過濾HTML標簽,并轉義特殊字符

if(mb_strlen($txt)<1 || mb_strlen($txt)>140)

die("0"); //判斷輸入字符數是否符合要求

$time=time(); //獲取當前時間

$userid=rand(0,4);

//插入數據到數據表中

$query=mysql_query("insert into say(userid,content,addtime)values('$userid','$txt','$time')");

if(mysql_affected_rows($link)!=1)

die("0");

echo formatSay($txt,$time,$userid); //調用函數輸出結果

注意,本例中為了演示,將用戶ID(userid)進行隨機處理,實際的應用是獲取當前用戶的ID。另外數據庫連接文件,大家可以自己寫一個,在我提供的下載的DEMO里也有這個文件。

最后要回到前端頁面index.php來。index.php主要除了提供輸入的入口,還要承接后臺處理返回的結果,并且要將數據庫里已有的數據顯示出來。代碼如下:

define('INCLUDE_CHECK',1);

require_once('connect.php');

require_once('function.php');

$query=mysql_query("select * from say order by id desc limit 0,10");

while ($row=mysql_fetch_array($query)) {

$sayList.=formatSay($row[content],$row[addtime],$row[userid]);

}

?>

140說說你正在做什么...

以上就是本文的全部內容,希望對大家的學習有所幫助。相關閱讀:

SSH框架網上商城項目第7戰之整合Struts2和Json

js動態生成Html元素實現Post操作(createElement)

jquery 操作css樣式、位置、尺寸方法匯總

js獲取url傳值的方法

Win7無法雙擊打開jar文件怎么辦?Win7不能雙擊打開jar文件的解決方法

jquery實現經典的淡入淡出選項卡效果代碼

C#使用IComparer自定義List類實現排序的方法

C++學生信息管理系統

Win10安裝出現卡死或黑屏怎么辦?Win10安裝卡死或黑屏問題解決方法

JDBC 使用說明(流程、架構、編程)

基于jquery實現復選框全選,反選,全不選等功能

java實現輸入輸出流代碼分享

Mac系統截圖快捷鍵技巧匯總詳細介紹

win10系統怎么設置開機加速?

總結

以上是生活随笔為你收集整理的php表单数据提交到本业,PHP_PHP+Mysql+jQuery实现发布微博程序 php篇,先还是要说明本例的业务流程 - phpStudy...的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。