原生php登錄注冊,原生php登陸注冊

本以為一個登陸注冊功能十來分鐘就寫好了,沒想到thinkPHP用久了,原生的php不會寫了

最開始我直接寫了類和方法,在前臺傳遞參數給類的login方法(action="index.php/login"),嘗試幾次發現無法訪問,這才意識到,這種方式是mvc模式,原生php不具有

然后,把登陸注冊的php代碼沒有寫類和方法直接放到對應的php文件里,前端放在相應的HTML文件里(還是習慣HTML 和php分開來寫)

這時候action直接填對應的文件就好了,具體代碼如下

login.php

$un = $_POST[‘username‘];

$pd = $_POST[‘password‘];

$mysqli = new mysqli(‘localhost‘, ‘root‘, ‘‘, ‘java‘);

$result = $mysqli->query("SELECT password FROM user WHERE username = "."‘$un‘");//第一個容易出錯的地方

$rs=$result->fetch_row();//第二個容易出錯的地方

if ($rs!==null) {

if ($pd != $rs[0]) {

$arr = array(‘status‘ => 2, ‘b‘ => ‘密碼錯誤‘);

echo json_encode($arr);

}

else {

$arr = array(‘status‘ => 1, ‘b‘ => ‘success‘);

echo json_encode($arr);

}

}

else{

$arr = array(‘status‘ => 0, ‘b‘ => ‘沒有此用戶‘);

echo json_encode($arr);

}

?>

register.php

$un = $_POST[‘username‘];

$pd = $_POST[‘password‘];

$pd2 = $_POST[‘password2‘];

$mysqli = new mysqli(‘localhost‘, ‘root‘, ‘‘, ‘java‘);

$result = $mysqli->query("SELECT password FROM user WHERE username = "."‘$un‘");

$rs=$result->fetch_row();

if ($pd != $pd2) {

$arr = array(‘status‘ => 2, ‘b‘ => ‘兩次輸入密碼不一致‘);

echo json_encode($arr);

}

elseif($rs!=null){

$arr = array(‘status‘ => 3, ‘b‘ => ‘用戶已存在‘);

echo json_encode($arr);

}

else {

$mysqli = new mysqli(‘localhost‘, ‘root‘, ‘‘, ‘java‘);

$sql = "INSERT INTO user (username,password) VALUES (‘$_POST[username]‘, ‘$_POST[password]‘)";

$rs = $mysqli->query($sql);

if (!$rs) {

$arr = array(‘status‘ => 0, ‘b‘ => ‘falied‘);//插入失敗

echo json_encode($arr);

}

else {

$arr = array(‘status‘ => 1, ‘b‘ => ‘success‘);//插入成功

echo json_encode($arr);

}

}

?>

第一處容易出錯的地方 因為傳入的un變量替換成字符串之后也是要加引號,所以應該加兩個

第二處 要熟悉連接數據庫的面向對象的各種輸出函數的用法,mysqli->query返回的是一個對象

對于數據庫處理這一部分 看的太不仔細了,一定要在看一遍,跟著敲一遍

原文:http://www.cnblogs.com/tobemaster/p/5339756.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/260189.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/260189.shtml
英文地址,請注明出處:http://en.pswp.cn/news/260189.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

SpringMVC REST 風格靜態資源訪問配置

1 在web.xml中使用默認servlet處理靜態資源&#xff0c;缺點是如果靜態資源過多&#xff0c;則配置量會比較大&#xff0c;一旦有遺漏&#xff0c;則會造成資源無法正常顯示或404錯誤。 <!-- 靜態資源訪問控制 --><servlet-mapping><servlet-name>default<…

生成對象

var c[name,age,city]; var d[xiaogang,12,anhui]; var a{}; for(var i0;i<3;i){a[c[i]]d[i]; } console.log(a); //返回 {name: "xiaogang", age: "12", city: "anhui"} 轉載于:https://www.cnblogs.com/xiaozhumaopao/p/6046823.html

3.寄存器(內存訪問)

CPU中&#xff0c;用16位來存儲一個字。高8位存放高位字節&#xff0c;低8位存放低位字節。內存存儲中&#xff0c;內存單元是字節單元&#xff08;1單元1字節&#xff09;&#xff0c;則一個字要用兩個地址連續的內存單元存放。內存存儲中&#xff0c;高位字節&#xff0c;和低…

shiro前后端分離_為什么要前后端分離?前后端分離的優點是什么?

隨著互聯網的高速發展以及IT開發技術的升級&#xff0c;前后端分離已成為互聯網項目開發的業界標準使用方式。在實際工作中&#xff0c;前后端的接口聯調對接工作量占HTML5大前端人員日常工作的30%-50%&#xff0c;甚至會更高。接下來千鋒小編分享的廣州HTML5大前端學習就給大家…

POJ 2152 Fire

算是我的第一個樹形DP 的題&#xff1a; 題目意思&#xff1a;N個城市形成樹狀結構。現在建立一些消防站在某些城市&#xff1b;每個城市有兩個樹形cost&#xff08;在這個城市建立消防站的花費&#xff09;&#xff0c;limit &#xff1b; 我們要是每個城鎮都是安全的&#xf…

php 解析HTTP協議六種請求方法,get,head,put,delete,post有什么區別

GET&#xff1a; 請求指定的頁面信息&#xff0c;并返回實體主體。HEAD&#xff1a; 只請求頁面的首部。POST&#xff1a; 請求服務器接受所指定的文檔作為對所標識的URI的新的從屬實體。PUT&#xff1a; 從客戶端向服務器傳送的數據取代指定的文檔的內容。DELETE&#xff1a; …

