老友記之PHP7留言板開發(fā)(步驟二)

本步驟綱目:
1捻悯、超全局變量$_GET $_POST
2巫糙、MYSQL數(shù)據(jù)庫(kù)設(shè)計(jì)
3截歉、mysqli相關(guān)數(shù)據(jù)庫(kù)操作摇肌,連接及增刪改查(select insert delete update)操作


下面進(jìn)入正題:

  • 1无午、超全局變量$_GET $_POST
    概念性的東西這里不闡述媒役,正如字面上的意思一樣,get的意思是用戶是從提交方式為get的form表單提交過(guò)來(lái)的(form中屬性是method="get")宪迟,如果是post就是提交方式為post酣衷,唯一的區(qū)別是post比get安全,而且提交的內(nèi)容更多次泽。留言板提交方式建議一定是post
// 獲取姓名
$name = $_GET['name'];
$name = $_POST['name'];

// 獲取聯(lián)系方式
$contact= $_GET['contact'];
$contact= $_POST['contact'];

// 獲取留言內(nèi)容穿仪,這里如果提交的內(nèi)容比較多,超過(guò)瀏覽器url長(zhǎng)度限制會(huì)報(bào)錯(cuò)意荤,所以還是建議用post方式
$content= $_GET['content'];
$content= $_POST['content'];
  • 2啊片、MYSQL數(shù)據(jù)庫(kù)設(shè)計(jì)
--
-- 表的結(jié)構(gòu) `feedback`
--

