@Gorthaur

Как отправить данные в MySQL с помощью PHP?

Коллеги, не пойму, почему данные не добавляются в БД?
Форма отправки
<meta charset="UTF-8">
<form method="post" action="action.php">
  Адрес: <input size="255" name="address" type="text">
  IP-сервера: <input size="255" name="IP" type="text">
  <input value="Добавить запись" type="submit" name="submit">
  </form>

Скрипт обработки
<?php header('Content-Type: text/html; charset=utf-8');
 include ('db.php');
 error_reporting (E_ALL);
 if(isset($_POST['submit']))

 $address = $_POST['address']; 
 $IP = $_POST['IP']; 
 $sql = 'INSERT INTO table(address, IP, Login, TV, Terminal, monitoring)
 VALUES("'.$address.'", "'.$IP.'", "'.$IP.'", "'.$IP.'", "'.$IP.'", "'.$IP.'")';
// проверка
 if(!mysql_query($sql))
 {echo '<center><p><b>Ошибка при добавлении данных!</b></p></center>';}
 else
 {echo '<center><p><b>Данные добавлены!</b></p></center>';}
?>


на экране только это:
Подключение к базе данных adminka выполнено.

Ошибка при добавлении данных!


Ошибок никаких не выдает. В поле IP могут присутствовать точки, но насколько я помню это не критично?
  • Вопрос задан
  • 1268 просмотров
Решения вопроса 1
DevMan
@DevMan
покажите схему DB.
ну и использовать mysql_* - моветон.
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
eruditecat
@eruditecat
Красноглазик
Сервер MySQL возвращает интерпретатору сообщение об ошибке — разберитесь, как его вывести. Используйте возможности PDO. Изучите, оно того стоит.

Помимо всего прочего,
if(isset($_POST['submit']))        // у Вас по данному условию выполняется только
   $address = $_POST['address'];   // это

// А вот всё следующее выполняется В ЛЮБОМ СЛУЧАЕ:

$IP = $_POST['IP'];
$sql = 'INSERT INTO table(address, IP, Login, TV, Terminal, monitoring) '
    . 'VALUES("'.$address.'", "'.$IP.'", "'.$IP.'", "'.$IP.'", "'.$IP.'", "'.$IP.'")';

// проверка
if(!mysql_query($sql)) {
    echo '<center><p><b>Ошибка при добавлении данных!</b></p></center>';
} else {
    echo '<center><p><b>Данные добавлены!</b></p></center>';
}
Ответ написан
Комментировать
nazarpc
@nazarpc
Open Source enthusiast
1. Распечатайте содержимое $sql, выполните в PhpMyAdmin, внимательно читайте что за ошибка
2. Не используйте mysql_* функции, они устарели, а в последней версии PHP отсутствуют совсем
3. Не подставляйте данные напрямую, нужно ИСКЛЮЧИТЕЛЬНО через подготовленные выражения
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
11 мая 2024, в 06:09
30000 руб./за проект
11 мая 2024, в 00:19
1000 руб./за проект
10 мая 2024, в 23:51
30000 руб./за проект