Yii Framework Forum: موضوع الاسئلة العام - Yii Framework Forum

Jump to content

  • (2 Pages)
  • +
  • 1
  • 2
  • You cannot start a new topic
  • You cannot reply to this topic

موضوع الاسئلة العام للاخوان الي مايقدرو يضيفو موضوع جديد لحداثة عضوياتهم

#1 User is offline   Muaid 

  • Standard Member
  • PipPip
  • Yii
  • Group: Members
  • Posts: 112
  • Joined: 25-October 10
  • Location:Saudi Arabia

Posted 18 April 2011 - 06:18 AM

بسم الله الرحمن الرحيم

عام إلى جميع الاخوان هذا موضوع للنقاشات والاستفسارات بشكل عام بخصوص اطار العملYii
فالرجاء المشاركة من الجميع لمن ليس لديهم امكانية اضافة موضوع جديد

--------------------------
اخوكم/ مؤيد المحمدي
0

#2 User is offline   freeyii 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 79
  • Joined: 14-April 11

Posted 18 April 2011 - 08:28 AM

السلام عليكم ورحمة الله. شكرا أخي على فتح هذا الموضوع وأتمنى أن أجد جوابا لسؤالي إن شاء الله.
أريد أن أقوم بإظهار خمسة تسجيلات في كل ثانية. فمثلا إن كان الجدول في قاعدة البيانات يحتوي على 20 تسجيلات أريد أن أقوم بإضهار 5 تسجيلات في كل ثانية.
وهذا هو الكود الحالي الذي يظهر جميع التسجيلات.


<? php $ Company = Company:: model () -> findAll (); foreach ($ companies as $ company) { ?> <tr style="text-align:center;"> <td style="font-size:small; font-weight: bolder; white-space: nowrap;"> <? php echo $ company-> name;?> </ td> </ tr> <? php}?>


أتمنى أن تساعدوني إن أمكن والله ولي التوفيق 

0

#3 User is offline   Muaid 

  • Standard Member
  • PipPip
  • Yii
  • Group: Members
  • Posts: 112
  • Joined: 25-October 10
  • Location:Saudi Arabia

Posted 18 April 2011 - 09:56 AM


حقيقة ماني قادر افهم الفايدة لاكن اكيد انت عندك اسبابكPosted Image

بدايتاالكود الي انت حطيتة فقط يقوم بعرض النتايج (ولاأعتقد انه شغال لوجود خطأ فيه) ولاكن هذا الكود فين موجود بالضبط ؟
هل هو بالكنترولر ولا الفيو ؟؟ لاني شايفك دامج الاثنين بخطوة وحدة وهذا الشي
يخالف مفهوم اطار العمل اساسا
--------------
الموضوع الثاني يالغالي هو انه طلبك يمكن تحقيقة بالاجاكسAjaxاو مثلا كود جافاسكربت بسيط ويكون موجود بجزء الفيو بحيث انه يستدعي سجلات اخرى كل
فترة زمنية معينة بالاجاكس وثم يعرضها مباشرة
او
يستم استدعاء كامل السجلات العشرين وثم عن طريق الجافاسكربت اوjQuery
يتم عرض 5 كل فترة زمنية معينه
--------------------
هذا والله اعلم
بالتوفيق اخوي
0

#4 User is offline   freeyii 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 79
  • Joined: 14-April 11

Posted 21 April 2011 - 05:50 PM

السلام عليكم ورحمة الله
الحمد لله استطعت أن أحل المشكلة, لكن بقي لي أن أضيف الصورة في الجدول حتى تظهر في الفيو
لدي جدول يسمى الشركات التي تحتوي على الحقول التالية : اسم ، الشعار

في الصفحة المخصصة لإضافة شركة جديدة أود أن أسجل صورة الشعار وذالك بتحميلها من الجهاز. 
السؤال المطروح هو 
أريد أن أعرف إذا كان ذلك ممكنا مع هذا الأسلوب لإضافة مسار صورة الشعار أو يجب إنشاء جدول جديد لإضافة الشعار في الصور وأيضا إنشاء controller logo and model...)؟

0

