WithoutBrain1994

فراخوانی تابع در کنترلر از طریق view در فریم ورک کدایگنایتر

6 پست در این موضوع قرار دارد

ارسال شده در (ویرایش شده)

سلام و خسته نباشید

لطفا این کد رو ببینید کد به کمک کدایگنایتر نوشته شده


// Home.php (Controller directory)
class Home extends CI_Controller {
public function __construct() {
parent::__construct();
$this->load->model('Home_model');
}
public function index() {
$this->load->view('home');
}
public function getUser($email, $pass) {
$userInfo = $this->Home_model->getUser($email, $pass);
return $userInfo;
}
}


// Home_model.php (Model directory)
class Home_model extends CI_Model {
public function __construct() {
parent::__construct();
$this->load->database();
}
public function getUser($email, $pass) {
$query = $this->db->select('*')->from('users')->where('email', $email)->where('pass', md5($pass))->get();
$res = $query->result_array();
foreach ($res as $row) {
$data['name'] = $row['name'];
$data['family'] = $row['family'];
}
return $data;
}
}


// home.php (View directory)
$userInfo = getUser($this->input->post('email'), $this->input->post('pass'));
echo "Hi " . $userInfo['name'] . " " . $userInfo['family'];

توابع فایل های کنترلر و مدل رو 90% میدونم درسته، فقط نمیدونم چطوری از طریق View تابع توی کنترلر رو صدا بزنم

کد فایل home.php رو برای درک بهتر نوشتم.

قرار ایمیل و پسورد رو از طریق post بگیره و به تابعی که در کنترلر وجود داره بفرسته و از طریق مدل اطلاعات کاربر رو بگیره و به View برگرده و نمایش داده بشه

لطفا راهنمایی کنید که چکار باید بکنم؟

ممنون

ویرایش شده در توسط reza_t
0

به اشتراک گذاری این پست


لینک به پست

سلام؛ چه عجب یه نفر یه سوال فنی پرسید :)

شما نیازی ندارید که توی ویو تابعی فراخوانی کنید، توی کنترلر تابع رو فراخوانی کنید و به View بفرستید. مثلاً:


class Something extends CI_Controller {

public function index() {
$data['users'] = $this->Sth_model->get_users();
$this->load->view( 'Sth_page', $data );
}

}

و در فایل View:


var_dump( $users );

البته اینا برای مثال بود. شما خودتون میتونید با کدهای خودتون هماهنگ کنید.

برای دریافت ورودی هم از $this->input استفاده کنید.

پیشنهاد می‌کنم که حتماً قسمت Tutorial کدایگنایتر رو مطالعه کنید.

موفق باشید.

1

به اشتراک گذاری این پست


لینک به پست

ممنون ولی من مشکلم با ارسال پارامترها از طریق View هست

چطوری پارامترهارو بفرستم؟

0

به اشتراک گذاری این پست


لینک به پست

شما پارامترها رو بریز توی یه آرایه و به پارامتر دوم $this->load->view تحویل بده. توی View میتونی از کلیدهایی که برای Array تعریف کردی به عنوان متغیر استفاده کنید.

موفق باشید.

0

به اشتراک گذاری این پست


لینک به پست

ببخشید ولی فکر کنم درست متوجه نشدید

من میخوام از View به کنترلر اطلاعات ارسال کنم، نه از کنترلر به View

0

به اشتراک گذاری این پست


لینک به پست

آهان، خب شما اول یه فرم ایجاد کن توی ویو و بعد از استفاده از $this->input->post در کنترلرت اطلاعات رو بدست بیار.

جزییات بیشتر:


http://www.codeigniter.com/user_guide/tutorial/create_news_items.html

موفق باشید.

2

به اشتراک گذاری این پست


لینک به پست

برای ارسال نظر یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید نظر ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در انجمن ما ثبت نام کنید. عضویت خیلی ساده است !


ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید


ورود به حساب کاربری