PHP - Carrito de compras

 
Vista:

Carrito de compras

Publicado por Raul gomez (6 intervenciones) el 14/05/2020 17:48:28
Buenos días, estoy realizando un carrito de compras, pero al correr el codigo me marca error en la linea 29 y la verdad no se que este mal en el codigo.

Este es el error que manda: Parse error: syntax error, unexpected ''modelo'' (T_CONSTANT_ENCAPSED_STRING), expecting ')' in C:\xampp\htdocs\flamestore\flamestore\flamecarrito\carritodecompras.php on line 29

Espero y me ayuden por favor. Que tengan buen día.

Y este es el codigo del carrito:
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
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
php
	session_start();
	include 'conexion.php';
	if(isset($_SESSION['carrito'])){
		if (isset($_GET['id_tenis'])){
		$arreglo=$_SESSION['carrito'];
		$encontro=false;
		$numero=0;
		for($i=0;$i<count($arreglo);$i++){
			if ($arreglo[$i]['Id_tenis']==$_GET['id_tenis']) {
				$encontro=true;
				$numero=$i;
			}
		}
		if ($encontro==true) {
			$arreglo[$numero]['Cantidad']=$arreglo[$numero]['Cantidad']+1;
			$_SESSION['carrito']=$arreglo;
		}else{
			$modelo="";
			$precio=0;
			$imagen="";
			$re=mysqli_query($con,"SELECT * FROM tenis WHERE id_tenis=".$_GET['id_tenis']);
			while($f=mysqli_fetch_array($re)){
				$modelo=$f['modelo'];
				$precio=$f['precio'];
				$imagen=$f['imagen'];
			}
			$datosNuevos=array('Id_tenis'=>$_GET['id_tenis']
							'modelo'=>$modelo,
							'precio'=>$precio,
							'imagen'=>$imagen,
							'Cantidad'=>1);
 
			array_push($arreglo, $datosNuevos);
			$_SESSION['carrito']=$arreglo;
			}
		}
 
 
	}else{
		if(isset($_GET['id_tenis'])){
			$modelo="";
			$precio=0;
			$imagen="";
			$re=mysqli_query($con"SELECT * FROM tenis WHERE id_tenis=".$_GET['id_tenis']);
			while($f=mysqli_fetch_array($re)){
				$modelo=$f['modelo'];
				$precio=$f['precio'];
				$imagen=$f['imagen'];
			}
			$arreglo[]=array('Id_tenis'=>$_GET['id_tenis']
							'Modelo'=>$modelo,
							'Precio'=>$precio,
							'Imagen'=>$imagen,
							'Cantidad'=>1);
		}
	}
 ?>
<!DOCTYPE html>
<html lang="es">
<head>
	<meta charset="utf-8">
	<title></title>
	<link rel="stylesheet" type="text/css" href="">
	<script type="text/javascript" src="js/scripts.js"></script>
	<script type="text/javascript" src="http://code.jquery.com/jquery-1.10.2.min.js"></script>
</head>
<body>
	<header>
		<h1>CARRITO DE COMPRAS</h1>
		<a href="carritodecompras.php" title="VER CARRITO DE COMPRAS"><img src="./imagenes/carrito.png"></a>
	</header>
	<section>
		<?php
			$total=0;
			if (isset($_SESSION['carrito'])) {
			$datos=$_SESSION['carrito'];
			$total=0;
			for($i=0;$i<count($datos);$i++){
		?>
			<div class="producto">
				<center>
					<img src="productosimg/<?php echo $datos[$i]['Imagen']; ?>" width="20">
					<span><?php echo $datos[$i]['Modelo'] ?></span><br>
					<span>Precio: <?php echo $datos[$i]['Precio'] ?></span><br>
					<span>Cantidad<input type="text" value="<?php echo $datos[$i]['Cantidad']; ?>" data-precio="<?php echo $datos[$i]['Precio'] ?>"data_id="<?php echo $datos [$i]['Id_tenis'];?>" id_tenis="cantidad"></span><br>
					<span class="subtotal">Subtotal: <?php echo $datos[$i]['Cantidad']*$datos; ?></span>
				</center>
			</div>
		<?php
		$total=($datos[$i]['Cantidad']*$datos[$i]['Precio'])+$total;
				}
			}else{
				echo '<center><h2>EL CARRITO ESTA VACIO</h2></center>';
			}
			echo '<center><h2 id="total">TOTAL: '.$total.'</h2></center>';
 
		 ?>
		 <center><a href="./">VER PRODUCTOS</a></center>
	</section>
</body>
</html>
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de javier
Val: 1.542
Bronce
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Carrito de compras

Publicado por javier (547 intervenciones) el 14/05/2020 18:03:25
hola,

tienes errores de sintaxis

estaria bien asi:

1
2
3
4
$id_tenis = $_GET['id_tenis'];
$query = "SELECT * FROM tenis WHERE id_tenis= $id_tenis";
 
$re = mysqli_query($con, $query);

y en dos arrays te falta una coma en cada uno.

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

Carrito de compras

Publicado por Raul gomez (6 intervenciones) el 14/05/2020 18:55:13
Ese error de consulta seria en la linea 29 o en que linea?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de javier
Val: 1.542
Bronce
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Carrito de compras

Publicado por javier (547 intervenciones) el 14/05/2020 19:15:05
en la linea 29 del post de arriba corresponde a un array al que le falta una coma
mira bien su estructura, tal cual la tienes, se ve de lejjos que falta una coma
y si usaras por ejemplo Visual Studio Code o similares te estaria marcando error antes de ejecutar, te subrayaria en rojo el error


1
2
3
4
5
$datosNuevos=array('Id_tenis'=>$_GET['id_tenis']// cambia el comentario por una coma
							'modelo'=>$modelo,
							'precio'=>$precio,
							'imagen'=>$imagen,
							'Cantidad'=>1);

saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Carrito de compras

Publicado por Raul gomez (6 intervenciones) el 14/05/2020 19:39:54
Ya solucione el problema, pero me salio otro al intentar agregar el producto al carrito no lo agrega y no me marca como tal el error. Podras ayudarme?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de javier
Val: 1.542
Bronce
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Carrito de compras

Publicado por javier (547 intervenciones) el 14/05/2020 19:45:16
Claro.

donde no te lo agrega??

aqui?

1
2
array_push($arreglo, $datosNuevos);
$_SESSION['carrito']=$arreglo;
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Carrito de compras

Publicado por Raul gomez (6 intervenciones) el 14/05/2020 19:58:49
Mira para serte sincero, vi una serie de videos en la cual hace todo este codigo y soy un poco nuevo en esto y no sabria decirte en que parte es donde se agrega al carrito.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de javier
Val: 1.542
Bronce
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Carrito de compras

Publicado por javier (547 intervenciones) el 14/05/2020 20:33:50
es que sin conocimientos de PHP casi que te tendria que dar un curso

Tomate unas semanas, hay cursos gratuitos de PHP a montones en la red
O puedes pagar por un video curso, que por 15 o 20 euros los tienes completos en multitul de paginas.

Yo ahora para saber que pasa deberia de analizar muchas lineas de codigo y su comportamiento, para luego darte un resultado que no vas a entender.

a demas, yo no se que hay en estos dos archivos

'conexion.php'
y en
carritodecompras.php

si aqui

1
2
array_push($arreglo, $datosNuevos);
$_SESSION['carrito']=$arreglo;

noo agrega nada al carrito puede ser por que $arreglo este vacio y no tenga ningun valor


saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Carrito de compras

Publicado por Raul gomez (6 intervenciones) el 14/05/2020 20:44:22
Mira este seria el de la conexion:
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
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
<?php
	$server="localhost";
	$username="root";
	$password="";
	$db='flamestore';
	$con=mysqli_connect($server,$username,$password)or die("no se ha podido establecer la conexion");
	$sdb=mysqli_select_db($con,$db)or die("la base de datos no existe");
 ?>
 
y el del carrito es este:
<?php
	session_start();
	include 'conexion.php';
	if(isset($_SESSION['carrito'])){
		if (isset($_GET['id_tenis'])){
		$arreglo=$_SESSION['carrito'];
		$encontro=false;
		$numero=0;
		for($i=0;$i<count($arreglo);$i++){
			if ($arreglo[$i]['Id_tenis']==$_GET['id_tenis']) {
				$encontro=true;
				$numero=$i;
			}
		}
		if ($encontro==true) {
			$arreglo[$numero]['Cantidad']=$arreglo[$numero]['Cantidad']+1;
			$_SESSION['carrito']=$arreglo;
		}else{
			$modelo="";
			$precio=0;
			$imagen="";
			$re=mysqli_query($con,"SELECT * FROM tenis WHERE id_tenis=".$_GET['id_tenis']);
			while($f=mysqli_fetch_array($re)){
				$modelo=$f['modelo'];
				$precio=$f['precio'];
				$imagen=$f['imagen'];
			}
			$datosNuevos=array('Id_tenis'=>$_GET['id_tenis'],
							'Modelo'=>$modelo,
							'Precio'=>$precio,
							'Imagen'=>$imagen,
							'Cantidad'=>1);
 
			array_push($arreglo, $datosNuevos);
			$_SESSION['carrito']=$arreglo;
			}
		}
 
 
	}else{
		if(isset($_GET['id_tenis'])){
			$modelo="";
			$precio=0;
			$imagen="";
			$re=mysqli_query($con,"SELECT * FROM tenis WHERE id_tenis=".$_GET['id_tenis']);
			while($f=mysqli_fetch_array($re)){
				$modelo=$f['modelo'];
				$precio=$f['precio'];
				$imagen=$f['imagen'];
			}
			$arreglo[]=array('Id_tenis'=>$_GET['id_tenis'],
							'Modelo'=>$modelo,
							'Precio'=>$precio,
							'Imagen'=>$imagen,
							'Cantidad'=>1);
		}
	}
 ?>
<!DOCTYPE html>
<html lang="es">
<head>
	<meta charset="utf-8">
	<title></title>
	<link rel="stylesheet" type="text/css" href="">
	<script type="text/javascript" src="js/scripts.js"></script>
	<script type="text/javascript" src="http://code.jquery.com/jquery-1.10.2.min.js"></script>
</head>
<body>
	<header>
		<h1>CARRITO DE COMPRAS</h1>
		<a href="carritodecompras.php" title="VER CARRITO DE COMPRAS"><img src="img/carrito.png" width="120"></a>
	</header>
	<section>
		<?php
			$total=0;
			if (isset($_SESSION['carrito'])) {
			$datos=$_SESSION['carrito'];
			$total=0;
			for($i=0;$i<count($datos);$i++){
		?>
			<div class="producto">
				<center>
					<img src="productosimg/<?php echo $datos[$i]['Imagen']; ?>" width="20">
					<span><?php echo $datos[$i]['Modelo'] ?></span><br>
					<span>Precio: <?php echo $datos[$i]['Precio'] ?></span><br>
					<span>Cantidad<input type="text" value="<?php echo $datos[$i]['Cantidad']; ?>" data-precio="<?php echo $datos[$i]['Precio'] ?>"data_id="<?php echo $datos [$i]['Id_tenis'];?>" id_tenis="cantidad"></span><br>
					<span class="subtotal">Subtotal: <?php echo $datos[$i]['Cantidad']*$datos; ?></span>
				</center>
			</div>
		<?php
		$total=($datos[$i]['Cantidad']*$datos[$i]['Precio'])+$total;
				}
			}else{
				echo '<center><h2>EL CARRITO ESTA VACIO</h2></center>';
			}
			echo '<center><h2 id="total">TOTAL: '.$total.'</h2></center>';
 
		 ?>
		 <center><a href="./">VER PRODUCTOS</a></center>
	</section>
</body>
</html>

Y es que en si ya no me marca ningun error, lo que no hace es que el producto no se agrega.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de javier
Val: 1.542
Bronce
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Carrito de compras

Publicado por javier (547 intervenciones) el 14/05/2020 20:36:26
en el video lo explicará, no?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Carrito de compras

Publicado por Raul gomez (6 intervenciones) el 14/05/2020 20:24:15
Si es esa parte la que agrega el producto.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar