Message: Undefined property: stdClass in codeigniter
Bekam ich diese Fehlermeldung:
Einen PHP-Fehler aufgetreten ist Severity: Notice Message: Undefined property: stdClass::$positionsNum
wenn ich laufen.
Mein Modell:
public function load_job($id){
$Where = array('jobs.id' => $id);
$this->db->select('jobs.id, positionsNum, companyName, contract_type.titleEN as contractType');
$this->db->from('jobs');
$this->db->join('contract_type', 'jobs.contractTypeId = contract_type.id', 'left');
$this->db->where($Where);
$Result = $this->db->get();
return $Result->first_row() ;
}
meiner Sicht:
<?php if(isset($job) && count($job) > 0){ ?>
<div class="row job-detail-row">
<div class="col-lg-6 job-detail-label"><?php echo lang('contractType'); ?></div>
<div class="col-lg-6"><a href=""><?php if(isset($job->contractType)) echo $job->contractType; ?></a></div>
</div>
<div class="row job-detail-row">
<div class="col-lg-6 job-detail-label"><?php echo lang('num_vacancies'); ?> </div>
<div class="col-lg-6"><?php echo $job->positionsNum; ?></div>
</div>
<?php } ?>
mein Controller die Funktion:
public function job() {
$job_id = $this->uri->segment(3);
if(isset($job_id) && !empty($job_id))
{
//one job
$job = $this->job_model->load_job($this->GetLang, $job_id);
$data['job'] = $job;
$this->load->view( 'front/singleJob', $data);
}
}
Außerdem druckte ich das zurückgegebene Objekt und es gibt diese:
stdClass Object(
[id] => 9
[positionsNum] => 2
[companyName] =>
[contractType] => type1
)
Aber contractType
werden nicht bedruckt Seite, auch wenn es schon einen Wert hat.
Ich kann nicht herausfinden, das problem. Keine Hilfe?
- Bitte schreiben Sie code für Ihre Steuerung. Sind Sie richtig, übergabe von Werten vom Modell zur view?
- OK, ich habe die controller-Funktion.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ist das problem hier.
Sie haben eine Funktion mit einem parameter.
aber im controller übergeben Sie die zwei Werte.
Versuchen Sie, geben die korrekten Werte.
sollte es so sein.
versuchen, wie diese
So, es ist gelöst jetzt 🙂
Dieses problem geschah zweimal in zwei Dateien:
Die erste ist, die genannten in meiner Frage, und ich hatte einen Fehler in einer anderen Abfrage auf der gleichen Seite.
Zweites problem war in der HTML-Datei. Meine komplette Sicht war so:
Es erschien, weil ich die gleiche variable Namen
$service
, also habe ich es geändert und es funktioniert jetzt. Hoffe, dies hilft Ihnen.