Проблема при в вставке данных в бд
Ранее стояло ПО 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>";
//Редирект
}
{
$_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;
}
}
{
if($result = $this->mySQLresult = @mysql_query("INSERT INTO ".MUSER.$table." VALUES (".$arg.")" ))
{
return $result;
}
else
{
$this->dbError("db_Insert ($query)");
return FALSE;
}
}
Новизны пхп 5 пока незнаю, только сегодня купил книгу с 5 пхп и сервер поставил.Если знаете, что надо поправить скажите плз, ботинками не бить
я не очень знаком с пхп, но по-моему @ перед функцией гасит вывод ошибок. уберите и посмотрите че будет
а еще:
у тебя приустановке MySQL 5.x какой collation был поставлен???????????
у меня проблема была с ним в одно время! не хочет русский текст вставлять и всё =))))) так я его и бросил :) перешёл на 4.х обратно, и на Postgre...
в общем в нём есть фишка, и PHP тут непричём, если connection_collation русский (если я правильно помню), а не UTF скажем какой-нить. то при попытке insert с русским текстом будет ошибка Data too long for field 'fieldname' опять же, если правильно помню....
попробуй в PhpMyAdmin выполнить запрос вставки с русским текстом, а то может у тебя и не та проблема
Кстати ошибка само по себе как то пропала. У меня есть же в этом же скрипте несколько строк добавления комментариев, так они после переезда работают исправно.
И ещё вопрос: у меня странно медленно работает сервер, может кто-нибудь знает как бороться с этим?Грузит страницы прям как будто из инета. Раньше стоял такой же сервер тока постарее были версии, и работал лучше намного =(