За последние 24 часа нас посетили 21948 программистов и 1689 роботов. Сейчас ищут 1411 программистов ...

В mysql записываются только цифры

Тема в разделе "PHP и базы данных", создана пользователем blow, 2 апр 2008.

  1. blow

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

    С нами с:
    11 янв 2008
    Сообщения:
    82
    Симпатии:
    0
    Адрес:
    London
    Есть такая проблема. После ввода данных в форму скрипт должен записать переменные в базу, записывает только если все переменные цифры. Все поля у базы varchar(50) , записываю обычным методом -

    mysql_query("INSERT INTO data (type, location, postcode, description, price, referenceNumber) VALUES($type, $location, $postcode, $description, $price, $referenceNumber)");

    в базе они не появляются. Если вводить через phpMyAdmin - всё ок.
     
  2. RomanBush

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

    С нами с:
    5 дек 2007
    Сообщения:
    798
    Симпатии:
    0
    Адрес:
    200 км от Москвы
    Пиши
    mysql_query("..") or die(mysql_error());
    и текст ошибки в студию.
     
  3. lexa

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

    С нами с:
    22 июл 2007
    Сообщения:
    1.746
    Симпатии:
    0
    Адрес:
    Санкт-Петербург
    Ошибка возможна потому что data и type забитые мускулем слова.

    Код (Text):
    1. mysql_query("INSERT INTO `data` (`type`, location, postcode, description, price, referenceNumber) VALUES($type, $location, $postcode, $description, $price, $referenceNumber)");
     
  4. blow

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

    С нами с:
    11 янв 2008
    Сообщения:
    82
    Симпатии:
    0
    Адрес:
    London
    Prostite za translit, ne u sebja . Kavichki ne pomogli, oshibka takaja
    Parse error: syntax error, unexpected T_LOGICAL_OR in /home/svoico/public_html/database/record.php on line 14
     
  5. dAllonE

    dAllonE Guest

    blow

    Это не кавычки. это апострофы.

    Ваша ошибка выводится, наверное, в php скрипте именно потому, что Вы понаставили лишних кавычек.
     
  6. blow

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

    С нами с:
    11 янв 2008
    Сообщения:
    82
    Симпатии:
    0
    Адрес:
    London
    Pitalsja po raznomu. Vidaet oshibku Unknown column 'test' in 'field list', "test" ja vvozhu v formu , i php dolzhen zapisat' v field typ, a ne v field $test.

    mysql_query("INSERT INTO base (typ, location, postcode, description, price, referenceNumber) VALUES ($type, $location, $postcode, $description, $price, $referenceNumber)");
    die(mysql_error());
     
  7. topas

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

    С нами с:
    16 авг 2006
    Сообщения:
    2.258
    Симпатии:
    36
    [sql]mysql_query("INSERT INTO `data` (`type`, location, postcode, description, price, referenceNumber) VALUES('$type', '$location', $postcode, '$description', '$price', $referenceNumber)");
    [/sql]
    Текстовые значения в кавычки '
    Числовые значения оставляем как есть
     
  8. topas

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

    С нами с:
    16 авг 2006
    Сообщения:
    2.258
    Симпатии:
    36
    Еще раз:
    Апострофы используются в MySQL для указания таблиц и полей
    Кавычки для указания нечисленных данных

    т.е
    [sql] INSERT INTO `data` (`type`, `location`...) VALUES ('this\'s text', 10, 'Это тоже текст', А здесь ошбика!)[/sql]
     
  9. blow

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

    С нами с:
    11 янв 2008
    Сообщения:
    82
    Симпатии:
    0
    Адрес:
    London
    Prostite esli chto ne ponimaju. Delaju tak:

    mysql_query("INSERT INTO 'base' ('typ', 'location', 'postcode', 'description', 'price', 'referenceNumber') VALUES ($type, $location, $postcode, $description, $price, $referenceNumber)");

    oshibka:
    You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''base' ('typ', 'location', 'postcode', 'description', 'price', 'referenceNumber'' at line 1
     
  10. topas

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

    С нами с:
    16 авг 2006
    Сообщения:
    2.258
    Симпатии:
    36
    blow
    В одиночные кавчки возьмите $type
    был $type - стал '$type'
    Все текстовые данные в кавычки
    Или $type - \"$type\"
     
  11. blow

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

    С нами с:
    11 янв 2008
    Сообщения:
    82
    Симпатии:
    0
    Адрес:
    London
    Spasibo, razobralsja!
    Est' ne bolshoj vopros. Kak sdelat' 4tob 4erez etu funkciju zapisivalosj v konec bazi? zapisiviaetsja v alfovitnom porjadke pervogo stolbca
     
  12. topas

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

    С нами с:
    16 авг 2006
    Сообщения:
    2.258
    Симпатии:
    36
    blow
    Один вопрос, одна тема...
    То что Вы спрашиваете говорит только о том, что Вы не понимаете сути вопроса