Shahid Yousaf
Shahid Yousaf

Reputation: 21

Server error 500 in codeigniter

My Controller is Admin.php with following code

<?php
if (!defined('BASEPATH'))
    exit('No direct script access allowed');

class Admin extends CI_Controller
{


    function __construct()
    {
        parent::__construct();
        $this->load->database();
        $this->load->library('session');
        $this->load->model('admin_model');

       /*cache control*/
        $this->output->set_header('Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0');
        $this->output->set_header('Pragma: no-cache');

    }

    /***default functin, redirects to login page if no admin logged in yet***/
    public function index()
    {
        if ($this->session->userdata('admin_login') != 1)
            redirect(base_url() . 'index.php?login', 'refresh');
        if ($this->session->userdata('admin_login') == 1)
            redirect(base_url() . 'index.php?admin/dashboard', 'refresh');
    }




    /***ADMIN DASHBOARD***/
    function dashboard()
    {
        if ($this->session->userdata('admin_login') != 1)
            redirect(base_url(), 'refresh');
        $page_data['page_name']  = 'dashboard';
        $page_data['page_title'] = 'admin_dashboard';
        $this->load->view('backend/index_admin', $page_data);
    }





    /***ADNIN DASHBOARD=USERS SETUP ADMIN----START***/
    function usetupadmin()
    {
        if ($this->session->userdata('admin_login') != 1)
            redirect(base_url(), 'refresh');
            $xadmin = $this->admin_model->get_all();
            $page_data = array(
                'xadmin_data' => $xadmin
            );
            $page_data['page_name']  = 'admin_list';
            $page_data['page_title'] = 'User Setup Admin';
            $this->load->view('backend/index_admin', $page_data);
    }
    function usetupadmin_create()
    {
        if ($this->session->userdata('admin_login') != 1)
            redirect(base_url(), 'refresh');
            $page_data = array(
                'button' => 'Create',
                'action' => base_url() . 'index.php?admin/usetupadmin_create_action',
                'admin_id' => set_value('admin_id'),
                'name' => set_value('name'),
                'email' => set_value('email'),
                'password' => set_value('password'),
                'level' => set_value('level'),
            );
            $page_data['page_name']  = 'admin_form';
            $page_data['page_title'] = 'User Setup Admin';
            $this->load->view('backend/index_admin', $page_data);
    }
    public function usetupadmin_create_action() 
    {
        if ($this->session->userdata('admin_login') != 1)
            redirect(base_url(), 'refresh');
            $this->usetupadmin_rules();

        if ($this->form_validation->run() == FALSE) {
            $this->usetupadmin_create();
        } else {
            $data = array(
        'name' => $this->input->post('name',TRUE),
        'email' => $this->input->post('email',TRUE),
        'password' => $this->input->post('password',TRUE),
        'level' => $this->input->post('level',TRUE),
        );
            $this->admin_model->insert($data);
            $this->session->set_flashdata('message', 'Create Record Success');
            redirect(base_url().'index.php?admin/usetupadmin');
        }
    }
    public function usetupadmin_delete($id) 
    {
        if ($this->session->userdata('admin_login') != 1)
            redirect(base_url(), 'refresh');
                $row = $this->admin_model->get_by_id($id);
        if ($row) {
            $this->admin_model->delete($id);
            $this->session->set_flashdata('message', 'Delete Record Success');
            redirect(base_url().'index.php?admin/usetupadmin');
        } else {
            $this->session->set_flashdata('message', 'Record Not Found');
            redirect(base_url().'index.php?admin/usetupadmin');
        }
    }
        public function usetupadmin_read($id) 
    {
        if ($this->session->userdata('admin_login') != 1)
            redirect(base_url(), 'refresh');
        $row = $this->admin_model->get_by_id($id);
        if ($row) {
            $page_data = array(
        'admin_id' => $row->admin_id,
        'name' => $row->name,
        'email' => $row->email,
        'password' => $row->password,
        'level' => $row->level,
        );
            $page_data['page_name']  = 'admin_read';
            $page_data['page_title'] = 'User Setup Admin';
            $this->load->view('backend/index_admin', $page_data);
        } else {
            $this->session->set_flashdata('message', 'Record Not Found');
            redirect(base_url().'index.php?admin/usetupadmin');
        }
    }


