[php] Codeigniter: تمرير البيانات من وحدة التحكم لعرض


Answers

بعبارات بسيطة ،

تصبح $ data ['a'] في وحدة التحكم $ a في العرض. (لن تظهر بيانات $ في طريقة العرض الخاصة بك ، سيصبح المؤشر متاحًا فقط)

على سبيل المثال

Controller:    
$data['hello']='hellow world';

view:
echo $hello;
Question

أرغب في تمرير $data من وحدة تحكم المسمى poll إلى results_view ومع ذلك فإنني أتلقى خطأ متغير غير معرف.

<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class Poll extends CI_Controller {

    public function __construct()
       {
            parent::__construct();
            $this->load->database();
            $this->load->helper('form');
       }

    public function index()
    {

        $this->load->view('poll_view',$data);
    }

    public function vote()
    {
        echo "Voting Successfull";
        $this->db->insert('votes',$_POST);
    }

    public function results()
    {
        echo "These are the results";
        //$query = $this->db->get('votes');
        $data = "hello";
        $this->load->view('results_view', $data);

    }
}

Results_view.php

<html>
<?php echo $data; ?>
</html>



تحتاج فقط إلى إنشاء مجموعة ، باستخدام Codeigniter الصحيح؟

مثال على وحدة تحكم:

$data['hello'] = "Hello, world";
$this->load->view('results_view', $data);

في الصفحة "results_view" ، يتعين عليك فقط:

<?php echo $hello;?>

[أوبس]: أنت يستطيع خلقت [دتس] ، فقط دفع إنتباه في الاسم وجعلت هو صفيف.

ملاحظات: لاستخدام البيانات ، استخدم مفتاح المصفوفة مع الصدى.




يمكنك القيام بذلك على هذا النحو $ data ['hello'] = "hello"؛

في عرض صدى دولار مرحبا؛




في وحدة تحكم:

منتج الوظائف العامة () {

$data = array("title" => "Books", "status"=>"Read","author":"arshad","company":"3esofttech",

"الموضوع": "علوم الكمبيوتر") ؛

البيانات من الطراز إلى وحدة التحكم

$this->load->model('bookModel');
$result = $this->bookModel->getMoreDetailsOfBook();

**Add *$result* from model to *$data* array**  
$data['tableRows'] = $result;

بيانات $ من المراقب للعرض

$this->load->view('admin/head',$data);

وللاطلاع على طرق عرض الملف / user.php

<?php  echo $data;
 foreach($tableRows as $row){ echo
 $row['startData']; } ?>



لقد رأيت جميع الإجابات المذكورة أعلاه ، لذا فإليك ما أقوم به عندما يتعين عليّ تحميل البيانات من وحدة التحكم إلى وجهة نظري. لتمرير البيانات إلى طريقة العرض من وحدة التحكم:

public function your_controller(){

   // Your Necessary Code 
   // You have the $data, $data2, $data3 to post to the view.

   $this->load->view('your_view_directory or view_page',['data'=>$data, 'data2'=>$data2, 'data3'=>$data3... so on ]);

}

وعلى جانب العرض يمكنك ببساطة استرداد هذه البيانات: إلى العرض يمكنك ببساطة استخدام echo ، print ، print_r . وإذا كنت ترغب في حلها ، فيمكنك القيام بذلك أيضًا.




Links