@HeartOfProgrammer

Как остановить запрос в базу данных MySQL?

Допустим есть код:
$title = $_POST['title_news'];
	$firstDescription = $_POST['first_content'];
	$secondDescription = $_POST['second_content'];
	$added = $_POST['added'];

	if(isset($_POST['title_news']) && !empty($_POST['title_news'])) {
	}else{
		echo "Заполните названия новости" . "</br>";
	}

	if(isset($_POST['first_content']) && !empty($_POST['first_content'])) {
	}else{
		echo "Заполните описания новости" . "</br>";
	}

	if(isset($_POST['second_content']) && !empty($_POST['second_content'])) {
	}else{
		echo "Заполните полное описания новости";
	}

	if(isset($_POST['added']) && !empty($_POST['added'])) {
	}else{
		echo "Заполните поле Автор";
	}

	$sql = "
		INSERT INTO news (title, first_description, second_description, added)
		VALUES ('$title', '$firstDescription', '$secondDescription', '$added')
	";

	if(!$connection) {
		die('Ошибка при соединении: ' . mysqli_error());
	}

	$res = mysqli_query($connection, $sql)
		or die('Ошибка при выполнении запроса к базе данных.');
	mysqli_close($connection);


Надо сделать так: При занесение данных в поля, данные проходили проверку, и если проверка true то данные занеслись в бд. А то получается контент проверку не прошел и в базу данных заносится.
  • Вопрос задан
  • 689 просмотров
Решения вопроса 1
@Psaproxy
Web-разработчик
Если у Вас этот код вне функции/класса, то будет достаточно в логику проверки контента, там где произошла ошибка, добавить команду завершение работы "exit". В Вашей логике это блоки, в которых "echo" с сообщением об ошибке. Алгоритм будет следующий:
- если во время проверки контента произошла ошибка, то вывести сообщение и завершить работу
- если контент был проверен и ошибок не было, то добавить запись в БД
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
Ivanq
@Ivanq
Знаю php, js, html, css
Ставите при ошибке $err=1; и проверяете: if($err) { выполняем запрос; }
Можно также написать вместо echo - die();
Ответ написан
Комментировать
martin74ua
@martin74ua Куратор тега MySQL
Linux administrator
кхм... включаем голову.

$error =0 ; добавляем в начале

$error =1; добавляем в каждый блок, который выводит сообщение об ошибке

ну и запрос выполняем в том случае, если $error == 0;

вы уверены, что программирование - это ваше? Может бросить пока не поздно?

ЗЫ.Модераторы, дайте возможность оценивать вопросы....
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы