简体   繁体   中英

How to get field names of mysql table in codeigniter?

i am new in codeigniter. And i am trying to get field name of a table with a query.

I have write a query

"select * from user"

and pass it to $this->db->query() function. i am getting records. But i want to get field names of table. so how can i get that?

Can anybody help me please. Thanks in advance.

using database library write this code to list all fields:

$this->db->list_fields('table')

take a look here: https://codeigniter.com/userguide3/database/results.html#CI_DB_result::list_fields

Some Times this may helpful

$fields = $this->db->field_data('table_name');

foreach ($fields as $field)
{
   echo $field->name;
   echo $field->type;
   echo $field->max_length;
   echo $field->primary_key;
}

What you did is to get the datas from the table.... here your table is user so

in your model function do this...

function get_field()
{
$result = $this->db->list_fields('user');
foreach($result as $field)
{
$data[] = $field;
return $data;
}
}

in your controller do this

function get_field()
{
$data['field'] = $this->model_name->get_field();
$this->load->view('view_name',$data);
}

in your view do this

foreach($field as $f)
{
echo $f."<br>"; //this will echo all your fields
}

hope this will help you

you can use the below code to fetch the field from db

$fields = $this->db->list_fields('table_name');

foreach ($fields as $field)
{
   echo $field;
}

with the help of this code we can fetch the field names from db

include('db.php');

    $col="SHOW COLUMNS FROM `camera details`";
    $output=mysqli_query($db,$col);

    $kal=array();
    while($row=mysqli_fetch_array($output))
    {
        if($row['Field']!='id')
        {
            ?><div class="values"><?php echo $row['Field'];
            echo "<br>";?></div><br><br><?php
            array_push($kal, $row['Field']);
        }
    }
    ?>
    <?php** 
The answer given above by Anwar needs modification, there is no need for foreach loop in model function as it will only give the first element despite using foreach, which means the foreach loop is not bringing the fields using $data[], below code should give you 100% result

in your model function do this...

function get_field()
{
$result = $this->db->list_fields('user');
return $result();
}
in your controller do this

function get_field()
{
$data['field'] = $this->model_name->get_field();
$this->load->view('view_name',$data);
}
in your view do this

foreach($field as $f)
{
echo $f."<br>"; //this will echo all your fields
}

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM