2017-03-01 3 views
0

Controller zu modellieren:

public function getimagesprojects() 
{ 
    $param2 = $this->uri->segment(4); 
    $param3 = $this->uri->segment(5); 
    $data = $this->Admin_db->getimages($param2, $param3); 
    foreach ($data as $images) { 
     return $images; 
    } 
} 

hier gebe ich zwei Variablen von Ajax-Methode auf die obige Steuerung.
Dann rufe ich getimages Methode des Modells durch die Übergabe von zwei Variablen, aber Werte werden nicht an das Modell übergeben.wie Variablen von der Steuerung zu übergeben in codeigniter

Modell:

function getimages($vendor_id, $vendor_pid) 
{ 
    echo $vendor_id; 
    echo $vendor_pid; 
    $images = array(); 
    $res = $this->db->query("SELECT project_gallery FROM projects where vendor_id='$vendor_id' and id='$vendor_pid';"); 
    foreach ($res->result_array() as $row) { 
     $images[] = $row; 
    } 
    return $images; 
} 

In dem obigen Modell I-Wert zu drucken versuche, die vergangen ist, aber nicht prited.
bitte helfen Sie mir.

+0

Sind Sie in der Lage Werte zu erhalten in "getimagesprojects" -Funktion. Versuchen Sie echo $ param2 = $ this-> uri-> segment (4); und andere und sterben; Können Sie diese Werte erhalten? – Anshul

+0

ja. Ich bekomme Werte in $ param1, $ param2.i, überprüfe es einfach per Echo. –

+0

Im Modell gebe ich die Werte $ vendor_id und $ vendor_pid zurück, um zu prüfen, ob Werte übergeben werden oder nicht. Die Werte werden jedoch nicht gedruckt. Die Abfrage wird dann auch nicht erfolgreich ausgeführt. –

Antwort

0

echo Bilder anstelle von return.And in Modell return $res->result_array() .Die result_array() gibt das Ergebnis in array Format zurück.

Controller:

public function getimagesprojects() 

{ 

$param2 = $this->uri->segment(4); 

$param3 =$this->uri->segment(5); 
$this->load->model('Admin_db'); 
$data=$this->Admin_db->getimages($param2,$param3); 
foreach($data as $images) 

    { 

    echo $images;//echo here 

    } 
} 

Modell:

function getimages($vendor_id, $vendor_pid) 
{ 
    echo $vendor_id; 
    echo $vendor_pid; 
    $images = array(); 
    $res = $this->db->query("SELECT project_gallery FROM projects where vendor_id='$vendor_id' and id='$vendor_pid'"); 
    return $res->result_array();//just return result in aray format 
} 
+0

In dem Modell echo ich die Werte $ Vendor_id und $ Vendor_pid, um zu überprüfen, ob Werte übergeben werden oder nicht. Aber Werte werden nicht gedruckt. Dann Abfrage wird auch nicht erfolgreich. Dann Array neu ist leer.so, wie Variablen übergeben vom Controller –

+0

Modell nicht vergessen, das Modell zuerst in Conteoller zu laden. –

+0

Ich rufe das Modell richtig –

0

Ich verstehe nicht, warum Sie die Variable auf das Modell übergeben sie nur von dort zum Echo, sollte Modell nicht Drucken Sie trotzdem, machen Sie den Druck im Controller (oder besser noch, in der Ansicht). Dann iterieren Sie das result_array nur, um das exakt gleiche Array unter dem Namen $ images neu zu erstellen, das ist unnötig. Ich bin mir nicht sicher, ob Ihre Abfrage korrekt funktioniert hat, aber ich habe eine Änderung vorgenommen, um die Codeigniter-Funktionen zu verwenden, da sie ein wenig sauberer und sicherer sind.

Controller:

public function getimagesprojects() 
{ 
    $param2 = $this->uri->segment(4); 
    $param3 = $this->uri->segment(5); 
    echo $param2; 
    echo $param3; 
    $data = $this->Admin_db->getimages($param2, $param3); 
    foreach ($data as $images) { 
     echo $images; 
    } 
} 

Modell:

function getimages($vendor_id, $vendor_pid) 
{ 

    $images = array(); 
    $this->db->where('vendor_id', $vendor_id); 
    $this->db->where('id', $vendor_pid); 
    $res = $this->db->get('project_gallery'); 

    return $res->result_array(); 
} 
Verwandte Themen