मैं सचमुच अपने बालों को इस के साथ खींच रहा हूं और इसकी शुरुआत मेरी बाकी परियोजना में देरी कर रही है और यह वास्तव में मुझे नीचे ला रही है।गैर-वस्तु की संपत्ति प्राप्त करने का प्रयास कर रहे हैं? PHP/codeigniter
मैं डेटाबेस तालिका से लिया गया मानों का उपयोग करके पुल डाउन करने की कोशिश कर रहा हूं ताकि भविष्य में उपयोगकर्ता खींचने के लिए और विकल्प जोड़ना चाहता है, तो वे उन्हें डेटाबेस में तालिका में जोड़ सकते हैं।
मैं एमवीसी डिजाइन पैटर्न का उपयोग कर कोडिनेटर प्लेटफ़ॉर्म (PHP) का उपयोग कर रहा हूं।
एक PHP त्रुटि गंभीरता का सामना करना पड़ा था:
यहाँ मैं त्रुटि संदेश आ रहा है सूचना संदेश: विचारों/submit.php लाइन संख्या:: गैर वस्तु फ़ाइल नाम की संपत्ति प्राप्त करने के लिए कोशिश कर रहा है 139
मेरा मॉडल फ़ंक्शन यह है जो "कर्मचारी" नामक तालिका से पंक्तियों को पुनर्प्राप्त करता है। यह ठीक काम करता है!
function retrieve_values()
{
$query = $this->db->get('staff');
if ($query->num_rows() > 0)
{
//true if there are rows in the table
return $query->result_array(); //returns an object of data
}
return false;
}
इस नियंत्रक समारोह जो पैरामीटर प्राप्त करता है और मेरे विचार को पास कर देता है। यह ठीक काम करता है! मैं एक foreach उपयोग कर रहा हूँ और फिर विकल्प में सरणी के उदाहरण गूंज:
public function displayform()
{
//Checks if a user is logged in, if they are not they get redirected -
if ($this->session->userdata('name') == FALSE || $this->session->userdata('access_level') == FALSE)
{
redirect ('site/index');// to home page
}
//Stores the returned array in instance called "formdata" which will be passed to the view to be used in pulldown menu
$page['formdata']=$this->submit_model->retrieve_values();
//This loads the form
//Instance of "page" in array "page" specifies the file name of the page to load
$page['page'] = 'submit';
$this->load->view('template', $page);
return;
}
यह दृश्य जो समस्या का कारण है का हिस्सा है।
<select>
<?php foreach ($formdata as $row) { ?>
<option value="<?php echo $row->staff_id; ?>"><?php echo $row->name; ?></option>
<?php } ?>
</select>
चर $formdata
की printr()
से पता चलता है कि यह इन मूल्यों में शामिल हैं:
Array (
[0] => Array (
[staff_id] => 1
[name] => Cardiology Nurse
)
[1] => Array (
[staff_id] => 2
[name] => Radiology Nurse
)
[2] => Array (
[staff_id] => 3
[name] => Scrub Nurse
)
[3] => Array (
[staff_id] => 4
[name] => Circulating Nurse
)
[4] => Array (
[staff_id] => 5
[name] => Nurse
)
[5] => Array (
[staff_id] => 6
[name] => Training Nurse
)
[6] => Array (
[staff_id] => 7
[name] => Physiologist
)
[7] => Array (
[staff_id] => 8
[name] => Radiographer
)
[8] => Array (
[staff_id] => 9
[name] => Consultant
)
[9] => Array (
[staff_id] => 10
[name] => Radiologist
)
[10] => Array (
[staff_id] => 11
[name] => Cardiologist
)
[11] => Array (
[staff_id] => 12
[name] => Anaethestist
)
[12] => Array (
[staff_id] => 13
[name] => Non-medical Staff
)
)
आप उपयोग कर रहे हैं शामिल हैं/वस्तुओं स्टोर करने के लिए सत्र के साथ की आवश्यकता है? मेरा मानना है कि यदि आप किसी ऑब्जेक्ट को किसी सत्र में संग्रहीत करते हैं तो आपको सत्र शुरू करने से पहले ऑब्जेक्ट की क्लास परिभाषा वाली फ़ाइल को शामिल/आवश्यक करना होगा। – James