Member 14787635 Ответов: 1

Кому отправить select value на другую PHP страницу


Я не использую кнопку Отправить

Я хочу, чтобы выбранное значение от пользователя было отправлено в test1.php страница
но когда пользователь выбирает опцию ничего не происходит на странице
и значение не отправить его в test1.php страница
Есть ли какая-то ошибка в моем коде или я что-то пропустил ?
пожалуйста помочь

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

test2.php
<?php
include_once 'database.php';
?>

<p> Filter By Category</p>
<select id="category" class="category">
	<?php	$query = mysqli_query($conn,"select * from category ");
		while($category = mysqli_fetch_array($query)) {
			echo "<option value='" . $category['cat_name'] . "'>" . $category['cat_name'] . "</option> ";
		}
	?>
</select>

<script>
$(function() {
	$('.category').change(function() {
		$.ajax({
			method: "POST",
			url: "test1.php",
			data: { category1: $(this).val() },
			success: function(data){
				console.log(data);
			}
		});
	});
});
</script>
test1.php
<?php
include_once 'database.php';

if (isset($_POST['category1'])) {
	$category = $_POST['category1'];
	echo $category;
}
?>

1 Ответов

Рейтинг:
1

MadMyche

В общем
То, что вам нужно будет сделать, это использовать отладчик который встроен в большинство браузеров. Вы должны быть обеспокоены двумя вкладками на нем; сеть и приставка.

Вкладка сеть будет использоваться для просмотра сетевой активности, когда вы вносите изменения в свой компьютер. select элемент. Вы можете посмотреть, к какому URL-адресу осуществляется доступ, какие данные отправляются и какой ответ получен.

На вкладке консоль вы собираетесь посмотреть, есть ли какие-либо ошибки в вашем javascript.

Ссылка:
Хром Инструменты Разработчика  |  Инструменты для веб-разработчиков  |  Разработчики Google[^]



Теперь о вашем коде...
Поскольку вы не делаете фактическую отправку формы, она не будет менять страницы с тем, что у вас есть.
IF ваш код работает так, как он написан, он будет просто отправлять выбранный значение для Test1, которое затем вернет его дословно.
А затем Test2 будет отображать это значение в консоли javascript.
И это все

Также... Test1 имеет ссылку на базу данных include, которая не используется в коде