Искам да извличам и актуализирам данни от база данни с помощта на codeigniter. Изправен съм пред някакъв проблем. Това е моят код:
Това е моят модел с името Update_site_model.
<?php
class update_site_model extends CI_Model{
function show_invoice_id($data) {
$this->db->select('*');
$this->db->from('invoices');
$this->where('invoiceId', $data);
$query = $this->db->get();
$result = $query->result();
return $result;
//Update Query For Selected Invoice.
function update($id,$data) {
$this->db->where('invoiceId',$id);
$this->db->update('invoices',$data);
}
}
?>
Това е моят контролер по името на сайта за актуализиране.
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Update_site extends CI_Controller {
public function __construct() {
parent::__construct();
$this->load->view('includes/header');
$this->load->view('site/update');
$this->load->view('includes/footer');
//load the model
$this->load->model('update_site_model');
}
function show_invoices() {
$id = $this->uri->segment(3);
$data['single_invoice'] = $this->update_site_model->show_invoice_id($id);
$this->load->view('site/update', $data);
}
function update() {
$id = $this->input->post('invoiceId');
$data = array(
'Date' => $this->input->post('invoiceDate'),
'Client' => $this->input->post('invoiceClient'),
'Amount' => $this->input->post('invoiceAmount'),
'Status' => $this->input->post('invoivceStatus')
);
$this->update_site_model->update($id, $data);
}
}
Това е моето виждане с името актуализация. той е в папка с името на сайта.
<div id="content">
<ol>
<?php foreach ($invoices as $invoice): ?>
<li><a href="/bg<?php echo base_url() . "index.php/Update_site/show_invoice_id" . $invoice->invoiceId; ?>"><?php echo $invoice->invoiceId; ?></a></li>
</ol>
<?php endforeach; ?>
</div>
и това е проблема.
Тежест: Забележка
Съобщение: Недефинирана променлива: фактури
Име на файла: site/update.php
Номер на ред: 11
Сериозност: Предупреждение
Съобщение: Невалиден аргумент, предоставен за foreach()
Име на файла: site/update.php
Номер на ред: 11
Моля, помогнете ми да реша проблема.