رتبه موضوع:
  • 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
نمایش محصول (حل شد)
#1
سلام من از روی پکیج استاد شهرکی یه سایت درست کردم
تو نمایش محصول تو صفحه اول مشکلی نیست اما وقتی میره جزییات محصول دیگه مدل رو نمی شناسه.و ارور میده . اگر کسی میتونه کمکم کنه ممنون میشم.
پاسخ
تشکر شده توسط:
#2
خب چطوری آخه

متن ارور چیه
اینجا قرار بدید تا بشه راهنمایی کرد.

یادگیری مداوم حداقل شرط لازم برای موفقیت در هر زمینه ای است که در آن فعالیت می کنید؛ هر روز چیز جدیدی بیاموزید.
پاسخ
تشکر شده توسط: sorkhabi
#3
کدتون رو بگذارین. منظورم اکشن view هست.
پاسخ
تشکر شده توسط: sorkhabi
#4
دوستان این کد صفحه اول ک محصول رو نشون میده و مشکلی نیست.

<div class="col-md-2" id="product" >
<div class="thumbnail" id="thumbnail">
    <a href="<?php echo Yii::app()->createUrl('products/Viewproduct', array('id'=>$model->id)); ?>">  
    <img alt="<?php echo CHtml::encode($model->name); ?>" class="img" style="height:150px;"
    src="<?php echo Yii::app()->baseUrl.$model->pic; ?>" /></a>
       
    <div id="caption">
  <a style="text-decoration:none; color:#000;"
   href="<?php echo Yii::app()->createUrl('products/Viewproduct', array('id'=>$model->id)); ?>">  
    <?php echo CHtml::encode($model->name); ?>
    </a></div>
   
     <div id="add" style="background-color:#099; border:solid 1px #FF0000;">
      
    <span style="color:#093; width:50%; background-color:#0F0; float:right; font-size:16px; margin:7px;">
	<?php echo  CHtml::encode($model->price); ?>&nbsp; $</span> 
        <a class="btn btn-primary btn-xs pull-left" href="<?php echo Yii::app()->createUrl('products/add', array('id'=>$model->id)); ?>"><span class="fa fa-plus"></span></a>
  </div>
  
  </div></div>
و این کد هم برای صفحه دوم ک میره جزییات محصول رو نشون بده هست ک ارور میده.

<div class="col-md-2" id="product" >
<div class="thumbnail" id="thumbnail">
          <img style="width:190px; height:160px; aling:center;" src="<?php echo Yii::app()->baseUrl.$model->pic; ?>" />
 
    <div id="caption">
  <a style="text-decoration:none; color:#000;"  href="#">  
    <?php echo CHtml::encode($model->name); ?>
    </a></div>
      
    <div id="add" style="background-color:#099; border:solid 1px #FF0000;"> 
    <span style="color:#093; width:50%; background-color:#0F0; float:right; font-size:16px; margin:7px;">
	<?php echo  CHtml::encode($model->price); ?>&nbsp; $</span> 
 
 
 <a href="<?php echo Yii::app()->createUrl('products/add', array('id'=>$model->id)); ?>">
 <span class="glyphicon glyphicon-shopping-cart" style="color:#FC973D; font-size:22px; background-color:#90C; width:30%; text-align:left; margin:7px; float:left;">
 </span></a>
  </div>
  
  </div></div>

و این هم ارورصفحه است .

نقل قول:Undefined variable: model

C:\wamp\www\kalayeroz\protected\views\products\h.php(8)

01
02
03
04
05 <div class="col-md-2" id="product" >
06
07 <div class="thumbnail" id="thumbnail">
08 <img style="width:190px; height:160px; aling:center;" src="<?php echo Yii::app()->baseUrl.$model->pic; ?>" />
09 </a>
10
11
12
13 <div id="caption">
14 <a style="text-decoration:none; color:#000;"
15 href="#">
16 <?php echo CHtml::encode($model->name); ?>
17 </a></div>
18
19
20 <div id="add" style="background-color:#099; border:solid 1px #FF0000;">

Stack Trace
#0
+
C:\wamp\www\framework\web\CBaseController.php(126): require("C:\wamp\www\kalayeroz\protected\views\products\h.php")
#1
+
C:\wamp\www\framework\web\CBaseController.php(95): CBaseController->renderInternal("C:\wamp\www\kalayeroz\protected\views\products\h.php", null, true)
#2
+
C:\wamp\www\framework\web\CController.php(869): CBaseController->renderFile("C:\wamp\www\kalayeroz\protected\views\products\h.php", null, true)
#3
+
C:\wamp\www\framework\web\CController.php(782): CController->renderPartial("h", null, true)
#4

C:\wamp\www\kalayeroz\protected\controllers\ProductsController.php(154): CController->render("h")

