Как вытащить определённый id через ajax
Нужно вытаскивать определённый id товара. Но не знаю как связать js и php, да и вроде как это не возможно, поэтому прошу помочь с вопросом как передать id страницы(он же id товара), чтобы вытянуть нужный мне товар.
var counter = 0;
function addto()
{
var counter_same_product = 0;
var id = $(".product-image-wrapp").attr("data-id");
var product_data = new Array();
$.ajax(
{
url: "../assets/php/product_get_item.php",
dataType: "json",
data: {product_data: product_data},
async: false,
success: function(data)
{
product_data = data;
}
})
console.log(product_data);
var serialObj = JSON.stringify(product_data);
localStorage.setItem("product", serialObj);
var obj = JSON.parse(localStorage.getItem("product"));
counter_same_product++;
counter++;
localStorage.setItem("counter", counter);
}
php
$query = "SELECT * FROM products";
$sql = mysqli_query($connect, $query);
$result = mysqli_fetch_array($sql);
$arr = array("id" => $result["id"],
"name" => $result["product_name"],
"description" => $result["product_description"],
"price" => $result["price"],
"size" => $result["product_size"],
"type" => $result["type"]
);
echo json_encode($arr);
?>
мой урл(mysite.ru/pages/product-cart?id=2)
Заранее спасибо
Ответы (1 шт):
Автор решения: Istinnavvine
→ Ссылка
function getUrlValue(varName) { //Функция для получения значения переменной в URL
var split = $(location).attr('href').split('?');
var value = '';
if (split.length == 2) {
split = split[1].split('&');
for (var i = 0; i < split.length; i+=1) {
var keyValue = split[i].split('=');
if (keyValue.length == 2 && keyValue[0] == varName) {
value = keyValue[1];
break;
}
}
}
return value;
}
var counter = 0;
function addto() // Функция добавления в корзину
{
var counter_same_product = 0;
var id = getUrlValue("id");
var product_data = new Array();
$.ajax(
{
url: "../assets/php/product_get_item.php?id="+id, // передаем переменную в php script
dataType: "json",
type: "GET",
data: {'product_data' : id},
async: false,
success: function(data)
{
product_data = data;
}
})
console.log(product_data);
var serialObj = JSON.stringify(product_data);
localStorage.setItem("product", serialObj);
var obj = JSON.parse(localStorage.getItem("product"));
counter_same_product++;
counter++;
localStorage.setItem("counter", counter);
}
JS
<?
require_once("connect.php");
$id = $_GET["id"]; // Получаем отправленную переменную
$query = "SELECT * FROM products where id=".$id; //Выбираем все продукты с данным id
$sql = mysqli_query($connect, $query);
$result = mysqli_fetch_array($sql);
$arr = array("id" => $result["id"], // Создаем массив данных о продукте
"name" => $result["product_name"],
"description" => $result["product_description"],
"price" => $result["price"],
"size" => $result["product_size"],
"type" => $result["type"]
);
echo json_encode($arr); // генерируем массив для отправки в LocalStorage
?>
php