$this->renderPartial('login');
静态资源路径:
/assets/default/css
/assets/default/img
/assets/default/js
/assets/default/css/style.css
定义静态常量
/protected/config/constant.php
define("SITE_URL","http://网址/");
define("CSS_URL","SITE_URL"."/assset/default/css");
当入口引入常量配置
require_once (dirname(__FILE__).'/protected/config/constant.php');
模板文件中调用
<link href="<?php echo CSS_URL;?>style.css" rel="stylesheet" type="text/css"/>
样式文件中的背景图片:
background:url(../img/NavBg.gif)
布局设置
1.修改controller.php的布局模板路径 xxx.php
public $layout="//layouts/shop";
2. xxx.php内容
头
<?php echo $content;?>
尾
修改模板渲染方法
$this->render('register');
后台部署 gii(代码自动生成工具)
1.config/main.php 打开gii 模块
2. 设置密码
3.通过路由访问该模块
http://xxx/index.php?r=模块名字
http://xxx/index.php?r=gii
填写密码
点击超链接
生成控制器
生成curd
生成from
生产model
生成model
在配置文件中引入模块
return [
'modues'=>[
'gii',
'houtai'
]
]
测试数据库连接
var_dump(Yii::app()->db);
模型
class Goods extends CActiveRecord{
//返回当前模型对的静态方法
public static function model($className=__CLASS){
return parent::model($className);
}
//返回当前数据表的名字
public function tableName(){
return '{{goods}}';
}
}
db 到底是谁?
main.php
D:\www\ssss.com\frameword\web\CWebApplication.php
main.php db(数据库组建) D:\www\sss.com\framework\YiiBase.php CDbConnection=>'/db/CDbConnection.php'
D:\www\sss.com\framework\base\CApplication.php (CDbConnection)
[
'db'=>array(
'class'=>'CDbConnection'
)
]
打开Yii trace
main.php
'class'=>'CWebLogRoute'
用模型查询一条记录
在控制器中写以下代码:
$goods_infos=$goods_model->find();
echo $goods_infos->goods_name;
echo $goods_infos->goods_price;
查询全部信息
$goods_infos=$goods_model->findAll();
foreach($goods_infos as $v){
$v->goods_name."------".$v->goods_price."<br>";
}
通过sql语句查询数据
$sql="select good_name,good_price,goods_create_time from {{goods}} limit 10";
$goods_infos=$goods_model->findAllBySql($sql);
数据信息分配到前端模板
$goods_infos=$goods_model->findAll();
//renderPartial('视图名字',传递的数据信息)
模板中循环数据信息的代码
<?php
$i=1;
foreach($goods_infos as $v){
$i++
?>
<tr>
<td><?php echo $i;?></td>
<td><?php echo $v->goods_name;?></td>
<td><?php echo $v->goods_price;?></td>
<td><?php echo $v->goods_img;?></td>
<td><?php echo $v->goods_brand_id;?></td>
<td><?php echo $v->goods_create_time;?></td>
</tr>
<?php
}
?>
通过模型实现对数据的添加
function add(){
$goods_model=new Goods();
$goods_model->goods_name="Apple 5s";
$goods_model->goods_price="5999";
$goods_model->goods_weight=120;
if($goods_model->save()){
echo 'success';
}else{
echo "fail";
}
}
开启预处理的参数信息展示
config/main.php
'enableParamLogging'=>true,
通过页面表单添加数据信息
在控制器方法中
function activeAdd(){
$goods_model=new Goods();
$this->renderPartial("add",['goods_model'=>$goods_model]);
}
在对应的模型中
function attributeLabels(){
//parent::attributeLabels();
return array(
'goods_name'=>'商品名称',
'goods_name'=>'商品名称',
'goods_name'=>'商品名称',
'goods_name'=>'商品名称',
'goods_name'=>'商品名称'
);
}
function rules(){
return array(
array('goods_name,goods_price','safe')
);
}
1.利用助手进行表单展现 助手:利用php程序生成php代码
2.widget 挂件生成表单
在模板中
<?php $form=$this->beginWidget("CActiveForm");?>====> <form action="">
//商品名称:
<?php echo $form->labelEx($goods_model,'goods_name');?>
//<input type="text" name="f_goods_name"/>
<?php echo $form->textField($goods_model,'goods_name');?>
<?php $this->endwidget();?> =======></form>
数据添加处理方法
function add(){
$goods_model=new Goods();
if(isset($_POST['Goods'])){
$goods_model->goods_name=$_POST['goods_name'];
$goods_model->goods_price=$_POST['goods_price'];
$goods_model->goods_number=$_POST['goods_number'];
$goods_model->goods_category_id=$_POST['goods_category_id'];
$goods_model->goods_brand_id=$_POST['goods_brand_id'];
$goods_model->goods_introduce=$_POST['goods_introduce';
$goods_model->goods_weight=$_POST['goods_weight'];
$goods_model->goods_create_time=time();
if($goods_model->save()){
echo 'success';
}else{
echo 'fail';
}
}
$this->renderPartial('add',array('goods_model'=>$goods_model));
}
代码优化
function actionAdd(){
$goods_model=new Goods();
if(isset($_POST['Goods'])){
foreach($_POST['Goods'] as $k=>$v){
$goods_model->$k=$v;
}
if($goods_model->save()){
$this->redirect('./index.php?r=houtai/goods/update');
}else{
echo 'fail';
}
}
$this->renderPartial('add',array('goods_model'=>$goods_model));
}
数据更新
在模板中添加链接
<a href="./index.php?r=houtai/goods/update&id=<?php echo $v->goods_id; ?>">修改</a>
function actionUpdate($id){
//修改哪个商品,查询之
//根据商品id查询商品信息
$goods_model=Goods::model();
$goods_info=$goods_model->findByPk($id);
//print_r($goods_info); //new Goods() insert Goods::model() update
if(isset($_POST['Goods'])){
foreach($_POST['Goods'] as $k=>$v){
$goods_info->$k=$v;
}
if($goods_info->save()){
$this->redirect('./index.php?r=houtai/goods/show');
}
}
//数据分配到修改表单页面
$this->renderPartial('update',['goods_info'=>$goods_info]);
}
//删除商品信息
function actionDel($id){
$goods_model=Goods::model();
$goods_info=$goods_model->findByPk($id);
if($goods_info->delete()){
$this->redirect('./index.php?r=houtai/goods/show');
}
}