[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Добавление данных в базу
Malkolm
впринципе далее по сабжу.Перечитал книжки,статьи и тд.все вроде бы правильно,но добавляется только 1 статья.вот сам скрипт

<?
$title = $_POST['title'];
$author = $_POST['author'];
$img1 = $_POST['img1'];
$img2 = $_POST['img2'];
$text = $_POST['aqwert'];
$date = date('d m Y');
$id = '1';

if (!$author || !$title || !$text)
{
echo '<p>Вы ввели не все данные.Попробуйте еще раз</p>';
echo '<p><a href="../index.php?action=stateiki">Статьи</a></p>';
echo '<p>озоглавие - '.$title.'</p>';
echo '<p>Автор - '.$author.'</p>';
echo '<p>изображение 1 - '.$img1.'</p>';
echo '<p>изображение 2 - '.$img2.'</p>';
echo '<p>текст - '.$text.'</p>';
}
else
{
$upfile = '../../uploads/photo/'.$_FILES['img1']['name'];
$upfile2 = '../../uploads/photo/'.$_FILES['img2']['name'];
move_uploaded_file($_FILES['img1']['tmp_name'], $upfile);
move_uploaded_file($_FILES['img2']['tmp_name'], $upfile2);

$img1up = '<img src="uploads/photo/'.$_FILES['img1']['name'].'">';
$img2up = '<img src="uploads/photo/'.$_FILES['img2']['name'].'">';

$db = mysql_connect('localhost','root','24011993');
mysql_select_db('pamiat');
$query_stat = mysql_query("INSERT INTO stateiki(id,title,author,img1,img2,text,date) VALUES ('$id','$title','$author','$img1up','$img2up','$text','$date')");

echo 'Все было успешно залито на сервер.';
}
?>


А вот тут сама таблица
/*
MySQL Data Transfer
Source Host: localhost
Source Database: pamiat
Target Host: localhost
Target Database: pamiat
Date: 22.12.2009 14:03:34
*/


SET FOREIGN_KEY_CHECKS=0;
-- ----------------------------
-- Table structure for stateiki
-- ----------------------------
CREATE TABLE `stateiki` (
`id` int(11) DEFAULT NULL,
`title` varchar(255) NOT NULL,
`author` varchar(255) NOT NULL,
`img1` text NOT NULL,
`img2` text NOT NULL,
`text` varchar(255) NOT NULL,
`date` int(11) NOT NULL,
PRIMARY KEY (`date`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

-- ----------------------------
-- Records
-- ----------------------------
INSERT INTO `stateiki` VALUES ('0', 'fgdfgsdf', 'dsfgsdgsdf', '<img src=\"uploads/photo/0_21cc0_63a3109d_XL.jpg\">', '<img src=\"uploads/photo/1 (1337).jpg\">', 'gdsfgsdfgsdfg', '22');





Спустя 17 минут, 50 секунд (22.12.2009 - 10:21) Michael написал(а):
Читай здесь про то как правильно данные обрабатывать перед помещением в sql запрос.
Также после
$query_stat = mysql_query( ...

пиши:
if ($query_stat)
{
if (mysql_affected_rows() > 0 )
{
// Все было успешно залито на сервер.
}
}

else die('Ошибка' . mysql_error());

- если у тебя ошибки в запросе то так ты их увидишь.

Спустя 37 минут, 41 секунда (22.12.2009 - 10:59) VolCh написал(а):
id - примари кей, он должен быть уникальным, а ты туда постоянно 1 пихаешь. Вообще его, обычно, делаю с автоинкрементом (или уникальным ид) и не записывают из скрипта, а доверяют это БД

Спустя 6 минут, 21 секунда (22.12.2009 - 11:05) Malkolm написал(а):
ага спасибо.вот тока щас понял в чем косяк,когда решил пытатсья по одной записывать.убрал PRIMARY KEY (`date`) и все заработало)

Спустя 47 минут, 48 секунд (22.12.2009 - 11:53) Trialit написал(а):
Неверно! Совсем не в этом косяк и затирание PRIMARY KEY не выход.
Следует удалить твою таблицу из БД и создать новую с исправленным запросом такого вида:
CREATE TABLE `stateiki` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`title` varchar(255) NOT NULL,
`author` varchar(255) NOT NULL,
`img1` text NOT NULL,
`img2` text NOT NULL,
`text` varchar(255) NOT NULL,
`date` int(11) NOT NULL,
PRIMARY KEY (`id`)
)
ENGINE=MyISAM DEFAULT CHARSET=utf8;

А в коде добавления записи в таблицу исправь:
$query_stat = mysql_query("INSERT INTO stateiki(id,title,author,img1,img2,text,date) VALUES ('','$title','$author','$img1up','$img2up','$text','$date')");

И всё действительно будет работать.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.