2017-01-28 3 views
1

angezeigt. Ich bin neu mit codeigniter. Ich versuche, Elemente aus meiner Datenbank anzuzeigen, aber ich weiß nicht, warum es nicht funktioniert. Könnten Sie mir bitte helfen?Werte aus der Datenbank werden nicht mit Codigniter

mein Controller

function Usuario extends CI_Controller{ 
    function construct(){ 
     parent::__construct(); 
     $this->load->model('usuario_m'); 
    } 
    public function modificar_usuario(){ 
     $id_usuario = 1; 
     $this->load->model('usuario_m'); 
     $data['resultado'] = $this->usuario_m->ver_datos_usuario($id_usuario); 
     $this->load->view('paginas/modificar_usuario',$data); 

    } 

Das ist mein Modell:

public function ver_datos_usuario($id_usuario) 
{ 

    $this->db->select('nombre','apellido','nro_ci', 'direccion','email','telefono','password'); 
    $this->db->where('id_usuario', $id_usuario); 
    $this->db->from('usuarios'); 
    $query = $this->db->get(); 
    return $resultado = $query->result(); 

} 

Und das ist meine Ansicht: (Edited)

<!DOCTYPE> 
<head> 
<html> 
<body> 
<?php 
foreach ($data as $d){?> 
    <label>Nombre: </label> 
    <input type="text" value="<?php echo $d->nombre;?>" /> 
<?php } ?> 
</body> 
</html> 

Was ich falsch mache?

+1

'foreach ($ Daten $ d)' das allein sollte Sie einen Fehler werfen. Sie müssen 'foreach ($ data as $ d)' 'Sie haben das' as' vergessen. –

+0

Jemand hat eine Antwort basierend auf deinem ursprünglichen Beitrag gepostet und du hast die Frage bearbeitet, ohne sie als Bearbeitung markiert zu haben, dass du einen Fehler gemacht hast. –

+0

Wie kann ich als bearbeitet markieren? Ich habe immer noch Probleme. Ich habe diesen Teil des Codes eingegeben und vergessen, das "wie" in die Foreach zu setzen. Aber ich möchte nur sagen, dass ich immer noch Fehler habe. –

Antwort

2

Diese Änderung

foreach ($data as $d){?> 

folgend

foreach($resultado as $d){?> 

weil Sie resultado senden in $data Array anzuzeigen so jetzt $resultado von Modell Zugang zurückgegebene Ergebnis sein kann

Ein weiterer Vorschlag

Statt Rück Ergebnis wie return $resultado = $query->result(); Verwendung dieses return $query->result();

+0

das OP machte eine Stealth-Bearbeitung; Schau nochmal. Übrigens, das ist nicht mein Downvote hier und das hast du wegen ihres Fehlers nicht verdient. Edit: Jetzt hat diese Person ihren DV zurückgezogen. –

+0

@ Fred-ii-Ja bearbeiten überprüft, noch ist meine Antwort korrekt –

+1

$ Rejoanul Alam danke. Sehr hilfreich. –

1

Just for fun.Read docs, die über codeigniter Ergebnis ist format.here https://www.codeigniter.com/userguide3/database/results.html.

Damit Sie auch, wie dies erreichen können ...

In Ansicht:

foreach ($resultado as $d){?> 
    <label>Nombre: </label> 
    <input type="text" value="<?php echo $d['nombre'];?>" /> 
<?php } ?> 

In Modell:

ändern Rückkehr $resultado = $query->result();-return $query->result_array();

Hinweise :

1. result_array() gibt das Ergebnis im Array-Format zurück.

2. result() gibt das Ergebnis im Objektformat zurück.

1

Anstatt $ Daten in der Foreach-Iteration zu verwenden, verwenden Sie $ resultado. Prost

Verwandte Themen