python的socket連接不上_Python套接字只允許一個連接,但在新的連接上斷開,而不是拒絕...

我不確定我完全理解你的問題&#xff0c;但我認為下面的例子可以滿足你的要求。服務器可以斷開舊用戶的連接&#xff0c;為新用戶提供服務。在服務器端&#xff1a;#!/usr/bin/env pythonimport socketimport multiprocessingHOST 127.0.0.1PORT 50007# you can do your real…

dede搜索php在哪,dede搜索頁面怎么調用及相關搜索調用

dede搜索頁面怎么調用&#xff0c;那幾天有事情&#xff0c;所以導致博客幾天都一直沒有更新&#xff0c;之前我們講過dede內容頁面和dede列表模板的調用&#xff0c;今天我們一起來學習下搜索頁面的調用&#xff0c;很多做企業站朋友們都不知道dede的搜索頁怎么仿&#xff0c;…

電腦中病毒后被隱藏的文件的顯示

用批處理或DOS更改屬性。批處理就是建個記事本&#xff0c;輸入attrib -h -s -r %~dp0\*.* /s /d&#xff0c;然后另存為隨便.bat&#xff0c;把它放到那些隱藏文件夾外面&#xff08;不是里面&#xff09;&#xff0c;然后雙擊打開&#xff0c;等它自己關閉窗口就好了轉載于:h…

HDU 3555 - Bomb

第一道數位dp&#xff0c;屬于基礎模板&#xff0c;又自卑小時沒學好數數了&#xff0c;只是不清楚為什么大家的dp定義都是相同的&#xff0c;很顯然么&#xff0c;難道我寫的是怪胎。。。 /* ID:esxgx1 LANG:C PROG:hdu3555 */ #include <cstdio> #include <cstring&…

瀏覽器angent分析工具

cz.mallat.uasparser.UserAgentInfo info null; info uasParser.parse(userAgent);轉載于:https://www.cnblogs.com/yaohaitao/p/6048011.html

python2協程_python中的協程(二)

協程1、協程&#xff1a;單線程實現并發在應用程序里控制多個任務的切換保存狀態優點&#xff1a;應用程序級別速度要遠遠高于操作系統的切換缺點&#xff1a;多個任務一旦有一個阻塞沒有切&#xff0c;整個線程都阻塞在原地&#xff0c;該線程內的其他的任務都不能執行了一旦引…

python相減函數subs,SUBS(subs是什么函數)

matlab中subs()是符號計算函數&#xff0c;詳細用法可以在Matlab的Command Windows輸入&#xff1a;help subs。subs()函數表示將符號表達式中的某些符號變量替換為指定的新的變.f1subs(f,t,t3); f2subs(f1,t,2*t); f3subs(f2,t,-t); subplot(2,2,1);ezplot(f,[-8,8]);。subs是…

hdu--1075--字典樹||map

做這題的時候 我完全沒想到 字典樹 就直接用map來做了 - 我是有 多不 敏感啊~~ 然后去 discuss 一看 很多都是說 字典樹的問題.... 字典樹 給我感覺 它的各個操作的意思都很清晰明了 直接手寫 不那么容易啊。。 晚些 時候 試下來寫------用map寫是真心方便 只要注意下那么\n的吸…

歸檔七

課后作業1 運行 TestInherits.java &#xff0c;觀察輸出&#xff0c;總結父類與子類之間構造方法的調用關系修改Parent構造方法的代碼&#xff0c;調用GrandParent的另一個構造函數。 class Grandparent { public Grandparent() { System.out.println("GrandParent Creat…

php的類裝載的步驟,設計PHP自動類裝載功能

在使用面向對象方法做PHP開發時&#xff0c;可能會經常使用到各個路徑中的類文件&#xff0c;這就需要大量的 include 或 require&#xff0c;而 PHP 提供了一個比較快捷的方式&#xff0c;就是利用函數 __autoload 可以編程實現動態的類裝載功能&#xff0c;這樣就不需要手動的…

python 重定向 ctf_3.CTF——python利用工具

web AWD 攻與防CTF線下賽主要考察代碼審計能力及運維能力&#xff0c;代碼審計發現漏洞&#xff0c;python寫利用漏洞&#xff0c;運維發現可疑攻擊目標&#xff0c;異常流量&#xff0c;異常權限&#xff0c;重要業務備份與還原。用運維的知識加固系統與業務。當被人攻擊以后&…

網站首頁幻燈片

Js頁面: View Code /** * 大眼睛廣告輪播 */ var indexEye {autoTime: 0,init: function () {var eyeObj $("#dyj_pics a:eq(0) img:eq(0)");eyeObj.attr("src", eyeObj.attr("data-imgSrc"));eyeObj.load(function () {indexEye.autoTime se…

【java】錯誤 找不到或無法加載主類

很詭異&#xff0c;class文件夾下的class文件沒有了&#xff0c;刪除文件夾 &#xff0c;重新編譯下。。。轉載于:https://www.cnblogs.com/merlini/p/3892719.html

Qt之QAbstractItemView視圖項拖拽(二)

一、需求說明 上一篇文章Qt之QAbstractItemView視圖項拖拽(一)講述了實現QAbstractItemView視圖項拖拽的一種方式&#xff0c;是基于QDrag實現的&#xff0c;這個類是qt自己封裝好了的&#xff0c;所以可定制性也就沒有了那么強&#xff0c;最明顯的是&#xff0c;這個類在執…