ФорумПрограммированиеPHP для идиотов → Не добавляются записи в БД

Не добавляются записи в БД

  • maximusgym

    Сообщения: 59 Репутация: N Группа: Кто попало

    Spritz 31 января 2011 г. 11:08, спустя 55 минут 4 секунды

    Помогите плиз найти решение проблемы. Суть такая.что мой страница получает методом POST переменные,но обработчик ни в какую не добавляет записи в БД и моя же проверка выдает мне ,что я ввел не все данные в форму,хотя все заполняется 100% .
    Код значит такой : в начале страницы обработчика идет проверка переменных и если они пустые то уничтожаем их
    <?php 
    include('blocks/bd.php');
    if (isset($_POST['title'])) {$title=$_POST['title']; if ($title=='') {unset($title);}}
    if (isset($_POST['meta_d'])) {$title=$_POST['meta_d']; if ($meta_d=='') {unset($meta_d);}}
    if (isset($_POST['meta_k'])) {$title=$_POST['meta_k']; if ($meta_k=='') {unset($meta_k);}}
    if (isset($_POST['date'])) {$title=$_POST['date']; if ($date=='') {unset($date);}}
    if (isset($_POST['description'])) {$title=$_POST['description']; if ($description=='') {unset($description);}}
    if (isset($_POST['text'])) {$title=$_POST['text']; if ($text=='') {unset($text);}}
    if (isset($_POST['author'])) {$title=$_POST['author']; if ($author=='') {unset($author);}}


    ?>


    А уже по середине страницы идет проверка если переменная все же существует,то добавляем и сообщение об успехе,но он все время мне говорит,что я не ввел все данные. Я понимаю,что проверку на валидацию делают через JS,но я пока учусь и ошибки обычно находил,но тут я застрял. Обучаюсь по видео урокам и там все работает…

    <?php 
    if (isset($title) && isset($meta_d) && isset($meta_k) && isset($date) && isset($description) && isset($text) && isset($author))
    {
    $result=mysql_query("INSERT INTO lessons (title,meta_d,meta_k,date,description,text,author) VALUES ('$title','$meta_d','$meta_k','$date','$description','$text','$author')");

    if ($result=='true') {echo "<p>Данные добавлены успешно!<p>";}
    else {echo "<p>Данные не добавлены</p>!";}

    }
    else
    {
    echo "<p>Вы не ввели всю информацию,поэтому информация в БД не добавлена!</p>";
    }
    ?>


    Жду вашей помощи..
  • Kikky

    Сообщения: 201 Репутация: N Группа: Кто попало

    Spritz 31 января 2011 г. 9:23, спустя 22 часа 15 минут 11 секунд

    'PHP 5 для начинающих' Дэйв Мерсер и 'PHP 5' Котеров…два отличных учебника, намного лучше того по чём Вы изучаете..
  • TRIAL

    Сообщения: 988 Репутация: N Группа: Джедаи

    Spritz 31 января 2011 г. 10:06, спустя 42 минуты 35 секунд

    Даа… такого идиотизма я еще не видел :) Не удивительно что оно не работает
    from TRIAL with LOVE
  • maximusgym

    Сообщения: 59 Репутация: N Группа: Кто попало

    Spritz 31 января 2011 г. 10:13, спустя 7 минут 10 секунд

    Все резобрался,просто переменные заменить забыл if (isset($_POST['meta_d'])) {$title=$_POST['meta_d']; if ($meta_d=='') {unset($meta_d);}}
    То,что книга научит правильно кодить я не сомневаюсь. Такой код диктует Евгений Попов ,наверняко вы о нем слышали. Курс по PHP его на половину прошел,дальше планирую PHPMASTER там вроде учат правильно кодить,в отличии от Попова. (сори за офтоп)
  • NRG

    Сообщения: 4761 Репутация: N Группа: в ухо

    Spritz 31 января 2011 г. 11:08, спустя 55 минут 34 секунды

    блять, попов должен умереть в страшных муках.
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz 31 января 2011 г. 11:14, спустя 5 минут 28 секунд

    попов!!! умри сука!!!!!
    Сапожник без сапог
  • Verbrannt

    Сообщения: 55 Репутация: N Группа: Кто попало

    Spritz 31 января 2011 г. 11:22, спустя 8 минут 10 секунд

    неплохо
  • master

    Сообщения: 3244 Репутация: N Группа: Джедаи

    Spritz 31 января 2011 г. 11:38, спустя 15 минут 41 секунду

    maximusgym, пример кода - из урока Попова?
    не всё полезно, что в swap полезло
  • maximusgym

    Сообщения: 59 Репутация: N Группа: Кто попало

    Spritz 31 января 2011 г. 11:41, спустя 2 минуты 56 секунд

    пример кода - из урока Попова?

    Именно так,я знаю,что он далеко не правильно учит кодить,знаю,что прфои не станешь,но это единственная для меня форму обучения на данный момент. Книги читать нету времени и никто кроме меня самого пыху не научит
  • Flare

    Сообщения: 284 Репутация: N Группа: Кто попало

    Spritz 31 января 2011 г. 12:14, спустя 33 минуты 47 секунд

    if (isset($title) && isset($meta_d) && isset($meta_k) && isset($date) && isset($description) && isset($text) && isset($author))
    Спустя 45 сек.
  • maximusgym

    Сообщения: 59 Репутация: N Группа: Кто попало

    Spritz 31 января 2011 г. 12:17, спустя 2 минуты 55 секунд

    Flare

    Как новичек смею предположить,что просто должен быть массив,а не такая длинная строка…ИМХО
  • AlexB

    Сообщения: 4306 Репутация: N Группа: в ухо

    Spritz 31 января 2011 г. 12:32, спустя 15 минут 2 секунды

    Именно так,я знаю,что он далеко не правильно учит кодить,знаю,что прфои не станешь,но это единственная для меня форму обучения на данный момент. Книги читать нету времени и никто кроме меня самого пыху не научит

    Хер с тобой, давай я чуть-чуть поучу, в качестве вознаграждения за желание учиться.

    Вместо пиздец изъебистой конструкции:
    if (isset($_POST['title'])) {$title=$_POST['title']; if ($title=='') {unset($title);}}

    можно написать:
    $title = empty($_POST['title']) ? false : $_POST['title'];

    а особые эстеты пишут даже так:
    $title = @$_POST['title'];


    тогда изъеб:
    if (isset($title) && isset($meta_d) и.т.д

    превращается в
    if ($title && $meta_d и.т.д


  • maximusgym

    Сообщения: 59 Репутация: N Группа: Кто попало

    Spritz 31 января 2011 г. 12:52, спустя 19 минут 41 секунду

    Ок,спс учту в следующем кодинге) А учиться жедание есть,но не очень сильное т.к. студент 5го курса на професиии "Программист" ,который не умеет кодировать ни на чем это эпик фейл. И виноваты не мы,а те кто нас ничему не учил на практике,а только гора тетрадей,которые не связаны с программированием. А по теме учиться хочу и даже зарабатывать на этом мб :) Сори за офтоп,но половина недоумений по поводу говно кода моего отпадет сразу
  • AlexB

    Сообщения: 4306 Репутация: N Группа: в ухо

    Spritz 31 января 2011 г. 13:21, спустя 29 минут 8 секунд


    Ок,спс учту в следующем кодинге
    Зачем в следующем? Доводи этот до ума …

    Доведешь код до человеческого вида, переходи к следующему уроку: Прочитай про SQL Injection и [man]mysql_real_escape_string[/man]
  • fgets

    Сообщения: 1099 Репутация: N Группа: Кто попало

    Spritz 31 января 2011 г. 15:03, спустя 1 час 41 минуту 50 секунд


    Ок,спс учту в следующем кодинге) А учиться жедание есть,но не очень сильное т.к. студент 5го курса на професиии "Программист" ,который не умеет кодировать ни на чем это эпик фейл. И виноваты не мы,а те кто нас ничему не учил на практике,а только гора тетрадей,которые не связаны с программированием. А по теме учиться хочу и даже зарабатывать на этом мб :) Сори за офтоп,но половина недоумений по поводу говно кода моего отпадет сразу


    и сколько тебе лет чтобы так ныть? как будто где то иначе. Всегда все сами обучаются если ставят себе цель

Пожалуйста, авторизуйтесь, чтобы написать комментарий!