Форум программистов, компьютерный форум, киберфорум
PHP: базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/9: Рейтинг темы: голосов - 9, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 18.04.2014
Сообщений: 17

Не добавляет в базу данных

05.11.2015, 18:31. Показов 2046. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день. Php изучаю совсем недавно и вот столкнулся с проблемой. Не могу добавить данные в базу данных mysql при помощи формы.
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <title>Добавление пользователя</title>
</head>
 
<body>
<form method="post" action="add.php">
Название новости<br/>
<input type="text" name="title"/><br/>
Текст новости<br/>
<textarea cols="40" rows="10" name="text"></textarea><br/>
Автор новости<br/>
<input type="text" name="author"><br/>
<input type="hidden" name="date" value="<?php echo date('Y-m-d');?>"/>
<input type="hidden" name="time" value="<?php echo date('H:i:s');?>"/>
<input type="submit" name="add" value="Добавить"/>
    
</form>
<?php 
$con = mysqli_connect("localhost", "root", "root", "123")//параметры в скобках ("хост", "имя пользователя", "пароль")
or die("<p>Ошибка подключения к базе данных! " . mysqli_connect_error() . "</p>");
 
$db = mysqli_select_db($con,"123")//параметр в скобках ("имя базы, с которой соединяемся")
 or die("<p>Ошибка выбора базы данных! ". exit(mysqli_connect_error()) . "</p>");
 mysqli_query($con, "SET NAMES 'utf9' "); // mysql_set_charset("utf9");
 
if (isset($_POST['add'])) 
{
$title = $_POST['title'];
 
$author = trim($_POST['author']);
$date = $_POST['date'];
$time = $_POST['time'];
 
$sql = "INSERT INTO news(title, date, time, author) VALUES ('$title','$date','$time','$author')";
mysqli_query($con, $sql);
mysqli_close($con);
echo "Новость успешно добавлена";
}
?>
 
</body>
</html>
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
05.11.2015, 18:31
Ответы с готовыми решениями:

Спамер добавляет объявление в мою базу данных
Всем привет! У меня вот такая проблема, есть пхп страница с формой для добавления объявления на сайт она защищена каптчей года 3 все...

