標籤:bst 大小 footer upd load 使用 運算式 子類 view
一、Id 隱藏<p>
<input class="text-input small-input"
type="hidden" id="id" name="id" value="{$result.id}"/></p>
二、重寫父類方法public $model = null;
// (重寫)架構的構造方法,運行工程時架構內部會執行,作用是初始化常用屬性, 方法等初始化工作
public function __construct()
{
// 調用父類方法
parent::__construct();
$this->model = M(‘Product‘);}完善後PublicAction繼承父類
建構函式class PublicAction extends Action { public $model = null;
//架構的構造方法,運行工程師架構內部會執行,作用是初始化常用的屬性,方法等初始化工作
public function __construct()
{
//調用父類方法
parent::__construct();
//擷取當前子類的名;
$class_name = get_class($this);
$name = substr($class_name,0,-6);
// dump($name);exit(); $this->model = M($name); }}
三、上傳檔案檔案上傳兩大核心:<form action="__APP__/product/update" method="post" enctype="multipart/form-data
”> 支援檔案上傳<input class="text-input medium-input" type="file" id="" name="img" /> 檔案類型查手冊—》檔案上傳// 檔案上傳
import(‘ORG.Net.UploadFile‘);
$upload = new UploadFile();// 執行個體化上傳類
$upload->maxSize = 3145728 ;// 設定附件上傳大小
$upload->allowExts = array(‘jpg‘, ‘gif‘, ‘png‘, ‘jpeg‘);// 設定附件上傳類型
$upload->savePath = ‘./Public/Uploads/‘;// 設定附件上傳目錄
if(!$upload->upload()) {// 上傳錯誤提示錯誤資訊 CMD進入upload()方法
$this->error($upload->getErrorMsg());
}else{// 上傳成功 擷取上傳檔案資訊
$info = $upload->getUploadFileInfo();
}
// 儲存表單資料 包括附件資料
$User = M("User"); // 執行個體化User對象
$User->create(); // 建立資料對象
$User->photo = $info[0][‘savename‘]; // 儲存上傳的照片根據需要自行組裝
$User->add(); // 寫入使用者資料到資料庫
$this->success(‘資料儲存成功!‘); Mac 系統下修改檔案許可權,可以自動建立檔案// 嘗試建立目錄 許可權
if(!mkdir($savePath,777,true)){檔案修改許可權用Linux修改sudo chmod -R 777 /Applications/XAMPP/xamppfiles/htdocs/phprise/Public // 對上傳檔案按日期建檔案夾分類$year = date(‘Y‘);
$month = date(‘M‘);$day = date(‘d‘);$upload->savePath = ‘./Public/Uploads/‘.$year.‘/‘.$month.‘/‘.$day.‘/‘;// 設定附件上傳目錄
// 產生縮圖
$upload->thumb = true;
$upload->thumbMaxWidth = ‘50,200‘;$upload->thumbMaxHeight = ‘50,200‘;整體:if (!empty($_FILES[‘img‘][‘name‘])){
// 檔案上傳
import(‘ORG.Net.UploadFile‘);
$upload = new UploadFile();// 執行個體化上傳類
$upload->maxSize = 3145728 ;// 設定附件上傳大小 $upload->allowExts = array(‘jpg‘, ‘gif‘, ‘png‘, ‘jpeg‘);// 設定附件上傳類型 $year = date(‘Y‘);
$month = date(‘M‘); $day = date(‘d‘); $upload->savePath = ‘./Public/Uploads/‘.$year.‘/‘.$month.‘/‘.$day.‘/‘;// 設定附件上傳目錄
// 產生縮圖
$upload->thumb = true;
$upload->thumbMaxWidth = ‘50,200‘; $upload->thumbMaxHeight = ‘50,200‘; if(!$upload->upload()) {// 上傳錯誤提示錯誤資訊
$this->error($upload->getErrorMsg());
}else{// 上傳成功 擷取上傳檔案資訊
$info = $upload->getUploadFileInfo();
// dump($info);exit();
// 儲存到資料庫中
// 拼接圖片路徑
$img_path = $info[0][‘savepath‘].$info[0][‘savename‘];
// dump($img_path);exit();
$_POST[‘img_path‘] = $img_path; } }
四、<!--指定當前的預設路徑—> 在<head></head>標籤內些<base href="__ROOT__/"/>
五、模板整體拼接新方法 代替 public function index(){// $this->view();
// 擷取當前方法的Tpl檔案內的模板
$result = $this->fetch();
$this->assign(‘result‘, $result);
// dump($result);exit(); $this->display(‘Public:layout‘); }代替 view()public function view(){
$this->display(‘Public:header‘);
$this->display();
$this->display(‘Public:right‘);
$this->display(‘Public:footer‘);
}
六、 Regex// var reg1 = /^[a-zA-Z\d]{1}\[email protected]\w+(.(com|net))?.(cn|com)$/; // 實體
thinkPHP架構之使用篇三