#5 User is offline   Muaid 

  • Standard Member
  • PipPip
  • Yii
  • Group: Members
  • Posts: 112
  • Joined: 25-October 10
  • Location:Saudi Arabia

Posted 21 April 2011 - 07:18 PM



الطريقة صحيحة ولايجب عليك فصل الشعار بجدول مستقل .. بل اني اراى فصل الشعار بجدول مستقل خطأ

اما طريقة رفع الصورة فلديك خيارين

اولا رفع الصورة على السيرفر ثم حفظ رابط او اسم الصورة في جدول الشركات بداخل حقل الشعار

ثانيا رفع الصورة وحفظ نفس الصورة في قاعده البيانات مباشرة في جدول الشركات بداخل حقل الشعار


تستطيع اخوي الاستزادة من هذه الروابط المفيدة جدا لمثل طلبك
How to upload a file using a model

Saving files to a blob field in the database

واي شي ثاني انا جاهز

بالتوفيق اخوي


0

#6 User is offline   freeyii 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 79
  • Joined: 14-April 11

Posted 22 April 2011 - 06:22 AM

View PostMuaid, on 21 April 2011 - 07:18 PM, said:



الطريقة صحيحة ولايجب عليك فصل الشعار بجدول مستقل .. بل اني اراى فصل الشعار بجدول مستقل خطأ

اما طريقة رفع الصورة فلديك خيارين

اولا رفع الصورة على السيرفر ثم حفظ رابط او اسم الصورة في جدول الشركات بداخل حقل الشعار

ثانيا رفع الصورة وحفظ نفس الصورة في قاعده البيانات مباشرة في جدول الشركات بداخل حقل الشعار


تستطيع اخوي الاستزادة من هذه الروابط المفيدة جدا لمثل طلبك
How to upload a file using a model

Saving files to a blob field in the database

واي شي ثاني انا جاهز

بالتوفيق اخوي





السلام عليكم ورحمة الله. 
قمت بدمج الصورة في نفس كونترول وموديل الجدول سوسييتي إلا أنني لم أنجح في ذالك. بحيث لم أستطع تسجيل شركة جديدة.
الكود هو 


Code in Model :

public function rules(){
return array(
array('Nom', 'required'),
array('Nom', 'length', 'max'=>75),
array('Logo', 'file', 'types'=>'jpg, gif, png'), 
); }



Code in Controller :

public function actionCreate()  {
$this->layout="main";                 
$model=new Societes;
if(isset($_POST['Societes'])){  
$model->attributes=$_POST['Societes']; 
$model->Logo=CUploadedFile::getInstance($model,'Logo'); 

if($model->save()) 
$model->Logo->saveAs('path/images');                               
$this->redirect(array('view','id'=>$model->Id));                }
$this->render('create',array(
'model'=>$model,
));     }


Can you help me friend , Thanks
0

#7 User is offline   Muaid 

  • Standard Member
  • PipPip
  • Yii
  • Group: Members
  • Posts: 112
  • Joined: 25-October 10
  • Location:Saudi Arabia

Posted 22 April 2011 - 10:09 AM

وعليكم السلام ورحمة الله وبركاته

انت ذكرت انك لم تستطيع تسجيل شركة جديدة لاكن لم تذكر ماهو الخطأ ولا نوع الخطأ الي يظهر لك

وايضا ماذا عرفت حقل اللوجو في قاعده البيانات ؟

ولاكن مبدأيا عندي ملاحظات على الكود الي انت وضعته

في السطر

$this->redirect(array('view','id'=>$model->Id));


هل يوجد حقل بقاعده البيانات للـ
Id
؟

لاني لم ارى هذا الحقل في الـ
Model rules
الذي وضعته في الاعلى

النقطة الاخرى هي انه يجب وضع عملية التوجية لصفحة اخرى بنفس امر الشرط الخاص بحفظ الصورة بمعنى ان يكون الكود كالتالي

if($model->save()){
   $model->Logo->saveAs('path/images');
   $this->redirect(array('view','id'=>$model->Id));
  }


بدلا من

if($model->save())  
$model->Logo->saveAs('path/images');                                
$this->redirect(array('view','id'=>$model->Id));



اما النقطة الاهم اخوي فهي في هذا السطر
$model->Logo->saveAs('path/images');


