Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Проблема при в вставке данных в бд

13K
13 марта 2007 года
Mayc
38 / / 01.02.2007
Обновил ПО сервера. Поставил apache 2.0 + PHP 5.1.6 + mySQL Server 5.0.18
Ранее стояло ПО AltDenwer вкл. в себя(PHP 4.3.8 + apache 1.3.6 + mySQL Server 3 толи 4). Так вот ближе к сути, после обновления ПО странным образом работает скрипт добавления новостей, точнее не работает.Данные то принимает, а вот записывать в бд их отказывается и аллерты при этом не выдаёт:(
Выводит текст, в случае если db_insert false
Извините, ваша новость не добавлена. Попробуйте позднее.
Код:
if($_SESSION['submit']==0)
          {
            $_SESSION['submit']=1;
            $sql->db_connect();
            if($insert=$sql->db_Insert("story_news","null,'".$name."','".$description."','".$author."','".$datedob."','".$categorieID."','".$published."','".$numvotes."','".$votes."'"))  
            {
              if($_SESSION['usernamestatus'] == 3) 
              {
              echo "<div align='center'>Ваша новость успешно добавлена. После проверки администрацией она будет опубликована. Спасибо</div>";
              }else
              {
              echo "<div align='center'>Ваша новость успешно добавлена. Спасибо</div>";  
              }
              $sql->db_close();
                               //Если всё хорошо то делаем редирект
            }else
            { //Если при вставке данных произошли ошибки, то пишем соответственно об этом:)
              echo "<div align='center'>Извините, ваша новость не добавлена. Попробуйте позднее.</div>";
            }
          }else {
            //А вот и сам редирект
            echo "<div align='center'>Чтобы добавить следующую новость подождите 3 минуты. Пожалуйста не увеличивайте нагрузку на сервер.</div>";
                                      //Редирект
                  }

Функция db_Insert()
Код:
function db_Insert($table, $arg)
           {
            if($result = $this->mySQLresult = @mysql_query("INSERT INTO ".MUSER.$table." VALUES (".$arg.")" ))
             {
              return $result;
             }
             else
             {
              $this->dbError("db_Insert ($query)");
                return FALSE;
             }
           }

Новизны пхп 5 пока незнаю, только сегодня купил книгу с 5 пхп и сервер поставил.Если знаете, что надо поправить скажите плз, ботинками не бить
2
14 марта 2007 года
squirL
5.6K / / 13.08.2003
я не очень знаком с пхп, но по-моему @ перед функцией гасит вывод ошибок. уберите и посмотрите че будет
92
15 марта 2007 года
Тень Пса
2.2K / / 19.10.2006
это во-первых, а во-вторых: очень помогает debug методом copy-paste SQL-запроса напрямую к БД. скажем через PHPMyAdmin.


а еще:
у тебя приустановке MySQL 5.x какой collation был поставлен???????????

у меня проблема была с ним в одно время! не хочет русский текст вставлять и всё =))))) так я его и бросил :) перешёл на 4.х обратно, и на Postgre...

в общем в нём есть фишка, и PHP тут непричём, если connection_collation русский (если я правильно помню), а не UTF скажем какой-нить. то при попытке insert с русским текстом будет ошибка Data too long for field 'fieldname' опять же, если правильно помню....

попробуй в PhpMyAdmin выполнить запрос вставки с русским текстом, а то может у тебя и не та проблема
13K
15 марта 2007 года
Mayc
38 / / 01.02.2007
collation connection utf8_unicode_ci
Кстати ошибка само по себе как то пропала. У меня есть же в этом же скрипте несколько строк добавления комментариев, так они после переезда работают исправно.
И ещё вопрос: у меня странно медленно работает сервер, может кто-нибудь знает как бороться с этим?Грузит страницы прям как будто из инета. Раньше стоял такой же сервер тока постарее были версии, и работал лучше намного =(
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог