20100817 PHP-MySQL CLASS 9
建立一個 Netbean 的PHP 專案 class9
建立新專案
File → New Project
→ PHP: PHP Application → Next
點選 Browse 按鈕 建立一個 class9 資料夾( 將source 按鈕調整於 C:\Appserv\www 目錄下 [網站根目錄] )
→ Finish
將相關檔案複製到 class8 資料夾
Notes:
select 欄位名稱 from 資料表 where ( 條件 );
1.數值資料
2. 文字資料
3.通用 ( 文字, 數字皆可 )
Lab: where 條件查詢
利用 phpMyAdmin 來下指令練習
選取 pcschool 資料庫
執行結果如下 ( 找出 employeeid 大於等於 3 )
相關查詢指令如下
select employeeid,firstname from employees where (employeeid >= 3);
select employeeid,firstname from employees where (employeeid in(2,4,9));
select employeeid,firstname from employees where (employeeid not in(2,4,9));
select country,companyname from customers where (country in('Argentina','Mexico'));
select region,companyname from customers where (region is null);
select region,companyname from customers where (region is not null);
select firstname from employees where (firstname like 'a%');
select firstname from employees where (firstname like '%a%');
select firstname from employees where (firstname like '%a');
select companyname,contactname,country from customers where (country in('France','Germany') and companyname like 'b%');
select companyname,contactname,country from customers where (country in('France','Germany') or companyname like 'b%');
若有兩個欄位要作判斷, 請加 and 或 or.
$_SERVER[‘HTTP_REFERER’
Q: 為何 SQL 語法內 $a 及 $b 不用加上 ' ‘ ?
A: 因為這兩個是數字 ( 如果表單輸入的非數字呢?)
“ select * from orders where customerID=’$a’ ”;
limit 起始筆數索引值, 總筆數
檔案上傳
php uploaded 檔案不是直接放在指定位置, 而是先放在系統暫存區, upload完成後才移動到指定位置
php.ini 及 表單網頁 ( 隱藏欄位, 名為 MAX_FILE_SIZE) 均可對檔案大小設限制
$_FILE[‘表單file欄位’] [‘name’] [‘size’] [‘type’] [‘error’]
建立一個 Netbean 的PHP 專案 class9
建立新專案
File → New Project
→ PHP: PHP Application → Next
點選 Browse 按鈕 建立一個 class9 資料夾( 將source 按鈕調整於 C:\Appserv\www 目錄下 [網站根目錄] )
→ Finish
將相關檔案複製到 class8 資料夾
Notes:
- 接收表單資料後, 變數建議先作分析再丟給一般變數.不建議直接放入 SQL 語法內
- 資安考量
- 語法較複雜
select 欄位名稱 from 資料表 where ( 條件 );
- 依條件查詢資料表內的欄位內容
1.數值資料
- >, <, =, >=, <=
2. 文字資料
- like ‘%關鍵字%’;
- 相似
- = 相同
3.通用 ( 文字, 數字皆可 )
- in( , )
- 查固定值的欄位內容
- not in( , )
- 查不是固定值的欄位內容
- is null 空值
- not is null 不是空值
Lab: where 條件查詢
利用 phpMyAdmin 來下指令練習
選取 pcschool 資料庫
執行結果如下 ( 找出 employeeid 大於等於 3 )
相關查詢指令如下
select employeeid,firstname from employees where (employeeid >= 3);
select employeeid,firstname from employees where (employeeid in(2,4,9));
select employeeid,firstname from employees where (employeeid not in(2,4,9));
select country,companyname from customers where (country in('Argentina','Mexico'));
select region,companyname from customers where (region is null);
select region,companyname from customers where (region is not null);
select firstname from employees where (firstname like 'a%');
select firstname from employees where (firstname like '%a%');
select firstname from employees where (firstname like '%a');
select companyname,contactname,country from customers where (country in('France','Germany') and companyname like 'b%');
select companyname,contactname,country from customers where (country in('France','Germany') or companyname like 'b%');
若有兩個欄位要作判斷, 請加 and 或 or.
- and 代表 左右兩邊條件均要成立
- or 代表 左右兩邊一邊成立即成立
$_SERVER[‘HTTP_REFERER’
- 從那一個網頁引導到該頁
- 如果是由 java script 語法連接, 偵測到的可能是空的
Q: 為何 SQL 語法內 $a 及 $b 不用加上 ' ‘ ?
A: 因為這兩個是數字 ( 如果表單輸入的非數字呢?)
“ select * from orders where customerID=’$a’ ”;
- 當customerID 等於 $a 變數內容時, 查詢 orders 資料表所有欄位內容
limit 起始筆數索引值, 總筆數
- limit 放在 SQL 語法最後
- 起始筆數索引值由 0 開始, 0 代表第一筆
- 若只有一個數字, 代表由第一筆開始, 共幾筆資料
檔案上傳
- form 必須是 post 方式傳送
- form 必須設定 enctype
- <input type> 為 file
php uploaded 檔案不是直接放在指定位置, 而是先放在系統暫存區, upload完成後才移動到指定位置
php.ini 及 表單網頁 ( 隱藏欄位, 名為 MAX_FILE_SIZE) 均可對檔案大小設限制
$_FILE[‘表單file欄位’] [‘name’] [‘size’] [‘type’] [‘error’]
沒有留言:
張貼留言