هل المجلد
path
موجود فعلا على السيرفر ؟ وهل يوجد بداخلة فعلا مجلد
images
؟؟؟

لاأعتقد انه موجود ولاكن بقولك كيف تسوية

على الرووت الاساسي لإطار العمل .. اي بجانب مجلد
css
و
assets

قم بإنشاء مجلد جديد وسمية مثلا
images

واعطية صلاحيات الكتابة اذا كنت تستخدم لينكس او يونكس او ماك
chmod 777 images

وبعد ذلك قم بتغير السطر ليصبح
$model->Logo->saveAs(Yii::app()->basePath . '/../images/' . $model->image);


كذا ان شاء الله مشكلتك تنحل بإذن الله

وعشان تعرض الصور في الفيو تقدر تستخدم
<?php echo CHtml::image( check the manual i don't remember what is go here ); ?>


بالتوفيق اخوي
0

#8 User is offline   freeyii 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 79
  • Joined: 14-April 11

Posted 22 April 2011 - 11:27 AM

That's my code.

In controller (creat) :

$model=new Societes;

		if(isset($_POST['Societes']))
		{
			$model->attributes=$_POST['Societes'];
                        $model->logo=CUploadedFile::getInstance($model,'Logo');
			if($model->save())
            $model->Logo->saveAs(Yii::app()->basePath . '/images/' . $model->Logo);
            //  $model->logo->saveAs('path/images'); 
				$this->redirect(array('view','id'=>$model->Id));
		}

		$this->render('create',array(
			'model'=>$model,
		));


code of Model :

public function rules()
	{
		return array(
			array('Nom', 'required'),
			array('Nom', 'length', 'max'=>75),
                        array('Logo', 'file', 'types'=>'jpg, gif, png'),
			array('Id, Nom, Logo', 'safe', 'on'=>'search'),
		);
	}


and the code of _form for add a new company with the pecture of logo :

<div>
		<?php echo $form->labelEx($model,'Nom'); ?>
		<?php echo $form->textField($model,'Nom',array('size'=>40,'maxlength'=>45)); ?>
		<?php echo $form->error($model,'Nom'); ?>
	</div>

  <div>
 <?php echo CHtml::form('','post',array('enctype'=>'multipart/form-data')); ?>

<?php echo CHtml::activeFileField($model, 'Logo'); ?>

<?php echo CHtml::endForm(); ?>
</div>


I need to your help Thanks friend
0

#9 User is offline   Muaid 

  • Standard Member
  • PipPip
  • Yii
  • Group: Members
  • Posts: 112
  • Joined: 25-October 10
  • Location:Saudi Arabia

Posted 22 April 2011 - 02:01 PM

حياك الله اخوي يظهر انك من النوع العجول شوي

لاني لاحظت اخطاء كثير بالكود وغير مطابقة للدرس وغير مطابقة ايضا للرد الي كتبتة لك فوق

وايضا اقترح عليك دائما تستخدم الحروف السمول بدل الكابيتال في قواعد البيانات لتجنب مشاكل التوافقية مع قواعد البيانات الاخرى مستقبلا

ولاكن تبشر انا سويت لك المثال وطبقتة لك وجربتة بجهازي واشتغل عندي تمام التمام

ورفعته لك مع المرفقات .. بالتوفيق اخوي

Attached File(s)


0

#10 User is offline   freeyii 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 79
  • Joined: 14-April 11

Posted 22 April 2011 - 02:21 PM

View PostMuaid, on 22 April 2011 - 02:01 PM, said:

حياك الله اخوي يظهر انك من النوع العجول شوي

لاني لاحظت اخطاء كثير بالكود وغير مطابقة للدرس وغير مطابقة ايضا للرد الي كتبتة لك فوق

وايضا اقترح عليك دائما تستخدم الحروف السمول بدل الكابيتال في قواعد البيانات لتجنب مشاكل التوافقية مع قواعد البيانات الاخرى مستقبلا

ولاكن تبشر انا سويت لك المثال وطبقتة لك وجربتة بجهازي واشتغل عندي تمام التمام

ورفعته لك مع المرفقات .. بالتوفيق اخوي


ياأخي الكريم وجدت الملف فارغ من الكود يحتوي فقط على ملفات
controllers, models, view
but are empty
0

#11 User is offline   Muaid 

  • Standard Member
  • PipPip
  • Yii
  • Group: Members
  • Posts: 112
  • Joined: 25-October 10
  • Location:Saudi Arabia

Posted 22 April 2011 - 06:30 PM

قمت بنزيل الملف من المنتدى للتأكد وفتح معاي كامل مع الكود بدون مشاكل لاكن للإحتياط بعيد رفعه .. وايضا بحط الكود هنا في المنتدى

---------------------------------

DB Schema:
CREATE TABLE IF NOT EXISTS `societes` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `nom` varchar(75) NOT NULL,
  `logo` varchar(255) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=1;



Model :
class Societes extends CActiveRecord
{
	public $logo;
...
...
	public function rules()
	{
		return array(
			array('nom', 'required'),
			array('nom', 'length', 'max'=>75),
			array('logo', 'file', 'types'=>'jpg, gif, png'),
			array('id, nom, logo', 'safe', 'on'=>'search'),
		);
	}
.....
.....
}


Controller (create):
class SocietesController extends Controller
{
.....
.....
public function actionCreate()
	{
		$model=new Societes;

		if (isset($_POST['Societes'])) {
			$model->attributes = $_POST['Societes'];
			$model->logo = CUploadedFile::getInstance($model, 'logo');
			if ($model->save()){
			$model->logo->saveAs(Yii::app()->basePath . '/../images/' . $model->logo);
			$this->redirect(array('view', 'id' => $model->id));
			}
		}

		$this->render('create', array(
			'model' => $model,
		));
	}
.....
.....
}


views/societes/_form.php :
<div class="form">

<?php $form=$this->beginWidget('CActiveForm', array(
	'id'=>'societes-form',
	'method' => 'post',
	'htmlOptions' => array('enctype' => 'multipart/form-data'),
	'enableAjaxValidation'=>false,
)); ?>

	<p class="note">Fields with <span class="required">*</span> are required.</p>

	<?php echo $form->errorSummary($model); ?>

	<div class="row">
		<?php echo $form->labelEx($model,'nom'); ?>
		<?php echo $form->textField($model,'nom',array('size'=>60,'maxlength'=>75)); ?>
		<?php echo $form->error($model,'nom'); ?>
	</div>

	<div class="row">
		<?php echo $form->labelEx($model,'logo'); ?>
		<?php echo $form->fileField($model,'logo'); ?>
		<?php echo $form->error($model,'logo'); ?>
	</div>

	<div class="row buttons">
		<?php echo CHtml::submitButton($model->isNewRecord ? 'Create' : 'Save'); ?>
	</div>

<?php $this->endWidget(); ?>

</div><!-- form -->


views/societes/view.php :
<h1>View Societes #<?php echo $model->id; ?></h1>

<?php $this->widget('zii.widgets.CDetailView', array(
	'data'=>$model,
	'attributes'=>array(
		'id',
		'nom',
		array(
			'name' => 'logo',
			'type' => 'image',
			'value' => Yii::app()->baseUrl . '/images/' . $model->logo,
		),
	),
)); ?>


وضعت لك المهم من الكود والي راح تحتاجة ..

حاول تتبعه بدقة وان شاء الله ان مشكلتك بتنحل لان الكود جربتة بنفسي واشتغل معاي بدون مشاكل

وحاول تنزل الملف مرة ثانية وان شاء الله يشتغل معاك

موفق خير ان شاء الله

Attached File(s)


0

#12 User is offline   freeyii 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 79
  • Joined: 14-April 11

Posted 24 April 2011 - 08:44 AM

Thank you verry much friend Muaid

Thanks again
0

#13 User is offline   Muaid 

  • Standard Member
  • PipPip
  • Yii
  • Group: Members
  • Posts: 112
  • Joined: 25-October 10
  • Location:Saudi Arabia

Posted 24 April 2011 - 01:23 PM

اخبار حلوة والحمدلله ان مشكلتك انحلت
:rolleyes:

nice to hear that freeyii (^_^)
0

#14 User is offline   freeyii 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 79
  • Joined: 14-April 11

Posted 01 May 2011 - 06:43 AM

السلام عليكم
لدي مشكلة في الشعار. في القواعد لم أختار الشعار مطلوب ولكن عندما أقوم بحفظ التسجيلات ان كان الشعار فارغ لا تفعل الحفظ أو التحديث.
لذلك يجب أن يكون الشعار ليس فارغا لحفظ تسجيل جديد أو تحديثه ولكن أنا لم أختره  مطلوبا في القواعد!

حقا أنا لم أفهم لماذا يجب أن يكون الشعار ليس فارغا حتى أقوم بحفظ تسجيلات جديدة.


public $logo;
public function rules(){
return array( 
array('nom, active', 'required'),
array('nom', 'length', 'max'=>75),
array('description', 'length', 'max'=>120),
array('logo', 'file', 'types'=>'jpg, gif, png'),                         array('active','length','max'=>10),
array('id, nom, description, logo, active', 'safe', 'on'=>'search'), ); 
}

0

#15 User is offline   Muaid 

  • Standard Member
  • PipPip
  • Yii
  • Group: Members
  • Posts: 112
  • Joined: 25-October 10
  • Location:Saudi Arabia

Posted 01 May 2011 - 12:04 PM

وعليكم السلام

قم بتعديل السطر التالي

array('logo', 'file', 'types'=>'jpg, gif, png'),

إلى

array('logo', 'file', 'types'=>'jpg, gif, png', 'allowEmpty'=>true),

بإذن الله ان التعديل السابق راح يحل مشكلتك

0

#16 User is offline   Ali Borjian 

  • Advanced Member
  • PipPipPip
  • Yii
  • Group: Members
  • Posts: 373
  • Joined: 19-January 11

Posted 02 May 2011 - 07:36 AM

hi couldn't u find a way to solve thr RTL problem in the forum?
we all RTL languages should ask the forum leader to active RTL feature. if u agree signal me plz
thx

0

#17 User is offline   Muaid 

  • Standard Member
  • PipPip
  • Yii
  • Group: Members
  • Posts: 112
  • Joined: 25-October 10
  • Location:Saudi Arabia

Posted 02 May 2011 - 07:57 AM

@Ali Borjian

i replayed in PM.
0

#18 User is offline   Mohamed Alsemany 

  • Newbie
  • Yii
  • Group: Members
  • Posts: 7
  • Joined: 27-July 12

Posted 29 July 2012 - 02:15 PM

@Muaid
مجهود جميل أخ مؤيد
مشكور جدا عليه

عندي تسؤلات كثيرة
لأني كنت باقوم بالبرمجة عن طريق كود ايجنايتر
ويمكن سهولته ووضوحه خلاني ما اقدرش اغير البرمجة بيه لفترة كبيرة

لكن للأسف المميزات الكتيرة اللي موجودة في
Yii
اجبرتني على الدخول إليه
لكن للأسف عندي بعض المشاكل إن شاء الله هابقى اعرضها عليك لمساعدتي في حلها

وبصراحة الأهم من المشاكل إن عندي نقاط كتير مش فاهمها

اسف على الإطالة وأشكرك على المجهود اللي في المنتدى
0

#19 User is offline   hamza 

  • Newbie
  • Yii
  • Group: Members
  • Posts: 1
  • Joined: 04-July 12
  • Location:algeria

Posted 01 September 2012 - 04:25 PM

لا أرى في القسم الخاص بالعربية اي مشاركات جديدة
ربما نحتاج الى التعريف بهذا الاطار في منتدياتنا و مدوناتنا و نعطيه اهتمام اكبر

هل هناك مشكلة في العالم العربي مع
yii ??

0

#20 User is offline   sherifSakr 

  • Newbie
  • Yii
  • Group: Members
  • Posts: 9
  • Joined: 03-October 12

Posted 04 October 2012 - 05:53 PM

الف شكر ليك ياغالى والله استفدنا كثيرا من مشاركتكم :D
0

Share this topic:


  • (2 Pages)
  • +
  • 1
  • 2
  • You cannot start a new topic
  • You cannot reply to this topic

2 User(s) are reading this topic
0 members, 2 guests, 0 anonymous users