Advertisement
Guest User

Untitled

a guest
Apr 24th, 2017
103
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 8.06 KB | None | 0 0
  1. <?php
  2. //Array carrito de compras.
  3. $data = $_SESSION['carrito'];
  4. $total = 0;
  5.  
  6. for ($i=0; $i<count($data); $i++) {
  7. ?>
  8.  
  9. <div class="holder-cesta">
  10. <h4><?php echo $data[$i]['Titulo']; ?></h4>
  11. <button class="eliminar" data-id="<?php echo $data[$i]['Id']; ?>">Eliminar</button>
  12. </div>
  13. <?php
  14. }
  15. ?>
  16.  
  17. $(document).ready(function() {
  18.  
  19. $(".eliminar").click(function(e) {
  20.  
  21. e.preventDefault();
  22. //Obtengo el id desde nuestro boton.
  23. var id = $(this).attr('data-id');
  24.  
  25. //Mi alert lanza correctamente el id associado.
  26. //alert(id);
  27. $(this).closest('.holder-cesta').remove();//Remueve correctamente
  28. //AJAX
  29. //Aqui viene mi problema,no obtengo var id en $.post y tampoco parece que vaya a la url eliminar.php
  30. $.post('./php/carro_compra/eliminar.php', {
  31. Id:id
  32. },function(a) {
  33. if (a=='0') {
  34. location.href="./cesta";
  35. }
  36. });
  37.  
  38.  
  39. });
  40. });
  41.  
  42. if ($arreglo[$i]['Id']!= $_POST['Id']) {
  43.  
  44. }
  45.  
  46. <?php
  47. //Session start
  48. session_start();
  49. //Get shoping cart data.
  50. $arreglo = $_SESSION['carrito'];
  51.  
  52. for ($i=0; $i<count($arreglo); $i++) {
  53. //Logica, si id del articulo es diferente a la variable obtenido por Ajax.
  54. if ($arreglo[$i]['Id']!= $_POST['Id']) {
  55.  
  56. $datosnuevos[] = ['Id' => $arreglo[$i]['Id'], 'Titulo' =>$arreglo[$i]['Titulo'], 'Precio' => $arreglo[$i]['Precio'], 'Icon' => $arreglo[$i]['Icon'], 'Cantidad' => $arreglo[$i]['Cantidad'] ];
  57. }
  58. }
  59.  
  60. if (isset($datosnuevos)) {
  61. //Modifico la sesion, dejando el resto de articulos comprados.
  62. $_SESSION['carrito'] = $datosnuevos;
  63. //Modificamos el valor del carro.
  64. $data = $_SESSION['carrito'];
  65. $value_carrito = count($data);
  66. $_SESSION['compras'] = $value_carrito;
  67. //Asi tambien se recarga la página con los datos actualizado
  68. echo "0";
  69.  
  70. } else {
  71. unset($_SESSION['carrito']);
  72. unset($_SESSION['compras']);
  73. echo "0";
  74. }
  75. ?>
  76.  
  77. $(this).closest('.holder-cesta').remove();//Remueve correctamente
  78.  
  79. $(document).ready(function() {
  80.  
  81. $(".eliminar").click(function(e) {
  82.  
  83. e.preventDefault();
  84. //Obtengo el id desde nuestro boton.
  85. var id = $(this).attr('data-id');
  86.  
  87. //Mi alert lanza correctamente el id associado.
  88. //alert(id);
  89. //AJAX
  90. //Aqui viene mi problema,no obtengo var id en $.post y tampoco parece que vaya a la url eliminar.php
  91. $.post('./php/carro_compra/eliminar.php', {
  92. Id:id
  93. },function(a) {
  94. if (a=='0') {
  95. location.href="./cesta";
  96. }
  97. });
  98. $(this).closest('.holder-cesta').remove();//Remueve correctamente
  99.  
  100. });
  101. });
  102.  
  103. //Carro de la compra
  104.  
  105. //Si esta definida la ID obtenido por URL
  106. if (isset($_GET['articulo'])) {
  107.  
  108. $id_tutorial = $_GET['articulo'];//Obtenemos el ID del tutorial añadido, para poder acer comprobaciones a mostrar otros resultados.
  109.  
  110. //Si esta definido la sesion carro -> es decir si ay algun articulo comprado
  111. if (isset($_SESSION['carrito'])) {
  112.  
  113. $arreglo = $_SESSION['carrito'];
  114. $encontro = false;
  115.  
  116. for ($i=0; $i<count($arreglo); $i++) {
  117.  
  118. if ($arreglo[$i]['Id'] == $_GET['articulo']) {
  119. $encontro = true;
  120. }
  121. }
  122.  
  123. if ($encontro == false) {
  124.  
  125.  
  126. $titulo = "";
  127. $precio = 0;
  128. $precioUSD = 0;
  129. $icon = "";
  130.  
  131. $stmt = $c->prepare("SELECT titulo,precio,icon,id_autor FROM tutoriales WHERE page=? and status=1");
  132. $stmt->bind_param("i",$_GET['articulo']);
  133. $stmt->execute();
  134. $stmt->store_result();
  135. if ($stmt->num_rows > 0) {
  136. $stmt->bind_result($titulo,$precio,$icon,$id_autor);
  137. while ($stmt->fetch()) {
  138.  
  139. //Sentencia prepare -> autor proyecto
  140. $stmtN = $c->prepare("SELECT autor FROM autor WHERE id_autor=?");
  141. $stmtN->bind_param("i", $id_autor);
  142. $stmtN->execute();
  143. $stmtN->bind_result($autor);
  144. $stmtN->fetch();
  145. $stmtN->close();
  146.  
  147. $datosnuevos = array('Id' => $_GET['articulo'], 'Titulo' => $titulo, 'Precio' => $precio, 'Icon' => $icon, 'Cantidad' => 1 );
  148.  
  149. /*
  150. #Si se utiliza array_push() para añadir un solo elemento al array, es mejor utilizar $array[] = ya que de esta forma no existe la sobrecarga de llamar a una función.
  151. */
  152.  
  153. //array_push($arreglo, $datosnuevos);
  154. $arreglo[] = $datosnuevos;
  155. $_SESSION['carrito'] = $arreglo;
  156.  
  157. $data = $_SESSION['carrito'];
  158. $value_carrito = count($data);
  159. $_SESSION['compras'] = $value_carrito;
  160.  
  161. } $stmt->close();
  162.  
  163.  
  164. } else {
  165. $stmt->close();
  166. }
  167. }
  168.  
  169. } else { //Caso falso añadimos primer articulo al carro
  170.  
  171. $titulo = "";
  172. $precio = 0;
  173. $precioUSD = 0;
  174. $icon = "";
  175.  
  176. $stmt = $c->prepare("SELECT titulo,precio,icon,id_autor FROM tutoriales WHERE page=? and status=1");
  177. $stmt->bind_param("i",$_GET['articulo']);
  178. $stmt->execute();
  179. $stmt->store_result();
  180. if ($stmt->num_rows > 0) {
  181. $stmt->bind_result($titulo,$precio,$icon,$id_autor);
  182. while ($stmt->fetch()) {
  183.  
  184. //Sentencia prepare -> autor proyecto
  185. $stmtN = $c->prepare("SELECT autor FROM autor WHERE id_autor=?");
  186. $stmtN->bind_param("i", $id_autor);
  187. $stmtN->execute();
  188. $stmtN->bind_result($autor);
  189. $stmtN->fetch();
  190. $stmtN->close();
  191.  
  192. } $stmt->close();
  193.  
  194. } else {
  195. $stmt->close();
  196. }
  197.  
  198. $arreglo[] = array('Id' => $_GET['articulo'], 'Titulo' => $titulo, 'Precio' => $precio, 'Icon' => $icon, 'Cantidad' => 1 );
  199.  
  200. $_SESSION['carrito'] = $arreglo;
  201.  
  202. $data = $_SESSION['carrito'];
  203. $value_carrito = count($data);
  204. $_SESSION['compras'] = $value_carrito;
  205.  
  206. //echo "<script>window.location.reload();</script>";
  207.  
  208.  
  209. }
  210.  
  211. }
  212.  
  213. <?php //Mostramos resultados carro de la compra.
  214.  
  215. //Resetemos el total.
  216. $total = 0;
  217.  
  218. //Si esta definido la sesión.
  219. if (isset($_SESSION['carrito'])) {
  220.  
  221. //Array con datos carrito.
  222. $data = $_SESSION['carrito'];
  223. $total = 0;
  224.  
  225. //Recorremos todo el array, para salida de datos.
  226. for ($i=0; $i<count($data); $i++) {
  227. ?>
  228.  
  229. <div class="holder-cesta">
  230. <h4><?php echo $data[$i]['Titulo']; ?></h4>
  231. <p><?php echo $data[$i]['Precio']; ?></p>
  232. <?php
  233. $total = ($data[$i]['Cantidad'] * $data[$i]['Precio']) + $total;
  234. ?>
  235.  
  236. <button class="eliminar" data-id="<?php echo $data[$i]['Id']; ?>">Eliminar</button>
  237.  
  238. </div>
  239.  
  240. <?php
  241. }
  242. } else {
  243. echo "0 articulos";
  244. } unset($arreglo);
  245. ?>
  246.  
  247. <?php
  248. //Session start
  249. session_start();
  250. //Get shoping cart data.
  251. $arreglo = $_SESSION['carrito'];
  252.  
  253. //Reset.
  254. $arr[] ='';
  255.  
  256.  
  257. var_dump($arreglo);
  258.  
  259. //var_dump($_POST['Id']);
  260.  
  261. for ($i=0; $i<count($arreglo); $i++) {
  262.  
  263. if ($arreglo[$i]['Id']!= $_POST['Id']) {
  264.  
  265. //$datosnuevos = ['Id' => $arreglo[$i]['Id'], 'Titulo' =>$arreglo[$i]['Titulo'], 'Precio' => $arreglo[$i]['Precio'], 'Icon' => $arreglo[$i]['Icon'], 'Cantidad' => $arreglo[$i]['Cantidad'] ];
  266. $arr[] =$arreglo[$i]
  267. }
  268. }
  269.  
  270. if (isset($arr)) {
  271.  
  272. $_SESSION['carrito'] = $arr;
  273.  
  274. $data = $_SESSION['carrito'];
  275. $value_carrito = count($data);
  276. $_SESSION['compras'] = $value_carrito;
  277.  
  278. } else {
  279. unset($_SESSION['carrito']);
  280. unset($_SESSION['compras']);
  281. echo "0";
  282. }
  283. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement