viernes, octubre 26, 2012

Filled Under: , , ,

Carrito de la compra en PHP y MySQL

viernes, octubre 26, 2012


En esta ocasión quiero compartir con ustedes un sistema de carrito de la compra básico hecho en PHP usando una base de datos hecha en MySQL.

El sistema se hizo usando Dreamweaver como editor, así que hay varias cosas que Dreamweaver agrega automáticamente y que puede que no las comprendas si apenas estás aprendiendo este lenguaje. Pero para que puedas hacer funcionar este sistema solo tienes que modificar la cadena de conexión a la base de datos.

Primero: Ve a MySQL y crea una base de datos con el nombre que tu desees
Segundo: Entra a tu manejador de MySQL (puede ser phpmyadmin) y ejecuta el script que encontrarás en el archivo que descargues.



Tercero: Ahora solo tienes que modificar los datos de conexión para que el sistema reconozca la base datos.


Ahora solo tienes que probar :) , espero te sirva.
Recuerda que es un sistema básico no esperes que haga grandes cosas XD

Si gustas puedes ver como funciona haciendo clic en aquí
el archivo registro.php descargalo de aqui
pero para eso debes sustituir el archivo nuevo_usuario.php por este

ACTUALIZACION: pueden descargar el nuevo proyecto, ya incluye las funciones de cerrar sesión, la base de datos es la misma del proyecto anterior

DESCARGAR NUEVO


95 comentarios:

  1. men falta una pagina es ingreso.php ponla x fa

    ResponderEliminar
  2. Hola, en el archivo comprimido está esa página .. revisa bien :)

    ResponderEliminar
  3. Saul gracias por el carrito, efectivamente como dice el primer comentario, falta el archivo registro.php - Nota: QUiero hacer una donacion anonima (Favor contactar a este E-mail : ventas[arroba]nyfdecolombia[punto]com

    ResponderEliminar
  4. Ola saul a tu sistema le falta la opcio de cerrar sesion y k t guarde los productos que se ayan seleccionado por usuario..

    ResponderEliminar
  5. Tienes mucha razón Alfredo pero por eso explico en el post que es un sistema básico :)

    ResponderEliminar
  6. Disculpa Saul, y podrias hacer un tutorial para terminarlo de la forma en que te digo?

    ResponderEliminar
  7. me sirve mucho para lo que tengo que hacer en mi practica profecional Gracias :) Me podrias Ayudar en el sistema de Login ??

    ResponderEliminar
  8. Respuestas
    1. por favor puedes enviarme el archivo registro php a mi email
      benf-06-@hotmail.com

      Eliminar
  9. Hola saul, todo esta muy bien y garcias por agragarle la opcion de "cerrar sesion", solo t falta el detalle de: que guarde los productos en el carrito si sales de la sesion por cada usuario.

    Eje: si el usuario Juan inicia sesion y selecciona uno o mas productos, se guarden en el carrito si no los compra y sale de la sesion y se queden guardados los productos por si vuelve a accesar al sistema y ya desea comprarlos.

    y al accesar el usuario pepe no pueda ver los productos guardados de otros usuarios en su carrito a menos que tambien alla seleccionado él algunos..

    PD: espero y me allas entendido..jeje..Se que puedes, eres bueno en esto..

    Saludos..

    ResponderEliminar
  10. te entiendo perfectamente , pero para hacerle eso tendría que reestructurar el projecto y ahorita estoy liado con mi tesis jeje ...

    ResponderEliminar
  11. Ola saul.. Podrias pasarm tu correo para acert una consulta personal sobre el sistema?. El mio es trolito_56@hotmail.com

    ResponderEliminar
  12. Respuestas
    1. Ok saul grax.. Ya ise tu sistema todo dinamico y tambn ya ise la part dl administrador..

      Eliminar
    2. Alfredo, no podrías compartirlo?

      Eliminar
    3. K tal anonimo... Yo lo mejore un poco el sistema pro lo ise tienda d zapatos y lo manejo x diferentes categorias y subcategorias... Pasame tu correo..

      Eliminar
  13. Hola, gracias a ti...
    me disculpas si no te pude ayudar con lo demás. Pero me alegro que hayas podido mejorarlo :D

    ResponderEliminar
  14. Si lo mejore un poco, aun m faltan uns pequeños detalles d diseño en la parte del administrador.. Pro pronto los tendre.. Solo agregue unas tablas mas con sus respectivos campos y sus relaciones.. Saludos..

    ResponderEliminar
  15. Hola saul por favor subir la base de datos que no lo encuentro en el comprimido

    ResponderEliminar
  16. La base de datos se encuentra en el primer enlace de descargar

    ResponderEliminar
  17. Hola amigo humildemente digo gracias por el hecho que regalaste esto tan util ayudame hacer un catalogo porfavor me salio esto Table 'cdo4815_tienda.productos' doesn't exist

    ResponderEliminar
  18. Hola saul me da error al intentar mandar el mail y al ver los productos

    mira este es el error que me da al enviar el mail
    Warning: mail() [function.mail]: Failed to connect to mailserver at "localhost" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in C:\wamp\www\CARRO\envio.php on line 32
    Call Stack
    # Time Memory Function Location
    1 0.0014 679648 {main}( ) ..\envio.php:0
    2 0.0014 680992 mail ( ) ..\envio.php:32


    me podrias ayudar

    muchas gracias Dios te bendiga

    ResponderEliminar
  19. Hola Juan .. la funcion mail de php solo te servirá una vez que hayas montado tu sistema en algun dominio, de manera local no funciona.. prueba creándote una cuenta en 000webhost para tener un dominio gratuito y ahí puedes hacer las pruebas subiendo el proyecto

    ResponderEliminar
  20. buenas noches, podrias porfavor decirme como colocar los productos que estan dezplegaods de vorma vertical a colocarlo en forma vertical, que se muestren de 3 en tres cada fila, me gustaria que puediera ayudarme con eso, muchas grcias, saludos! mi correo es A.Aldana@hotmail.com

    ResponderEliminar
  21. buenas noches amigo, muy interesante y bueno tu aporte, me gustaria preguntarte algo para ver si me podrias dar una solucion, esos productos ue se muestran en forma vertical es posible colocarlos ue se visualicen de 3 x 3? es decir los nueve productos vizualizados como em una tabla de 3 x 3, me gustaria mucho ue me ayudaras con eso, gracias! saludos! mi correo es A.Aldana@hotmail.com

    ResponderEliminar
  22. por que en el codigo cat_procesadores y los demas de cat al final me marca un error parse error: syntax error, unexpected y se va ala linea 246

    ResponderEliminar
  23. Hola tengo un problema

    Parse error: syntax error, unexpected end of file in C:\xampp\htdocs\electronix\yume\cat_rams_respaldo.php on line 247

    Gracias por el apoyo

    ResponderEliminar
  24. Los que tenga un error parecido a este
    Parse error: syntax error, unexpected end of file in C:\xampp\htdocs\yume\cat_rams_respaldo.php on line 247

    les recomiendo que descargen la nueva version del proyecto .. ahi ya está corregido ese problema

    ResponderEliminar
  25. Hola Saul estaba tratando de usar tu carro de compras pero no encontre el script la base de datos sera que me ayudas con ese archivo...???

    ResponderEliminar
  26. Hola Juan Carlos .. el script de la BD está en el primer enlace debes descargarlo

    ResponderEliminar
  27. Hola tengo una duda, actualmente estoy realizando un sistema para manejar pedidos, se cuenta con el carrito pero no se como realizar la conexion a la base de datos y que se vaya descontando la cantidad del producto cada que hay alguna venta.

    ResponderEliminar
  28. saludos amigo, excelente aporte pero me puedes ayudar para que los articulos salgan uno al aldo del otro?? es que salen todo en una fila de 1 asi:
    1
    1
    1
    1
    y los quiero asi
    111
    111
    111

    ResponderEliminar
  29. Hola, para poder hacer eso solo tienes que ir a la hoja de estilo css y colocar al final: tr{float:left;}
    espero te sirva .. saludos

    ResponderEliminar
  30. Hola Alfredo, me gustaria recibirlo tambien. te paso mi corre
    algundiade2013@gmail.com
    Saludos
    M

    ResponderEliminar
  31. Hola alfredo mi correo es crmg2005@gmail.com o crmg2005@hotmail.com te agredeceria mucho tu aporte gracias!!!

    ResponderEliminar
  32. Hola alfredo mi correo es crmg2005@gmail.com o crmg2005@hotmail.com te agredeceria mucho tu aporte gracias!!!

    ResponderEliminar
  33. saludos amigo alfredo podria pasarme el proyecto completo es que lo necesito urgente!! y gracias de antemano por la ayuda!!

    mi correo es crmg2005@gmail.com o crmg2005@hotmail.com te agredeceria mucho tu aporte gracias!!!

    ResponderEliminar
  34. hola saul me gustaria saber si tienes un proyecto donde utilices la arquitectura MVC ha aproposito exelente el aporte gracias
    colaborame con el proyecto completo por fa
    mi correo es ingalfredobarros@hotmail.com

    gracias por tu ayuda

    ResponderEliminar
  35. Que error te da Jose Baltasar Martín ?

    ResponderEliminar
  36. Grácias por contestar Saul Antonio Guardado Pereira, me daba error la publicidad de fly, pero ya si me funciona, gracias por contestar.

    ResponderEliminar
  37. HOla que tal Alfredo tambine me gustaria qu em eproporciones el propyecto de la zapateria que tiens, este es mi correo: amtf3000@hotmail.com GRACIAS DE ANTEMANO

    ResponderEliminar
  38. HOla que tal Alfredo tambine me gustaria qu em eproporciones el propyecto de la zapateria que tiens, este es mi correo: amtf3000@hotmail.com GRACIAS DE ANTEMANO

    ResponderEliminar
  39. Hola como estan todos primeramente darle un abrazo de felisitacion para saul por aber compartido el diseta de carrito de compras la verdad esta muy interesante. estimado saul me funciona todo pero en la categoria de productos al momento de mostrar me muestra en una lista vertical porfabor aver nos explicas como solucionar ese detalle x que el demo muestra en tres columnas. gracias de antemano por el sistema espero su respuesta saludos!!

    ResponderEliminar
  40. Hola Oswaldo Ramos , para poder hacer eso solo tienes que ir a la hoja de estilo css y colocar al final: tr{float:left;}
    espero te sirva .. saludos

    ResponderEliminar
  41. Amigo excelente ayuda y como tu has dicho es "basico" es decir uno tiene q adaptarlo para mejorar, en lo personal lo aplique para un proyecto de tienda de peliculas virtual y creeme fue de gran ayuda, te felicito por tu post.

    ResponderEliminar
  42. gracias de ante mano pero tengo una duda el final es un id o es una class adonde ese agrego ese final. antecipadamente le agradesco saludos!

    ResponderEliminar
  43. A todos los que me preguntaron sobre el sistema, les dejo el siguiente enlace:

    http://alfredo_morales.blogspot.mx/2013/06/sistema-de-una-zapateria-en-php.html

    Dejen sus comentarios esperando sean positivos y ayudarnos entre todos. Persona que solo quiera insultar y no aprender no se le contestara los mensajes..

    Saludos

    ResponderEliminar
  44. perdon me equivoque en el link anterior, este es el correcto:

    http://jose-alfredo-morales.blogspot.mx/2013/06/sistema-de-una-zapateria-en-php.html

    ResponderEliminar
  45. Jose Alfredo el link de tu blog esta caido, podrias levantarlo de nuevo
    o me podrias pasar tu aporte de la zapateria.

    Te dejo mi correo znith.17@gmail.com, gracias

    ResponderEliminar
  46. Este es el link:

    http://jose-alfredo-morales.blogspot.mx/2013/06/sistema-de-una-zapateria-en-php.html

    ResponderEliminar
  47. Gracias! Saul Antonio Guardado Pereira me sirvió mucho tu sistema SOLO FALTA LA OPCIÓN SALIR DEL SISTEMA PERO ESO YA LO PUEDO AÑADIR GRACIAS AMIGO

    ResponderEliminar
  48. Gracias! Saul Antonio Guardado Pereira me sirvió mucho tu sistema SOLO FALTA LA OPCIÓN SALIR DEL SISTEMA PERO ESO YA LO PUEDO AÑADIR GRACIAS AMIGO

    ResponderEliminar
  49. hola amigo me podrias ayudar para cambiar las imegenes de tu sitio de antemano muchas gracias

    ResponderEliminar
  50. Alfredo me podrías proporcionar el proyecto de la Zapateria que realizaste, en verdad te lo agradecería, este es mi correo: akilez_22@hotmail.com

    Saludos

    ResponderEliminar
  51. exelente aportacion quisiera ke me ayudaras de como podria yo guardar en la tabla compra en la BD los productos ke yo haya comprado gracias

    ResponderEliminar
  52. tratare de mejorar al 100% y le creare un sistema de administracion :)

    ResponderEliminar
  53. Hola me falta el archivo para crear la base de datos. Me lo puede pasar : libra22@arrakis.es
    Saludos

    ResponderEliminar
  54. Hola Phil Defer, el archivo de la base de datos lo puedes encontrar si descargas el primer proyecto ..
    Puedes tambien ver el proyecto en GITHUB
    en la carpeta BD

    ResponderEliminar
  55. Yo también he desarrollado mi carrito de compras lo puse como ejemplo en este hosting: http://disc-order.comeze.com/ alguno detalles que me faltan si alguien les interesa el código solo me escriben, por cierto el pago por transferencia es el único que lo tengo activo por el momento.

    ResponderEliminar
  56. No me introduce los datos a tabla compras.

    ResponderEliminar
  57. Muigel Vallejo me podrias mandar el codigo de tu web esta muy buena, a fantomas_piro@hotmail.com

    ResponderEliminar
  58. HOLA AMIGO TU SISTEMA ME PARECE MUY INTERESANTE SIN EMBARGO QUISIERA SABER COMO PODER AÑADIR LOS PRODUCTOS COMPRADOS A LA TABLA COMPRAS ES DECIR DESDE EL CARRITO DE COMPRAS ALMACENALO EN LA BASE DE DATOS :( AYUDAME PORFAVOR

    ResponderEliminar
  59. hola el sistema de carrito esta muy pero muy bien te felicito pero me gustaria saber como es el proyecto de la zapateria hay te dejo mi correo es franco_2319@hotmail.com

    ResponderEliminar
  60. hola amigo! mira yo descargue la nueva version de tu proyecto pero sigue el problema los productos me podrias ayudar con eso este es la linea de error que me tira

    Parse error: syntax error, unexpected $end in C:\wamp\www\sitio\cat_motherboards.php on line 255

    ResponderEliminar
  61. Un problema porfavor mira yo descargue la nueva version de tu proyecto pero sigue el problema los productos me podrias ayudar con eso este es la linea de error que me tira

    Parse error: syntax error, unexpected $end in C:\wamp\www\sitio\cat_motherboards.php on line 255

    ResponderEliminar
  62. Buenas este sistema me gusto lo analizare eh ire haciendo modificaciones desde lo visual hasta lo funcional asi que espero y mas gente se una a esta nueva actualizacion para dejar una tienda online mas completa saludos.

    interesados responderme aqui mismo.

    ResponderEliminar
  63. Otras cosas que veo y no me gusta es el siguiente codigo.
    Login Form ---lo que esta aqui adentro /login -----
    lo cual se puede sustituir muy facillmente con un requiere_once.
    Aclaro lo que digo es una critica constructiva no es para hacer menos este gran proyecto solo que creo que todos aportando lo podemos dejar excelente.

    saludos u.u

    ResponderEliminar
  64. este codigo

    include ("login.php");

    ?>

    ResponderEliminar
  65. Otra cosa mas que veo y fue lo mas absurdo que eh visto es agregar categorias en archivos php como la siguiete cat_rams.php
    cuando si estamos trabajando con bases de datos podemos clasificarlos desde ahi.
    ejemplo la siguiente web es mia.
    http://zteevolution.pillowhost.com/
    que sucede aqui...del lado derecho de su pantalla hay yn menu que dice categorias.
    Aplicaciones
    juegos
    etc.
    si yo doy click en aplicaciones me mostrara todos los temas que yo subi a la categoria aplicaciones si yo hago lo mismo en juegos solo me mostrara los juegos.

    Entonces si yo implemento este sistema aqui que pasa si yo kiero ver rams me muestra las rams si kiero ver tarjetas madres me muestra tarjetas madres desde un solo archivo php y no creando cada archivo para cada categoria saludos...

    Iniciare la adaptacion pero sera en lenguaje PHP POO porque esto le dara una carga rapidisima a la web.

    Vuelvo a reiterar mis criticas son constructivas para mas avances hare un grupo en facebook para aquellas personas interesadas en crear su tienda online basada en este sistema lo hagan totalmente gratis y aprendiendo que es lo mejor de todo.

    Grupo de Facebook.
    https://www.facebook.com/groups/662851567099629/
    el grupo sera cerrado asi que interesados mandar solicitud y pues bienvenidos.

    ResponderEliminar
  66. Hola, Xrimox. Gracias por tus observaciones y lo que tu estás haciendo es lo que TODOS deberiamos hacer: MEJORAR . Recuerda que el cuerpo del post dice esto: "Recuerda que es un sistema básico no esperes que haga grandes cosas XD" . Todos estos "errores" que tu mencionas, son ciertos, pero de cierta forma intencionales jeje. Sigue adelante con tu aprendizaje :D

    ResponderEliminar
  67. wow estoy adaptando un nuevo codigo mas fluido a la hora de cargar la pagina basado en PHP POO y pueden ver avanzes en el siguiente grupo de facebook.
    al igual ir creando su propio carro de compras, aportando etc me eh basado en este sistema pero lo aportado los hace un poco mejor ya que es otro tipo de programacion,

    saludos los invito a que sean parte de este proyecto el cual es totalmente gratis.
    https://www.facebook.com/groups/662851567099629/

    un poco del codigo usado
    public function agregar_usuario($nickname,$nombre,$apellido,$pais,$ciudad,$contrasena,$correo)

    {
    $fecha= $fecha = date("1").", "." ".date("j")." ".date("F")." ".date("Y");

    $sql="insert into usuario values (null,'$nickname','$nombre','$apellido','$pais','$ciudad','$correo','$contrasena','$fecha','1','0')";

    $res=mysql_query($sql,Conectar::con());
    ........................

    ResponderEliminar
    Respuestas
    1. Che eso no es POO aca un ejemplo:

      public function validarUsuario($user,$clave){
      $select = $this->db->prepare("SELECT * FROM claves WHERE eliminado=0 AND usuario=? AND clave=?");
      $select->bindValue(1,$user);
      $select->bindValue(2,$clave);
      $select->execute();

      return $select;
      }

      Eliminar
  68. ahora les traigo un avanze coloque un slider al sitio para poner los productos promocionales...

    espero y les guste les dejo una imagen..
    http://i40.tinypic.com/50p0di.png

    ResponderEliminar
  69. muy bueno... lo errores del "cat_motherboards.php" y "cat_rams.php" son errores que ya los resolví.

    ResponderEliminar
    Respuestas
    1. yo no encuentro el error y ya lo busque y nada... mi correo es j_leonel123@hotmail.com

      Eliminar
    2. COMO LE HICISTE YA QYE NO ENCUENTRO COMO RESOLVER ESTE ERROR ESPERO ME PUEDAS AYUDAR.. MI CORREO ES J_LEONEL123@HOTMAIL.COM

      Eliminar
  70. Disculpa soy nueva en esto pero. Copie todo bien pero el tercer paso qe es lo qe tengo qe modificar, osea como se cual es mi host??
    le pongo localhost
    Mi bd se llama fruteria
    y el usuario y contraseña le puse root y contraseña lo deje vacio.

    Pero me marca error
    Advertencia: mysql_pconnect () [ function.mysql-pconnect ]: php_network_getaddresses: no getaddrinfo: Host desconocido. en C: \ wamp \ www \ Carrito \ Conexiones \ tienda.php on line 11

    Ayuda!

    ResponderEliminar
    Respuestas
    1. Hola, si estás trabajando de manera local debes poner localhost

      Eliminar
  71. Gracias! otra duda como le puedo hacer para qe cuando compren 2 personas el mismo producto a la ultima qe pidio el producto le diga qe ya no hay disponibles.
    si por ejemplo qeda 1 producto. (Procesador) y 2 personas quieren el mismo y lo piden y lo quieren pagar a uno le tiene qe salir qe se agoto la exitencia y no qedar mal con el cliente
    te lo agradeceria mucho.

    ResponderEliminar
  72. hola me podrias ayudar enviandome el proyecto sin errores esque lo descargue y me manda errores la verdad de todos los proyectos que visite de carrito de compras el tuyo es el mejor espero me ayudes este es mi correo cocacola_caron@hotmail.com

    ResponderEliminar
    Respuestas
    1. Que error tienes? Asegurate de descargar del segundo link

      Eliminar
  73. ALGUIEN QUE ME PASE EL MEJORAdO JEJEJE AYUdEN Y COMPARTAN EL CONOCIMIENTO.. SALUdOS... EMAIL. luishdezbta91@gmail.com

    ResponderEliminar
  74. Hola Saul me podrías ayudar con el proyecto completo xfa esk tengo k hacer un similar me parecio muy interesante tu blog graxias d antemano mi EMAIL : gabrielitabenavides18@gmail.com

    ResponderEliminar
  75. Excelente aporte.. Me servirá :D

    ResponderEliminar
  76. muy buen aporte... felicidades... un favor amigo alfredo.. si me prodrias comprtir t proyecto.. me serviria mucho para una practica este es mi correo.. gisa_dohko17@hotmail.com

    ResponderEliminar
  77. todo genial, pero modifica tu consulta al hacer login ya que con el metodo que estas usando es super facil sql injection.

    ResponderEliminar
  78. alguien amable de subir nuevo linck con la base de datos, pues el primer linck ya no funciona.

    ResponderEliminar
  79. Te quedo excelente, se agradece tu aporte y continua asi

    ResponderEliminar