मैं कोडइग्निटर का उपयोग कर रहा हूं और मेरे पास एक चेकबॉक्स वाला एक फॉर्म है जो उपयोगकर्ता को उनकी अपलोड की गई तस्वीर को चेक और निकालने की अनुमति देता है।
मेरे नियंत्रक में मैं if(isset($checked) == 1)
का उपयोग यह जांचने के लिए करता हूं कि उपयोगकर्ता फोटो को हटाना चाहता है या नहीं।
$photo_to_table
खाली सेट करेगा और डीबी अपडेट करने के लिए $this->tank_auth->update_user()
पर पास करेगा, और तालिका में खाली होने के लिए फोटो फ़ील्ड सेट करें। अन्यथा, यह वही तस्वीर रहेगा।
कोडिनेटर चेकिंग चेकबॉक्स मान
लेकिन मेरे कोड में, चाहे मैं इसे जांचूं या नहीं, जब मैं UPDATE
बटन पर क्लिक करता हूं, तो यह फ़ोटो को हटाता रहता है, मुझे आश्चर्य है कि यह क्यों हो रहा है?
क्या कोई मेरे कोड से गुजर सकता है और सलाह दे सकता है?
नियंत्रक:
$user_id = $this->session->userdata('user_id');
$profile = $this->users->get_profile_by_id($user_id);
if(!empty($_FILES['photo']['name']))
{
//image upload process
}
else
{
$checked = $this->input->post('remove');
if(isset($checked) == 1)
{
$photo_to_table = '';
// here will do remove process to delete file in directory
}
else
{
$photo_to_table = $profile->photo;
}
}
if($this->form_validation->run()) { // validation ok
if(!is_null($data = $this->tank_auth->update_user(
$this->form_validation->set_value('name'),
$this->form_validation->set_value('country'),
$this->form_validation->set_value('website'),
$photo_to_table
)))
{
// success
$this->session->set_flashdata('msg', 'Profile has been updated');
redirect(current_url());
}
}
दृश्य:
<?php echo form_open_multipart($this->uri->uri_string()); ?>
<table border="0">
<?php
if(!empty($uphoto)){
?>
<tr>
<td>
<div>
<img src="<?php echo base_url().$userpath.$uphoto; ?>" />
</div>
<div>
<input id="remove" type="checkbox" name="remove">
<label for="remove">Remove photo</label>
</div>
</td>
</tr>
<?php
}
?>
धन्यवाद।
यह पहली बार आता है। इसके साथ सहमत .. –
बहुत बहुत धन्यवाद :) – conmen