2012-11-18 3 views
1

Я исследовал уже несколько дней. Я всегда получаю что-то вроде этого (это то, что я думаю, что это лучший ответ):Как я могу отобразить имена столбцов таблицы с помощью PHP?

SELECT `COLUMN_NAME` 
FROM `INFORMATION_SCHEMA`.`COLUMNS` 
WHERE `TABLE_SCHEMA`='yourdatabasename' 
AND `TABLE_NAME`='yourtablename'; 

Да это один работает отлично в SQL, но я до сих пор понятия не имею, как я буду создавать PHP скрипт, чтобы показать его в так же, как в SQL. Может ли кто-нибудь дать мне код?

Я действительно запутался прямо сейчас. Пожалуйста, помогите ..

ответ

1

вы можете сделать это в MySQL mysql_field_name()

Использование mysql_* не рекомендуется, так что используйте либо pdo или mysqli

с ними вы можете сделать это

mysqli_fetch_field_direct() //for mysqli 
PDOStatement::getColumnMeta() //for pdo 

, например, после OP comment

$sql = "SELECT * from Person"; 
$result = mysql_query($sql,$con); 

$name = mysql_field_name($result, 0); 

объяснение, как использовать mysql_field_name()

Syntex

mysql_field_name(data,fieldOffset) 

+------------+------------------------------------------------------------------+ 
| data  | Required. Specifies which data pointer to use. The data   | 
|   | pointer is the result from the mysql_query() function   | 
+------------+------------------------------------------------------------------+ 
|fieldOffset |Required. Specifies which field to start returning. 0 indicates | 
|   |the first field             | 
+------------+------------------------------------------------------------------+ 
в

хорошо читал

PDO Tutorial for MySQL Developers

+0

ммм вы можете предоставить мне с кодом PHP для отображения данных запроса? и я до сих пор не понимаю многое из mysqli .., а также pdo .. для меня больше не имеет значения, если mysql_ * устарел, мне просто нужно сделать это сегодня :) –

+0

MySQL не устарел, он не рекомендуется использовать его для нового скрипта, но они не собираются удалять его в версии 5.x .. –

1

По-видимому, вам нужно получить данные из таблицы mysql, а затем сделать что-то с ним в php. Есть несколько способов сделать это, вот мой любимый:

<?php 
    $query="SELECT `COLUMN_NAME` 
      FROM `INFORMATION_SCHEMA`.`COLUMNS` 
      WHERE `TABLE_SCHEMA`='yourdatabasename' 
      AND `TABLE_NAME`='yourtablename'"; 
    $result=mysql_query($query); //This will store the whole result table in $result 
    $rows=array(); //Initialize array 
    while($row=mysql_fetch_object($result)) $rows[]=(object) $row; //Store each row of the result table in the array $rows 

    //Now you can access, for example, the third row and second column by saying: 
    echo $rows[2]->name_of_second_column 
?> 

Также см this tutorial. о том, как извлекать данные из базы данных и манипулировать она впоследствии.

+0

"Примечание: Неопределенное свойство: stdClass :: $ status в E: \ xampp \ htdocs \ federalcreditadvocates \ admin_page \ includes \ functions.php в строке 113 " –

+0

говорит, что один .. и я использовал этот один echo $ rows [2] -> статус; –

+0

исправьте меня, если они ошибаются, но имя второго столбца имеет статус –

2

без PDO:

$sql = "SHOW FIELDS FROM users;"; 
$result_sql = mysql_query($sql) or die ("Error!\n"); 

    while ($row = mysql_fetch_array($result_sql)) { 
     echo $row['Field']."<br>\n"; 
    } 
+0

в порядке это хорошо работает .. только то, что я искал спасибо .. –

Смежные вопросы