CREATE TABLE `feedback` (
  `id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT,
  `name` varchar(100) NOT NULL COMMENT '姓名',
  `contact` varchar(100) NOT NULL COMMENT '聯(lián)系方式',
  `content` text NOT NULL COMMENT '留言內(nèi)容',
  `addtime` int(10) UNSIGNED NOT NULL DEFAULT '0' COMMENT '記錄時(shí)間',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='留言板數(shù)據(jù)表';

查找記錄操作:

// localhost數(shù)據(jù)庫(kù)地址,本地?cái)?shù)據(jù)庫(kù)一般都是這個(gè)或者127.0.0.1玖像;php_course是數(shù)據(jù)表紫谷,即用戶提交留言信息保存的數(shù)據(jù)表
$mysqli = mysqli_connect('localhost', '數(shù)據(jù)庫(kù)賬號(hào)', '數(shù)據(jù)庫(kù)密碼', 'php_course');
if(mysqli_connect_errno()){
    echo '連接數(shù)據(jù)庫(kù)失敗:'.mysqli_connect_error();
    exit;
}
mysqli_query($mysqli, "SET NAMES UTF8"); // 因?yàn)槲募幋a是utf8捐寥,所以數(shù)據(jù)記錄集也需要設(shè)置utf8編碼笤昨,否否則查詢出來(lái)的結(jié)果會(huì)亂碼
$sql = "SELECT * FROM feedback"; // 查詢sql語(yǔ)句
$result = mysqli_query($mysqli, $sql); // 執(zhí)行語(yǔ)句
$rows_num = mysqli_affected_rows($mysqli); // 返回記錄數(shù),只是一個(gè)統(tǒng)計(jì)握恳,可以不用
echo $rows_num;
// 開始遍歷記錄集瞒窒,循環(huán)獲取所有feedback表中的所有記錄并賦值到$all_row
$all_row = array();
while($rows = mysqli_fetch_array($result)){
    print_r($rows);
    $all_row[] = $rows;
}
// $all_row就是feedback的所有結(jié)果集
print_r($all_row);

記錄入庫(kù)操作:

$mysqli = mysqli_connect('localhost', 'root', '', 'php_course');
if(mysqli_connect_errno()){
    echo '連接數(shù)據(jù)庫(kù)失敗:'.mysqli_connect_error();
    exit;
}
mysqli_query($mysqli, "SET NAMES UTF8");
$sql = 'INSERT INTO feedback (name, contact, content, addtime) VALUES ("測(cè)試", "qq1000", "留言內(nèi)容", '.$time.')';
$result = mysqli_query($mysqli, $sql);
$insert_id = mysqli_insert_id($mysqli); // 返回?cái)?shù)據(jù)表的自增長(zhǎng)ID乡洼,比如新用戶注冊(cè)返回用戶ID
echo $insert_id; // 當(dāng)你在調(diào)試的時(shí)候崇裁,你會(huì)發(fā)現(xiàn)echo是很好的幫手匕坯。
if($insert_id > 0){
    // 如果入庫(kù)成功,可以做什么
}

修改和更新:

// 修改更新
// 修改之前需要根據(jù)id查找記錄是否存在寇壳,如果存在則可以修改(這種情況很常用醒颖,比如用戶后臺(tái),除了驗(yàn)證用戶是否登錄還需要驗(yàn)證當(dāng)前修改的記錄是否屬于當(dāng)前用戶)
$mysqli = mysqli_connect('localhost', 'root', '', 'php_course');
if(mysqli_connect_errno()){
    echo '連接數(shù)據(jù)庫(kù)失斂茄住:'.mysqli_connect_error();
    exit;
}
$sql = "SELECT * FROM feedback WHERE id = 3";
$result = mysqli_query($mysqli, $sql); // 返回一個(gè)資源標(biāo)識(shí)符泞歉,通常是數(shù)字
$row = mysqli_fetch_array($result);
if(!empty($row)){
    // 執(zhí)行更新操作
    $update_sql = "UPDATE feedback SET name='修改后的名字' WHERE id={$row['id']}";
    if(FALSE !== mysqli_query($mysqli, $update_sql)){
        // 修改成功
    }
}else{
    echo '信息不能再或者不屬于你的。';
    exit();
}

刪除操作:

// 刪除操作
// 跟修改更新同樣匿辩,刪除之前需要判斷當(dāng)前刪除的記錄是否存在(如果還有圖片附件腰耙,需要先刪除附件再刪除記錄)
$mysqli = mysqli_connect('localhost', 'root', '', 'php_course');
if(mysqli_connect_errno()){
    echo '連接數(shù)據(jù)庫(kù)失敗:'.mysqli_connect_error();
    exit;
}
$sql = "DELETE FROM feedback WHERE id = 3";
$result = mysqli_query($mysqli, $sql); // 返回一個(gè)資源標(biāo)識(shí)符铲球,通常是數(shù)字
if(FALSE !== $result){
    // 刪除成功
}

本節(jié)主要是php+mysql操作挺庞,sql語(yǔ)句相對(duì)使用比較頻繁,但無(wú)非就那幾個(gè)語(yǔ)法稼病,也是我們今后常用的选侨。

  • 1、select 查找記錄
  • 2然走、insert into 插入數(shù)據(jù)
  • 3援制、update 修改數(shù)據(jù)
  • 4、delete 刪除數(shù)據(jù)(這個(gè)是硬刪除芍瑞,永久刪除晨仑,通常是找不回來(lái)的,還有一種是軟刪除拆檬,今后會(huì)講到)

同學(xué)記得勤加練習(xí)洪己,熟記這幾個(gè)操作才能掌握。如在學(xué)習(xí)過(guò)程中遇到問(wèn)題竟贯,在下方評(píng)論區(qū)隨時(shí)可以討論答捕。
好了,這節(jié)就到這里屑那。下一節(jié)我們梳理一下代碼噪珊,讓代碼更有可讀性。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末齐莲,一起剝皮案震驚了整個(gè)濱河市痢站,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌选酗,老刑警劉巖阵难,帶你破解...
    沈念sama閱讀 219,539評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異芒填,居然都是意外死亡呜叫,警方通過(guò)查閱死者的電腦和手機(jī)空繁,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,594評(píng)論 3 396
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)朱庆,“玉大人盛泡,你說(shuō)我怎么就攤上這事∮榧眨” “怎么了傲诵?”我有些...
    開封第一講書人閱讀 165,871評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)箱硕。 經(jīng)常有香客問(wèn)我拴竹,道長(zhǎng),這世上最難降的妖魔是什么剧罩? 我笑而不...
    開封第一講書人閱讀 58,963評(píng)論 1 295
  • 正文 為了忘掉前任栓拜,我火速辦了婚禮,結(jié)果婚禮上惠昔,老公的妹妹穿的比我還像新娘幕与。我一直安慰自己,他們只是感情好镇防,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,984評(píng)論 6 393
  • 文/花漫 我一把揭開白布纽门。 她就那樣靜靜地躺著,像睡著了一般营罢。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上饼齿,一...
    開封第一講書人閱讀 51,763評(píng)論 1 307
  • 那天饲漾,我揣著相機(jī)與錄音,去河邊找鬼缕溉。 笑死考传,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的证鸥。 我是一名探鬼主播僚楞,決...
    沈念sama閱讀 40,468評(píng)論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼枉层!你這毒婦竟也來(lái)了泉褐?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,357評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤鸟蜡,失蹤者是張志新(化名)和其女友劉穎膜赃,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體揉忘,經(jīng)...
    沈念sama閱讀 45,850評(píng)論 1 317
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡跳座,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,002評(píng)論 3 338
  • 正文 我和宋清朗相戀三年端铛,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片疲眷。...
    茶點(diǎn)故事閱讀 40,144評(píng)論 1 351
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡禾蚕,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出狂丝,到底是詐尸還是另有隱情换淆,我是刑警寧澤,帶...
    沈念sama閱讀 35,823評(píng)論 5 346
  • 正文 年R本政府宣布美侦,位于F島的核電站产舞,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏菠剩。R本人自食惡果不足惜易猫,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,483評(píng)論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望具壮。 院中可真熱鬧准颓,春花似錦、人聲如沸棺妓。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,026評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)怜跑。三九已至样勃,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間性芬,已是汗流浹背峡眶。 一陣腳步聲響...
    開封第一講書人閱讀 33,150評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留植锉,地道東北人辫樱。 一個(gè)月前我還...
    沈念sama閱讀 48,415評(píng)論 3 373
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像俊庇,于是被迫代替她去往敵國(guó)和親狮暑。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,092評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容