//接收資料
//前端為post後端也為post。注意大寫和下劃線
$name = $_post['name'];
$stock = $_post['stock'];
$price = $_post['price'];
//客戶端檔案的原名稱,picture是前端name的值
$imgname = $_files['picture']['name'];
//臨時檔名
$tmp = $_files['picture']['tmp_name'];
//儲存路徑
$filepath = "photo/".$imgname;
//儲存到本地
move_uploaded_file($tmp,$filepath)
如果遇到亂碼可用iconv()函式進行編碼的轉換,例子如下
$imgname = iconv("utf-8","gbk",$imgname);
超連結不帶變數
帶變數
前端的表單提交時其實也算是跳轉
header("location:a.php");
exit;
需要注意的是location和:之間不能有空格,而且header()函式後的**將會繼續執行,所以加上exit;結束指令碼的執行
後端也可以用前端的跳轉,用法只需echo出來就行,如下
echo "";
//資料庫位址
$dbhost = "localhost";
//資料庫賬號
$dbname = "demo";
//密碼
$dbpass = "demo";
//資料庫名稱
$db = "demo";
//連線demo資料庫
$con = mysqli_connect($dbhost,$dbname,$dbpass,$db);
//設定編碼防止亂碼
$program_char = "utf8" ;
mysqli_set_charset( $con , $program_char );
因為資料庫的連線幾乎每個php指令碼都會用到,所以建議可以將這段**封裝成方法(函式)
資料的增刪改查這裡就不說,太多了,不會的可以去菜鳥教程看。
這裡說一下查詢到的資料如何遍歷出來
//查詢語句
$sql = "select * from article";
//返回結果
$result = mysqli_query($con,$sql);
//用mysqli_fetch_array()將結果以關聯陣列的形式賦給變數$row
while ($row = mysqli_fetch_array($result,mysqli_assoc))
";}
$con為資料庫連線後返回的結果。
php中如果一條語句需要用到多個引號時,條件允許的情況下單引號和雙引號最好交替使用
php是弱型別語言,在某種情況下如果直接將使用者傳來的資料進行查詢,就會有可能出現sql注入漏洞。所以建議大家使用引數化語句,一方面保證了安全,一方面在執行方面速度會更快一些。引數化查詢示例如下
//用?代替引數的位置
$stmt = $con -> prepare("select * from user where user=? and password=?");
//i - integer(整型)
//d - double(雙精度浮點型)
//s - string(字串)
//b - blob(布林值)
//兩個s代表兩個引數是字串型別,後面是要查詢的引數,注意要按順序書寫
$stmt -> bind_param("ss", $u_name, $u_pass);
$stmt -> execute();
//接收返回的查詢結果
$result = $stmt -> get_result();
引數化插入
$stmt = $con -> prepare("insert into article (title,body) values (?,?)");
$stmt -> bind_param("ss", $title, $body);
$result = $stmt -> execute();
修改刪除也是一樣
session保持登入狀態很簡單,示例如下
//開啟session
session_start();
//賦值
$_session['username']='a';
//開啟session
session_start();
//獲取session的值
$admin = $_session['username'];
所以我們只需要在登入成功後將某個值賦值給session,然後在其他指令碼檔案中檢查是否有這個session值就可以了
//三個引數分別代表cookie名,cookie值,過期時間
setcookie("username",$u_name,time()+3600,"/");
跟session一樣,直接獲取還不用session_start()
$cookie = $_cookie['username'];
但是一般前後端配合使用的情況較多,可以看一下前端的**
檢查登入狀態直接呼叫一下checkidentify();就可以了 php快速入門
1 php 嵌入格式與注釋 推薦風格,採用的xml風格 採用簡短風格 採用script風格 採用asp格式 echo order processed.注意 1 注釋的作用範圍是注釋符之後,行結束或者關閉標記之前。2 在php中,換行,空格和tab都是被認為是空格,而且多個空格無效。2 表單變數的訪問...
PHP快速入門 常用配置
1 開啟php.ini dist檔案 2 查詢 file uploads 確定為on 確定伺服器上的 php 指令碼是否可以接受檔案上傳。3 查詢 max execution time 確定致命錯誤之前可以執行的最長時間 此外還有一些其他配置,比如memory limit可以防止乙個指令碼占用過多記...
PHP物件導向程式設計快速入門
物件導向程式設計 oop 是我們程式設計的一項基本技能,php4對oop提供了良好的支援。如何使用oop的思想來進行 php的高階程式設計,對於提高 php程式設計能力和規劃好web開發構架都是非常有意義的。下面我們就通過例項來說明使用 php的oop進行程式設計的實際意義和應用方法。我們通常在做乙...