        public function usetupadmin_update($id) 
    {
            $row = $this->admin_model->get_by_id($id);

            if ($row) {
                $page_data = array(
                'button' => 'Update',
                'action' => base_url() . 'index.php?admin/usetupadmin_xpdate_action',
            'admin_id' => set_value('admin_id', $row->admin_id),
            'name' => set_value('name', $row->name),
            'email' => set_value('email', $row->email),
            'password' => set_value('password', $row->password),
            'level' => set_value('level', $row->level),
            );
            $page_data['page_name']  = 'admin_form';
            $page_data['page_title'] = 'User Setup Admin';
            $this->load->view('backend/index_admin', $page_data);

            } else {
                $this->session->set_flashdata('message', 'Record Not Found');
                redirect(base_url().'index.php?admin/usetupadmin');
            }
    }

    public function usetupadmin_xpdate_action() 
    {
        $this->usetupadmin__rules();

        if ($this->form_validation->run() == FALSE) {
            $this->update($this->input->post('admin_id', TRUE));
        } else {
            $page_data = array(
        'name' => $this->input->post('name',TRUE),
        'email' => $this->input->post('email',TRUE),
        'password' => $this->input->post('password',TRUE),
        'level' => $this->input->post('level',TRUE),
        );

            $this->admin_model->update($this->input->post('admin_id', TRUE), $page_data);
            $this->session->set_flashdata('message', 'Update Record Success');
            redirect(base_url().'index.php?admin/usetupadmin');
        }
    }

php>    

When i refer to 'index.php?admin/usetupadmin_create_action'

its work perfectly

when i refer to

'index.php?admin/usetupadmin_update_action'

it gave server error 500 page not found

my view code is

    <hr>
    <?php $this->session->flashdata('message'); ?>
    <div class="row" style="margin-bottom: 10px">
        <div class="col-md-4">
            <h2 style="margin-top:0px">Admin Setup :: Control Panel </h2>
        </div>
        <div class="col-md-4 text-center">
            <div style="margin-top: 4px"  id="message">
                <?php echo $this->session->userdata('message') <> '' ? $this->session->userdata('message') : ''; ?>
            </div>
        </div>
        <div class="col-md-4 text-right">
            <?php echo anchor(base_url() .'index.php?admin/usetupadmin_create', 'Create', 'class="btn btn-success"'); ?>
        </div>
    </div>
    <table class="table table-bordered  table-hover" id="mytable">
        <thead>
            <tr>
        <th><class="dafault">No</th>
        <th>Name</th>
        <th>E`mail</th>
        <th>_Password</th>
        <th>Level</th>
        <th>Action</th>
            </tr>
        </thead>
    <tbody>
        <?php
        $start = 0;
        foreach ($xadmin_data as $xadmin)
        {
            ?>
            <tr>
        <td><?php echo ++$start ?></td>
        <td><?php echo $xadmin->name ?></td>
        <td><?php echo $xadmin->email ?></td>
        <td><?php echo $xadmin->password ?></td>
        <td><?php echo $xadmin->level ?></td>
        <td style="text-align:center">

        <?php 
        echo anchor(base_url() . 'index.php?admin/usetupadmin_read/' . $xadmin->admin_id,'Read' , 'class="btn btn-info"'); 
        echo '  '; 
        echo anchor(base_url() . 'index.php?admin/usetupadmin_update/' . $xadmin->admin_id,'Update' , 'class="btn btn-warning"'); 
        echo '  '; 
        echo anchor(base_url() . 'index.php?admin/usetupadmin_delete/' . $xadmin->admin_id,'Delete', 'class="btn btn-danger"', 'onclick="javasciprt: return confirm(\'Are You Sure ?\')"'); 
        ?>
        </td>
        </tr>
            <?php
        }
        ?>
        </tbody>
    </table>



in database index key is admin_id

what is wrong that it not accessing the function in admin controller

Upvotes: 2

Views: 138

Answers (1)

Vamsi Krishna
Vamsi Krishna

Reputation: 21

Your Controller has the function usetupadmin_xpdate_action Not usetupadmin_update_action the one you are calling in the URL. Check the spelling once.

Upvotes: 1

Related Questions