پارس جوم :: انجمن های تخصصی جوملا

نسخه‌ی کامل: امنیت در کد های پی اچ پی
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
مقاله اي در مورد امنيت در كد هاي php


نویسنده: SuB ZerO

تعداد صفحات : 12

منبع : ایرچتان
در صفحات مختلف یک وب سایت معمولا بخش هایی وجود دارند که ثابت هستند و در مکان های مختلف تکرار می شوند ، مانند بلوک آخرین مطالب ، لوگوهای دوستان ، فرم خبرنامه و … ، در این مواقع برای جلوگیری از تکرار کد و راحت تر شدن کار از element ها استفاده می کنیم .

برای ایجاد یک فایل element در کیک پی اچ پی وارد پوشه elements از بخش views شوید و یک فایل با نام دلخواه و پسوند ctp. ایجاد کنید سپس کدهای مد نظرتان را داخل آن وارد کنید ، برای نمایش element مورد نظرتان در سایر فایلهای بخش view هم از دستور زیر استفاده کنید :
1 echo $this->element('element_name');

برای آشنایی بیشتر با این بخش یک element ایجاد می کنیم که آخرین مطالب موجود در پایگاه داده را نمایش دهد.

در مرحله اول یک متد در کنترلر مربوط به مطالب تعریف می کنیم که آخرین مطالب را به ما برگرداند
01 class PostsController extends AppController
02 {
03
04 var $name='Posts';
05
06 function index()
07 {
08 $posts=$this->Post->find('all',array('limit'=>10));
09 if(isset($this->params['requested']))
10 {
11 return $posts;
12 }
13 else
14 {
15 $this->set('posts',$posts);
16 }
17 }
18
19 }

در اینجا متد index از کنترلر posts رو به شکلی تعریف کردیم که وقتی با استفاده از متد requestAction این متد رو درخواست کردیم مطالب خوانده شده از دیتابیس return شود تا در فایل مربوط به element بتوانیم مورد استفاده قرار دهیم.

حالا در مسیر views/elements یک فایل با نام last_posts.ctp ایجاد کنید و کدهای زیر را داخل آن وارد کنید
01
Last Posts
02
03
04
05 $posts=$this->requestAction('posts/index');
06
07 if(is_array($posts)) :
08
09 ?>
10

11
12 foreach($posts as $post) : ?>
13
echo $this->Html->link($post['Post']['title'],array('controller'=>'posts','action'=>'view',$post['Post']['id'])); ?>
14
15 endforeach; ?>
16
17
18 endif; ?>

حالا هر جا که می خواهید این element رو نمایش بدید از دستور زیر استفاده کنید
1 echo $this->element('last_posts');
لینک مرجع