Carrito de compras no conserva productos
Publicado por Giuliano (74 intervenciones) el 31/08/2018 18:26:05
Estoy haciendo un carrito de compras con Ajax y php y no me devuelve los productos que agrego. El log de la consola da array vacio.
Tengo en JQuery:
Y mi php que trabaja con sessiones es:
Alguien me puede ayudar? no da error pero devuelve vacio.
Tengo en JQuery:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
$(document).ready(function() {
listarDetalle();
});
function listarDetalle(){
var accion="listar";
$.ajax({
type: "POST",
url: "//localhost/gestionweb/includes/php/procesoDetalle.php",
data: { "accion":accion},
dataType:'json',
error: function(){
alert("error petición ajax");
},
success: function(data){
console.log(data);
for (var i = 0; i < data.length; i++) {
var newRow =
"<tr>" +
"<td>" + data[i].idproducto + "</td>" +
"<td>" + data[i].nombre + "</td>"
"<td>" + data[i].marca + "</td>" +
"<td>" + data[i].cantidad + "</td>" +
"<td><input type='radio' id='"+data[i].idproducto+"' name='seleccion'/></td>"+
"</tr>";
$(newRow).appendTo("#ticket tbody");
} }
}).fail( function( jqXHR, textStatus, errorThrown ) {
if (jqXHR.status === 0) {
alert('Not connect: Verify Network.');
} else if (jqXHR.status == 404) {
alert('Requested page not found [404]');
} else if (jqXHR.status == 500) {
alert('Internal Server Error [500].');
} else if (textStatus === 'parsererror') {
alert('Requested JSON parse failed.');
} else if (textStatus === 'timeout') {
alert('Time out error.');
} else if (textStatus === 'abort') {
alert('Ajax request aborted.');
} else {
alert('Uncaught Error: ' + jqXHR.responseText);
}
});;
};
Y mi php que trabaja con sessiones es:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
<?php
include ("../../models/claseTicket.php");
if (isset($_POST['accion'])){
if ($_POST['accion']=="listar"){
session_start();
if(isset($_SESSION['carrito'])){
$carrito = $_SESSION['carrito'];
echo json_encode($carrito);
}else{
$carrito = array();
echo json_encode($carrito);
}
}else if ($_POST['accion']=="agregar"){
$detalle = new detalleTicket();
$detalle->id = $_POST['id'];
$detalle->precio = $_POST['precio'];
$detalle->cantidad = $_POST['cantidad'];
$detalle->nombre = $_POST['nombre'];
session_start();
if(isset($_SESSION['carrito'])){
$carrito = $_SESSION['carrito'];
} else {
$carrito = array();
}
array_push($carrito, $detalle);
$_SESSION['carrito'] = $carrito;
}
}
?>
Alguien me puede ayudar? no da error pero devuelve vacio.
Valora esta pregunta
0