За последние 24 часа нас посетили 16956 программистов и 1778 роботов. Сейчас ищут 909 программистов ...

DATE

Тема в разделе "PHP и базы данных", создана пользователем oksana, 12 май 2012.

  1. oksana

    oksana Активный пользователь

    С нами с:
    16 мар 2012
    Сообщения:
    221
    Симпатии:
    0
    Всем привет как правильно заносить дату в базу
    я делаю так
    $date = date("d-m-Y");
    $date = mysql_real_escape_string($date);
    "INSERT INTO table (date) VALUES ('$date')"
    на хостинге вылезает предупреждение

    как правильно или нужно в таблице выбирать тип DATE ?
     
  2. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
  3. oksana

    oksana Активный пользователь

    С нами с:
    16 мар 2012
    Сообщения:
    221
    Симпатии:
    0
    кажется проблема не в этом.
    хостинг писал что то типа время может не совподать бла бла бла
    в denvere когда делала было такое время сохраняло то которое на компе было а не в реале
     
  4. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    а?

    Добавлено спустя 25 секунд:
    это всё объясняет!
     
  5. oksana

    oksana Активный пользователь

    С нами с:
    16 мар 2012
    Сообщения:
    221
    Симпатии:
    0
    =)))

    Добавлено спустя 2 минуты 53 секунды:
    а есть еще проблема скрипты в кодировке utf-8 база тоже сравнение utf-8_general_ci, таблицы сравнение utf-8_general_ci
    но заполняю форму и на странице все отлично а в базе каракули?

    Добавлено спустя 2 минуты 44 секунды:
    тип таблицы myisam
     
  6. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    да, сразу после подключения к бд засунь такой запрос в нее
    SET NAMES 'utf8'
     
  7. oksana

    oksana Активный пользователь

    С нами с:
    16 мар 2012
    Сообщения:
    221
    Симпатии:
    0
    а есть еще вопрос, захожу в пма и вручную вставила категории к примеру (дома, дачи, квартиры) а на странице вместо этого ????????????

    Добавлено спустя 53 секунды:
    может в таблицах нужно кодировку поменять?
     
  8. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    всяко быват. попробуй с сет неймс вот и потом посмотришь, починится ли всё.
     
  9. oksana

    oksana Активный пользователь

    С нами с:
    16 мар 2012
    Сообщения:
    221
    Симпатии:
    0
    а если быть точнее вот так написать
    $zapros= mysql_query("SET NAMES 'utf-8'", $db);

    Добавлено спустя 2 минуты 44 секунды:
    неа, не помогло
     
  10. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    =) я нижнаю
     
  11. smitt

    smitt Старожил

    С нами с:
    3 янв 2012
    Сообщения:
    3.166
    Симпатии:
    65
    UTF-8 не правильно, поменяй на UTF8, все будет работать :)
     
  12. oksana

    oksana Активный пользователь

    С нами с:
    16 мар 2012
    Сообщения:
    221
    Симпатии:
    0
    действительно =) , только теперь наоборот в базе нормально а на странице каракули
    может все таки в базе поменять что то надо?
     
  13. smitt

    smitt Старожил

    С нами с:
    3 янв 2012
    Сообщения:
    3.166
    Симпатии:
    65
    Кодировка страницы какая?

    Зачем ты пишешь таким образом $zapros?
    Когда я вижу такой код, у меня складывается впечатление что у человека в школе была 2 по английскому :)
     
  14. oksana

    oksana Активный пользователь

    С нами с:
    16 мар 2012
    Сообщения:
    221
    Симпатии:
    0
    utf-8

    могу написать result =)
    по англискому было 4
     
  15. smitt

    smitt Старожил

    С нами с:
    3 янв 2012
    Сообщения:
    3.166
    Симпатии:
    65
    Используя этот запрос
    $zapros= mysql_query("SET NAMES 'utf8'", $db); мы устанавливаем кодировку общения с базой

    Можешь почитать здесь http://dev.mysql.com/doc/refman/5.0/en/charset-connection.html

    Следовательно если этот запрос был правильно выполнен и страница в UTF8 значить данные отображаются в UTF8.
    Такое впечатление что в базе данные так записаны, я угадал?
     
  16. oksana

    oksana Активный пользователь

    С нами с:
    16 мар 2012
    Сообщения:
    221
    Симпатии:
    0
    а на счет даты что можете посоветовать =) ?
     
  17. smitt

    smitt Старожил

    С нами с:
    3 янв 2012
    Сообщения:
    3.166
    Симпатии:
    65
    Тебе же посоветовали, не помогает?
     
  18. oksana

    oksana Активный пользователь

    С нами с:
    16 мар 2012
    Сообщения:
    221
    Симпатии:
    0
    неа, вылезает

    Warning: date() [function.date]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'Europe/Moscow' for 'MSK/4.0/no DST' instead in /home

    из моих знаний по английскому тут написано что дата сохраняет не реальные временные зоны кажется
    на самом деле время сохраняет не в реале а то какое на компе
     
  19. smitt

    smitt Старожил

    С нами с:
    3 янв 2012
    Сообщения:
    3.166
    Симпатии:
    65
    Ну а ты пробовала выставлять date_default_timezone_set(), все равно выдает ошибку?
     
  20. oksana

    oksana Активный пользователь

    С нами с:
    16 мар 2012
    Сообщения:
    221
    Симпатии:
    0
    неа, а куда вставить?

    $date = date("d-m-Y");
    $date = mysql_real_escape_string($date);
    "INSERT INTO table (date) VALUES ('$date')"
     
  21. smitt

    smitt Старожил

    С нами с:
    3 янв 2012
    Сообщения:
    3.166
    Симпатии:
    65
    Обычно выносят в конфигурационный файл который всегда подключается...
    В твоем случае можешь поставить

    date_default_timezone_set('Europe/Moscow');
    $date = date('Y-m-d');

    А с кодировкой я был прав :)
     
  22. oksana

    oksana Активный пользователь

    С нами с:
    16 мар 2012
    Сообщения:
    221
    Симпатии:
    0
    незнаю даже как сказать =) вроде бы везде utf-8
     
  23. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    надо ТЕПЕРЬ в базу засунуть новый текст, который теперь придет в нужной кодировке и выведется в ней же. =)
     
  24. oksana

    oksana Активный пользователь

    С нами с:
    16 мар 2012
    Сообщения:
    221
    Симпатии:
    0
    date_default_timezone_set('Europe/Moscow');

    помогло =) всем спасибо