Dropofpoison Опубликовано 11 Марта 2006 Жалоба Поделиться Опубликовано 11 Марта 2006 Помогите решить проблему. Описание:Добавляется книга в архив. С помощью формы выбирается год издания книги. http://5000.jino-net.ru/img/form-main.gif После создается книга и к ней привязываются все данные, которые были введены в процессе добавления. http://5000.jino-net.ru/img/form_2.gif Как мы видим, поле год содержит информацию. В данном случае “год: 2005”. <div style='padding-bottom:5px;'><b>{ipb.lang['ds_year']}:</b> {$data['f_year']}</div> Код, который выводит информацию о годе издания книги. А когда я пытаюсь взять значения поля year из БД и вставить их в таблицу, то год у меня не выводится. http://5000.jino-net.ru/img/year_table.gif А выводится порядковый номер года из формы, но не сам год (первый рисунок).2006 – это 02005 – это 12004 – это 22003 – это 32002 – это 42001 – это 52000 – это 6 Хотя я точно так же как и в форме (см. рисунок 2), пытаюсь извлечь данные ({$data['f_year']}). Заранее всем спасибо. С уважением,Роман Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Destruction Опубликовано 11 Марта 2006 Жалоба Поделиться Опубликовано 11 Марта 2006 У вас должен быть код, вроде <select ... > <option ..>2006 <option ..>2005 <option ..>2004[ </select>Сделайте так:<select ...><option value=2006>2006<option value=2005>2005<option value=2004>2004<option value=2003>2003</select> Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Dropofpoison Опубликовано 11 Марта 2006 Автор Жалоба Поделиться Опубликовано 11 Марта 2006 Меню формы вставляется вот так: foreach( $this->year as $k => $v ) { $field['opt_year'] .= "<option value='".$k."'"; $field['opt_year'] .= ( $k == $field['f_year'] ) ? " selected='selected'" : ""; $field['opt_year'] .= ">$v</option>"; } Почему в информации о файле берется правильное значение из БД, а когда я пытаюсь взять эти значения и использовать в другом место возникает порядковый номер года, но не год. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Destruction Опубликовано 11 Марта 2006 Жалоба Поделиться Опубликовано 11 Марта 2006 Ну я про это и говорю, замените таким кодом: foreach( $this->year as $v ) { $field['opt_year'] .= "<option value='".$v."'"; $field['opt_year'] .= ( $v == $field['f_year'] ) ? " selected='selected'" : ""; $field['opt_year'] .= ">$v</option>"; } Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Dropofpoison Опубликовано 11 Марта 2006 Автор Жалоба Поделиться Опубликовано 11 Марта 2006 Да действительно в форме появились значения (option value=2006, и т.д.). Только теперь после добавления файла в поле “год” появилось значение равное 127. Не 2006, 2005, и т.д., а 127. А если я произвожу изменение года уже у существующего файла, то после изменения в поле год становится пусто.P.S. 1) Когда произвожу изменения, “value” содержит нужную информацию; 2) {$data['f_year']} перестает извлекать значения из БД. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
cthulhu Опубликовано 11 Марта 2006 Жалоба Поделиться Опубликовано 11 Марта 2006 "127", случаем, не связано с максимально возможным значением этого поля в базе данных?.. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Dropofpoison Опубликовано 11 Марта 2006 Автор Жалоба Поделиться Опубликовано 11 Марта 2006 Правильно! Был выбран не правильный тип поля. Сейчас год в таблице отображается. http://5000.jino-net.ru/img/table_ok.gif Но когда пытаемся просмотреть более подробную информацию о файле, информация в поле “год” не отображается. http://5000.jino-net.ru/img/table_non.gif <div style='padding-bottom:5px;'><b>{ipb.lang['ds_year']}:</b> {$data['f_year']}</div> Код перестал работать… Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
cthulhu Опубликовано 11 Марта 2006 Жалоба Поделиться Опубликовано 11 Марта 2006 видимо, переменная пустая... поле в базе, случаем, не по-другому теперь называется?.. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
d1pro Опубликовано 11 Марта 2006 Жалоба Поделиться Опубликовано 11 Марта 2006 Видимо тип поля таблицы не позволяет хранить числа больше 127, вот и вся разгадка, имхо. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Dropofpoison Опубликовано 11 Марта 2006 Автор Жалоба Поделиться Опубликовано 11 Марта 2006 Всем огромное спасибо!Найдены все ключи для данной проблемы. Теперь данные отображаются везде правильно. P.S. Вот почему данные в подробной информации отображались некорректно. $info['f_year'] = $this->years[ $info['f_year'] ];Скрипт пытался взять данные 6,5,4, и т.д., а их то уже и нет. Еще раз всем спасибо. С уважением,Роман Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Destruction Опубликовано 12 Марта 2006 Жалоба Поделиться Опубликовано 12 Марта 2006 Всегда пожалуйста, рад помочь! Обращайтесь, если возникнут еще вопросы. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Рекомендуемые сообщения
Присоединиться к обсуждению
Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.