149 #######################################################################
150
151 public function actionViewproduct($id){
152
153 echo $id;
154 $this->render('h');
155 }
156
157 public function actionV($id){
158
159 echo $id;

#5
unknown(0): ProductsController->actionViewproduct("29")
#6
+
C:\wamp\www\framework\web\actions\CAction.php(108): ReflectionMethod->invokeArgs(ProductsController, array("29"))
#7
+
C:\wamp\www\framework\web\actions\CInlineAction.php(47): CAction->runWithParamsInternal(ProductsController, ReflectionMethod, array("r" => "products/Viewproduct", "id" => "29"))
#8
+
C:\wamp\www\framework\web\CController.php(308): CInlineAction->runWithParams(array("r" => "products/Viewproduct", "id" => "29"))
#9
+
C:\wamp\www\framework\web\CController.php(286): CController->runAction(CInlineAction)
#10
+
C:\wamp\www\framework\web\CController.php(265): CController->runActionWithFilters(CInlineAction, array())
#11
+
C:\wamp\www\framework\web\CWebApplication.php(282): CController->run("Viewproduct")
#12
+
C:\wamp\www\framework\web\CWebApplication.php(141): CWebApplication->runController("products/Viewproduct")
#13
+
C:\wamp\www\framework\base\CApplication.php(180): CWebApplication->processRequest()
#14

C:\wamp\www\kalayeroz\index.php(13): CApplication->run()

08 defined('YII_DEBUG') or define('YII_DEBUG',true);
09 // specify how many levels of call stack should be shown in each log message
10 defined('YII_TRACE_LEVEL') or define('YII_TRACE_LEVEL',3);
11
12 require_once($yii);
13 Yii::createWebApplication($config)->run();

2015-06-21 20:13:24 Apache/2.4.9 (Win32) PHP/5.5.12 Yii Framework/1.1.14
مدل نمی شناسه وچی کار باید انجام بدم.
پاسخ
تشکر شده توسط:
#5
خوب شما برای صفحه دوم دارین id رو میفرستین. توی کد اکشن add مدل رو که براساس id پیدا میکنید، برای ویو میفرستین؟
پاسخ
تشکر شده توسط:
#6
درسته .من میخوام ک  id محصول رو به ویو بفرستم .با php  اینو نوشتم کار می کرد اما محصول اد نمیشد با کد اکشن.
<?PHP

$id= $_GET['id'];
$show=products::model()->findAllBySql('select * from products where id='.$id);


for($i=0;$i<count($show);$i++)
{
    echo "<div id='onvan-sowone'><h2><i>".$show[$i]->name."</i></h2></div>";

$show2=img::model()->findAllBySql('select * from img where product_id='.$id);


for($t=0;$t<count($show2);$t++)
{
    echo "<center>
        <img style='width:190px; height:160px; aling:center;' src='".Yii::app()->baseUrl.$show2[$t]->image."' />    </center>";
}
?>

    <div id='pic-sowone'>
        <a class="jDesin_zoom" href="<?php echo Yii::app()->baseUrl.$show[$i]->pic; ?>">
        <img style="width:190px; height:160px; aling:center;" src="<?php echo Yii::app()->baseUrl.$show[$i]->pic; ?>" /></a>

             <a href='"<?php echo Yii::app()->createUrl('products/add', array('id'=>$show[$i]->id)); ?>"' ><input  type='submit' value='خرید'/></a>
        <a href='".Yii::app()->baseUrl."/index.php/kharid/wishtlist/".$show[$i]->id."' ><input  type='submit' value='سبد علاقه مندی'/></a>
<div class="product col-md-3 service-image-left">
                        >                    </div>
                    <div class="product col-md-3 service-image-left">
                    
                    </div>
        </div><br><br>
<?php } ?>

اگر لینکی یا مطلبی در این مورد دارین لطف می کنید بدین بخونم.
البته این توضیح رو بدم ک
من یه جدول دیگه دارم که تصاویر محصول درش هست و تو ویو باید از دو تا جدول داده بگیرم ک برای یه محصول باشه در این مورد هم راهنمایم کنید ممنون میشم.
من چطوری id محصول رو بفرستم؟
ممنونم ک را هنمایی ام  کردین.
پاسخ
تشکر شده توسط:
#7
به این شکل:
$this->render('view', array('id' => $model->id));
پاسخ
تشکر شده توسط:
#8
تو اکشن Viewproduct بنویسم استاد؟
پاسخ
تشکر شده توسط:
#9
بله. البته میتونید به این شکل هم کار کنید تا مجبور نباشین model$ رو توی خود ویو بسازین:
$model = Products::model()->findByPk($id);
$this->render('view', array('model' => $model));

ضمناً بجای دستوراتی که اینطوری نوشتین:
$show=products::model()->findAllBySql('select * from products where id='.$id);
$show2=img::model()->findAllBySql('select * from img where product_id='.$id);

این کدها رو بنویسید:
$show = products::model()->findByPk($id);
$show = img::model()->findAllByAttributes(array('product_id' => $id));
پاسخ
تشکر شده توسط: maryam
#10
درست شد استاد ممنونم خیلی لطف کردین.
پاسخ
تشکر شده توسط:




کاربران در حال بازدید این موضوع: 1 مهمان