#php
#php
Вопрос:
Я создал простую функцию корзины покупок, но теперь у меня 2 проблемы. 1. мой список товаров настолько велик, что моя корзина и мой список товаров находятся на одной странице. Когда посетитель нажимает на кнопку добавить, перезагрузка занимает слишком много времени, как заставить это работать без обновления страницы товара, я имею в виду добавление товара в корзину без обновления страницы товара? И моя вторая проблема в том, что мне нужна функция обновления ассортимента товара, как я могу создать функцию обновления товара из этой функции корзины? Вот мой код
<?php
session_start();
$page = 'producst.php';
// my add function
if (isset($_GET['add'])) {
$quantity = mysql_query('SELECT id, quantity FROM products WHERE id='.mysql_real_escape_string((int)$_GET['add']));
while ($quantity_row = mysql_fetch_assoc($quantity)) {
if ($quantity_row['quantity']!=$_SESSION['cart_'.(int)$_GET['add']]){
$_SESSION['cart_'.(int)$_GET['add']] ='1';
}
}
header('Location: '.$page);
}
// my product list function
function products(){
$result = '';
$get = mysql_query('SELECT id, name, description, price FROM products WHERE quantity > 0 ORDER BY id DESC');
if (mysql_num_rows($get)==0) {
}else{
while ($get_row = mysql_fetch_assoc($get)) {
$result .= '<p>'.$get_row['name'].'<br />'.$get_row['description'].'<br />amp;pound;'.$get_row['price'].' <a href="cart.php?add='.$get_row['id'].'">add</a></p>';
}
}
return $result;
}
// my cart function
function cart() {
$result = '';
foreach($_SESSION as $name => $value){
if ($value>0) {
if (substr($name, 0, 5)=='cart_') {
$id = substr($name, 5, (strlen($name)-5));
$get = mysql_query('SELECT id, name, price FROM products WHERE id='.mysql_real_escape_string((int)$id));
while ($get_row = mysql_fetch_assoc($get)) {
$sub = $get_row['price']*$value;
$result .= $get_row['name'].' x '.$value.' @ amp;pound;'.$get_row['price'].' = amp;pound;'.$sub.'<br />';
}
}
}
}
return $result;
}
?>
Ответ №1:
Вам пришлось бы использовать JavaScript и AJAX для отправки запросов вашему PHP-скрипту без перезагрузки страницы. PHP запускается на вашем сервере, в то время как JavaScript запускается в браузере и взаимодействует с ним.
Проведите некоторое исследование об AJAX (посмотрите на фреймворк jQuery, если хотите).
Комментарии:
1. можете ли вы предоставить код javascript, который выполняет запрос к php, без перезагрузки, потому что я новичок и сейчас учусь. я пытался загрузить jquery, но это выбивает меня из колеи и у меня не работает.