Member 13783315 Ответов: 1

Как обновить категорию под постом


Я хочу обновить категорию поста например

если сообщение подпадает под категорию --> cricket и подкатегорию ODI я хочу добавить сообщение под тестом также Как обновить так чтобы сообщение подпадало под тест Cricket ODI

А если я уберу Оди и тестирую то пост должен попадать только под крикет,

Как это сделать, пожалуйста, помогите мне его срочно. Заранее спасибо

Что я уже пробовал:

connect_error) {
    die("Connection failed: " . $conn->connect_error);
} 


$post_id = '50';


echo "";

$sql1 = mysqli_query($conn, "SELECT * FROM category WHERE p_id = 0");
while ($row=mysqli_fetch_array($sql1)) {

	$new_id = $row['id'];

	$sql2 = mysqli_query($conn, "SELECT * FROM assign_category WHERE post_id = $post_id AND category_id=$new_id");
	$row2 = mysqli_fetch_array($sql2);

	$assign_id = $row2['category_id'];

	if ($new_id == $assign_id) {
		# code...
		#echo $row['category']." tick"."";
		?>
		" checked> 
		";
		?>
		"> 
		";
			?>
			" checked> 
			";
			?>
			"> 
			";
echo "";
echo "";

?>

/******updateed.php**********/

connect_error) {
    die("Connection failed: " . $conn->connect_error);
} 
if(isset($_POST['submit']))
{
	$cat = $_POST['maincat'];

	foreach ($_POST['maincat'] as $key => $value) {
		# code...
		$stmt="INSERT IGNORE INTO assign_category (post_id, category_id, status) VALUES ('50', '$value', '1') ON DUPLICATE KEY UPDATE category_id='$value'";
    	$res = mysqli_query($conn, $stmt);

    if ($res) {
    	# code...
    	echo "Success";
    }
    else
    {
    	echo "fail";
    }
	}
}

?>

Richard MacCutchan

Это определенно не срочно.

Member 13783315

Кто ты такой, чтобы решать, срочно это или нет. Если вы знаете ответ, Пожалуйста, ответьте или еще спасибо

Richard MacCutchan

Я здесь всего лишь член, как и все остальные тысячи. И сказать, что ваш вопрос является срочным, это то же самое, что сказать: "я более важен, чем другие люди, которые задают вопросы". Поэтому, пожалуйста, просто напишите свой вопрос с техническими деталями, и будьте терпеливы, и с вами будут обращаться так же, как и со всеми остальными.

Member 13783315

Пожалуйста, пройдите через вопрос, все объяснено.

Member 13783315

Предположим, что если сообщение попадает в спортивную категорию, просто нужно обновить его, чтобы оно также могло попасть в категорию футбола, а также спорта

1 Ответов

Рейтинг:
0

Patrice T

$sql2 = mysqli_query($conn, "SELECT * FROM assign_category WHERE post_id = $post_id AND category_id=$new_id");

Не обязательно решение вашего вопроса, но у вас есть еще одна проблема.
Никогда не создавайте SQL-запрос путем объединения строк. Рано или поздно вы сделаете это с помощью пользовательских вводов, и это откроет дверь к уязвимости под названием "SQL-инъекция", она опасна для вашей базы данных и подвержена ошибкам.
Одна кавычка в имени - и ваша программа выйдет из строя. Если пользователь вводит имя, например "Брайан О'Коннер", может привести к сбою вашего приложения, это уязвимость SQL-инъекции, и сбой-это наименьшая из проблем, вредоносный пользовательский ввод, и он продвигается к командам SQL со всеми учетными данными.
SQL-инъекция - Википедия[^]
SQL-инъекция[^]
Атаки SQL-инъекций на примере[^]
PHP: SQL-инъекция - руководство пользователя[^]
Шпаргалка по предотвращению инъекций SQL - OWASP[^]
Как я могу объяснить SQL-инъекцию без технического жаргона? - Обмен Стеками Информационной Безопасности[^]