Посмотрите пожалуйста код, не добавляет информацию в базу данных
Ошибки: Предупреждение: mysqli_connect() : (28000/1045): доступ запрещен для пользователя '2089528_tvz'@'82.197.130.147' (используя...

INSERT INTO не добавляет в базу данных значение переменных из формы
Привет всем. Проблема такая, есть форма и ее обработчик, когда отправляю запрос на добавление в базу в нее не чего не отправляется. В...

10
471 / 399 / 169
Регистрация: 04.01.2013
Сообщений: 1,675
05.11.2015, 18:47
Какая ошибка появляется? несколько замечаний по коду
1.
PHP
1
mysqli_select_db($con,"123")
это лишнее так как БД вы указываете выше в mysqli_connect
2.
PHP
1
mysqli_connect_error()
внутри передается указатель соединения $con
3.
PHP
1
2
$db = mysqli_select_db($con,"123")//параметр в скобках ("имя базы, с которой соединяемся")
 or die("<p>Ошибка выбора базы данных! ". exit(mysqli_connect_error()) . "</p>");
Код повторюсь лишний, но зачем после die еще и exit писать...
Ну и снова повторюсь какие ошибки выводятся?
0
0 / 0 / 0
Регистрация: 18.04.2014
Сообщений: 17
05.11.2015, 19:19  [ТС]
Добавлено через 1 минуту
ошибок нет никаких, а может они и есть, но я не знаю где их посмотреть
П,С, я пробывал работать с базой данных через php и у меня получалось, а вот добавление не происходит

Добавлено через 6 минут
Упс, нашел, вот ошибка
[Thu Nov 05 19:11:55.131186 2015] [:error] [pid 4796:tid 1152] [client ::1:51811] PHP Warning: date(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected the timezone 'UTC' for now, but please set date.timezone to select your timezone. in D:\\WebServers\\data\\htdocs\\forma\\scr ipts\\add.php on line 17, referer: http://localhost/forma/scripts/add.php

Добавлено через 5 минут
Europe/Moscow я добавил в тайзону, но опять не добавляется
0
471 / 399 / 169
Регистрация: 04.01.2013
Сообщений: 1,675
05.11.2015, 19:53
а если так код преподнести что в браузер выведется? и что за кодировка utf9
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?php 
$con = mysqli_connect("localhost", "root", "root", "123");
if (!$con) {
    die('Connect Error: ' . mysqli_connect_error());
}
 mysqli_query($con, "SET NAMES 'utf8' ");
 
if (isset($_POST['add'])) 
{
$title = $_POST['title'];
 
$author = trim($_POST['author']);
$date = $_POST['date'];
$time = $_POST['time'];
 
$sql = "INSERT INTO news(title, date, time, author) VALUES ('$title','$date','$time','$author')";
mysqli_query($con, $sql) or die(mysqli_error($con));
mysqli_close($con);
echo "Новость успешно добавлена";
}
?>
0
0 / 0 / 0
Регистрация: 18.04.2014
Сообщений: 17
05.11.2015, 20:03  [ТС]
Field 'text' doesn't have a default value
Изначально планировалось и добавить поле текст $text = $_POST['text'];
но потом я передумал. Может в этом причина?

Добавлено через 2 минуты
Я дописал код с текстом
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?php 
$con = mysqli_connect("localhost", "root", "root", "123");
if (!$con) {
    die('Connect Error: ' . mysqli_connect_error());
}
 mysqli_query($con, "SET NAMES 'utf8' ");
 
if (isset($_POST['add'])) 
{
$title = $_POST['title'];
$text = $_POST['text'];
$author = trim($_POST['author']);
$date = $_POST['date'];
$time = $_POST['time'];
 
$sql = "INSERT INTO news(title, date, time, author? text) VALUES ('$title','$date','$time','$author', 'text')";
mysqli_query($con, $sql) or die(mysqli_error($con));
mysqli_close($con);
echo "Новость успешно добавлена";
}
?>
И вылезла вот такая вот ошибка: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '? text) VALUES ('df','2015-11-05','19:58:21','sdf', 'text')' at line 1
код sql
SQL
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
-- phpMyAdmin SQL Dump
-- version 4.5.1
-- [url]http://www.phpmyadmin.net[/url]
--
-- Хост: localhost
-- Время создания: Ноя 05 2015 г., 20:05
-- Версия сервера: 5.7.9-log
-- Версия PHP: 5.6.15
 
SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
SET time_zone = "+00:00";
 
 
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8mb4 */;
 
--
-- База данных: `123`
--
 
-- --------------------------------------------------------
 
--
-- Структура таблицы `news`
--
 
CREATE TABLE `news` (
  `id` INT(10) UNSIGNED NOT NULL,
  `title` VARCHAR(255) NOT NULL,
  `text` text NOT NULL,
  `date` DATE NOT NULL,
  `time` TIME NOT NULL,
  `author` VARCHAR(50) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
--
-- Дамп данных таблицы `news`
--
 
INSERT INTO `news` (`id`, `title`, `text`, `date`, `time`, `author`) VALUES
(1, 'Название новости 1', 'фывфывфывфывпавп в', '2015-11-05', '00:00:00', 'выавыа'),
(2, 'названиеновости', 'ыфвпарпывп', '2015-11-05', '00:00:00', 'апвыпвып'),
(3, 'названиеновости', 'ыфвпарпывп', '2015-11-05', '00:00:00', 'апвыпвып');
 
--
-- Индексы сохранённых таблиц
--
 
--
-- Индексы таблицы `news`
--
ALTER TABLE `news`
  ADD PRIMARY KEY (`id`);
 
--
-- AUTO_INCREMENT для сохранённых таблиц
--
 
--
-- AUTO_INCREMENT для таблицы `news`
--
ALTER TABLE `news`
  MODIFY `id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=4;
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
0
471 / 399 / 169
Регистрация: 04.01.2013
Сообщений: 1,675
05.11.2015, 20:06
Либо в БД указать для данного поля значение по умолчанию и не использовать его в запросе, либо поправить запрос...вы же сами видите надеюсь ошибку напишите тогда так
PHP
1
$sql = "INSERT INTO news(title, date, time, author, text) VALUES ('$title','$date','$time','$author', '$text')";
0
0 / 0 / 0
Регистрация: 18.04.2014
Сообщений: 17
05.11.2015, 20:16  [ТС]
Сделал все по вашему совету, но выскакивает ошибка при попытке добавить в базу
Code
1
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '? text) VALUES ('','fdg','2015-11-05','20:11:18','dfg', 'text')' at line 1
0
471 / 399 / 169
Регистрация: 04.01.2013
Сообщений: 1,675
05.11.2015, 20:19
Зачем знак вопроса перед text?
0
0 / 0 / 0
Регистрация: 18.04.2014
Сообщений: 17
05.11.2015, 20:22  [ТС]
Вопрос убрал. Появилось новое
Incorrect integer value: '' for column 'id' at row 1
0
471 / 399 / 169
Регистрация: 04.01.2013
Сообщений: 1,675
05.11.2015, 20:35
Потому что вы в id пытаетесь запихнуть пустое значение, скопируйте мой запрос из сообщения выше и вставьте в код
1
0 / 0 / 0
Регистрация: 18.04.2014
Сообщений: 17
05.11.2015, 20:39  [ТС]
спасибо большое. все получилось. тему можно закрывать
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
05.11.2015, 20:39
Помогаю со студенческими работами здесь

Не добавляет в базу
здравствуйте можете подсказать в чём тут дело?я вот написал скрипт добавления баннера на сайт и в таблице у меня указано поле place и img и...

Не добавляет в базу
Здравствуйте, я новичок в php, пытаюсь добавить новую запись в таблицу, но к сожалению не получается. Вот что я сделал: 1. Подключил...

Не добавляет в базу WP
Здравствуйте, я новичок в php, пытаюсь добавить новую запись в таблицу, но к сожалению не получается. Сайт на движке wordpress Вот что...

Не добавляет данные в базу
Здравствуйте написал вот такой запрос на при нажатии на кнопку нечего недобавляется в базу. &lt;? include(&quot;in/bd.php&quot;); ...

Не добавляет данные в базу
Столкнулся с проблемой, если в поле есть такой знак ' то insert into не работает. $id = ((mysql_num_rows($result))+1); $name...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru