Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Узнать значения полей по-умолчанию
 
 автор: allatone   (29.04.2008 в 12:55)   письмо автору
 
 

Использую для получения данных о полях таблицы функцию mysql_fetch_field():

<?php
/* получаем данные о колонке */
$i = 0;
while ($i < mysql_num_fields($result)) {
echo "Information for column $i:<br />\n";
$meta = mysql_fetch_field($result, $i);
echo "<pre>
blob: $meta->blob
max_length: $meta->max_length
multiple_key: $meta->multiple_key
name: $meta->name
not_null: $meta->not_null
numeric: $meta->numeric
primary_key: $meta->primary_key
table: $meta->table
type: $meta->type
default: $meta->def
unique_key: $meta->unique_key
unsigned: $meta->unsigned
zerofill: $meta->zerofill
</pre>";
$i++;
}
mysql_free_result($result);
?>

$meta->def - почему-то всегда пустой (phpMyAdmin показывает default значения)
Подскажите пожалуйста, как правильно извлечь значение поля по-умолчанию?

   
 
 автор: allatone   (29.04.2008 в 20:16)   письмо автору
 
   для: allatone   (29.04.2008 в 12:55)
 

Справился сам. Проблема решается использованием функции mysql_list_fields для взятия списка колонок таблицы вместо простого запроса SELECT. Пример:

$mysql_result = mysql_list_fields($dbname,"pt-".$table)
    or die (mysql_error());

// Fetch the column data
while ($column_data = mysql_fetch_field ($mysql_result)) {

    // Display the column name
    // Display the column name
    echo '<b>', $column_data->name, '</b>';

    // Show every property of the column that is set
    foreach (get_object_vars ($column_data) as $key => $value) {
        if ($value && $key != 'name') {
            echo "<br>$key: $value";
      }
   }
    echo "<br />";
}

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования