Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Column count doesn't match value count at row 1?
 
 автор: helovek   (21.04.2007 в 11:50)   письмо автору
 
 

CREATE TABLE tbl (
name text NOT NULL,
tel text NOT NULL,
lech text NOT NULL,
rek text NOT NULL
) TYPE=MyISAM;

<?php
// Устанавливаем соединение с базой данных
require_once("config.php");
// Экранируем спец-символы
if (!get_magic_quotes_gpc())
{
$_POST['name'] = mysql_escape_string($_POST['name']);
$_POST['tel'] = mysql_escape_string($_POST['tel']);
$_POST['lech'] = mysql_escape_string($_POST['lech']);
$_POST['rek'] = mysql_escape_string($_POST['rek']);
}
// Формируем SQL-запрос на добавление информации
$query = "INSERT INTO tblf VALUES('$_POST[name]')";
$query = "INSERT INTO tblf VALUES('$_POST[tel]')";
$query = "INSERT INTO tblf VALUES('$_POST[lech]')";
$query = "INSERT INTO tblf VALUES('$_POST[rek]')";
if(!mysql_query($query)) exit(mysql_error());
else echo "Данные успешно добавлены";
?>
<?php
// Адерс сервера MySQL
$dblocation = "localhost";
// Имя базы данных, на хостинге или локальной машине
$dbname = "mysql";
// Имя пользователя базы данных
$dbuser = "root";
// и его пароль
$dbpasswd = "";

// Устанавливаем соединение с базой данных
$dbcnx = @mysql_connect($dblocation, $dbuser, $dbpasswd);
if (!$dbcnx) {
exit( "<P>В настоящий момент сервер базы данных не доступен,
поэтому корректное отображение страницы невозможно.</P>" );
}
// Выбираем базу данных
if (! @mysql_select_db($dbname, $dbcnx) ) {
exit( "<P>В настоящий момент база данных не доступна,
поэтому корректное отображение страницы невозможно.</P>" );
}

// Определяем версию сервера
$query = "SELECT VERSION()";
$ver = mysql_query($query);
if(!$ver) exit("Ошибка при определении версии MySQL-сервера");
$version = mysql_result($ver, 0);
list($major, $minor) = explode(".", $version);
// Если версия выше 4.1 сообщаем серверу, что будем работать с
// кодировкой cp1251
$ver = $major.".".$minor;
if((float)$ver >= 4.1)
{
mysql_query("SET NAMES 'cp1251'");
}
?>

Выдает Column count doesn't match value count at row 1?
Где ошибка?

   
 
 автор: Trianon   (21.04.2007 в 13:17)   письмо автору
 
   для: helovek   (21.04.2007 в 11:50)
 

$query = "INSERT INTO tblf VALUES('$_POST[name]')";
$query = "INSERT INTO tblf VALUES('$_POST[tel]')";
$query = "INSERT INTO tblf VALUES('$_POST[lech]')";
$query = "INSERT INTO tblf VALUES('$_POST[rek]')";

после выполнения четырех операторов в переменной $query останется последняя строка
INSERT INTO tblf VALUES('то-что-было-в-post-rek')
попытка добавить строку из одного поля не пройдет - в таблице четыре столбца.

   
 
 автор: helovek   (21.04.2007 в 16:05)   письмо автору
 
   для: Trianon   (21.04.2007 в 13:17)
 

$query = "INSERT INTO tblf VALUES('$_POST[name]','$_POST[tel]','$_POST[lech]','$_POST[rek]')";

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования