Foros del Web » Programando para Internet » PHP »

Catalogo de productos

Estas en el tema de Catalogo de productos en el foro de PHP en Foros del Web. Saludos y gracias por adelantado a aquellos que lean y/o respondan este tema. Les cuento, he leido ya como tres manuales de PHP (lo basico) ...
  #1 (permalink)  
Antiguo 27/01/2008, 12:42
Avatar de lucasan
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: Cali - Colombia
Mensajes: 1.144
Antigüedad: 16 años, 10 meses
Puntos: 59
Catalogo de productos

Saludos y gracias por adelantado a aquellos que lean y/o respondan este tema.

Les cuento, he leido ya como tres manuales de PHP (lo basico) pero aún no lo pongo a prueba, y espero hacerlo ahora.

Tengo un proyecto, necesito hacer un catálogo de tres niveles (si es que asi se puede llamar)

1. Categoría
2. Productos de la categoría
3. Producto elegido.

Hice una muestra muy simple (en html) de lo que necesito http://demicali.com/vento/category.html

Las categorías son pocas asi que no tengo problemas con ello, pero deseo que cuando se seleccione una categoría se cargue una página con los productos de dicha categoría, y así mismo al seleccionar un producto se cargue una página con la ampliación y descripción de dicho producto (como lo puse en la muestra)

Estoy en ceros, no se ni por donde arrancar, se que no estoy dando mucha información, pero es lo que tengo.

Ya busque en el foro, y no encontré nada similar, tambien en google y nada, además busqué en hotscrips y nada.

Entonces aprovecho para aprender un poco de la mano de ustedes, epero no ser de mucha molestia.

Agradezco muchisimo a aquellos que me puedan ayudar.
__________________
Plan Original Desarrollo Web
~$>sudo apt-get install -f
"Asi debería arreglarse todo en la vida"
  #2 (permalink)  
Antiguo 27/01/2008, 13:28
 
Fecha de Ingreso: enero-2008
Ubicación: Lima - Perú
Mensajes: 1.127
Antigüedad: 16 años, 3 meses
Puntos: 10
Re: Catalogo de productos

Vamos por pasos, bueno lo primero que tienes que hacer es mostrar las categorias, supongo que las categorias,subcategorias,productos van a estar en una base de datos ya que estamos hablando de php, de ser asi te dejo un codigo donde puedes mostrar los registros de una base de datos de mysql en una pagina el codigo es facil de entender
Observa que el codigo html esta separado del codigo php que es como trabajo yo

Código PHP:
<--! obteniendo registros de la tabla producto -->
<html>
<body>
<h1>Productos</h1>
<table border="1" cellspacing="0">
<tr bgcolor="silver">
<td>Imagen</td>
<td>Nombre</td>
<td>Precio</td>
</tr>
<?php
$conexion 
mysql_connect('localhost','root','');
mysql_select_db('tienda');
$tabla mysql_query('SELECT * FROM producto');
while (
$registro mysql_fetch_array($tabla)) 
{  
?>
<tr>
<td><img src="imagenes/<?php echo $registro['fotop']; ?>" ></td>
<td><?php echo $registro['codprod']; ?>|<?php echo $registro['nomprod']; ?></td>
<td>$<?php echo $registro['precio']; ?></td>
</tr> 
<?php
}
mysql_free_result($tabla);
mysql_close($conexion);
?>
</table>
</body>
</html>
En la linea <td><img src="imagenes/<?php echo $registro['fotop']; ?>" ></td> es para mostrar las imagenes de tu base de datos, ojo que en la bd no se guarda la imagen en si, sino se guarda la ruta donde se encuentra la imagen, es decir el contenido del campo fotop podria ser imagenes/producto.png y ducha imagen debe estar guardada en la carpeta imagenes dentro del directorio raiz.
El codigo anterior muestra los registros en filas algo asi

imagen / nombre / precio
IMAGEN1--PRODUCTO1--PRECIO1
IMAGEN2--PRODUCTO2--PRECIO2
IMAGEN3--PRODUCTO3--PRECIO3
IMAGEN4--PRODUCTO4--PRECIO4

Ahora tienes que convertirlos en hipervinculos para que te lleven a otra pagina es decir si selecciono PRODUCTO2 me tiene que llevar a la decripcion de dicho producto para hacer eso es otro tema.

Saludos
  #3 (permalink)  
Antiguo 27/01/2008, 13:44
Avatar de lucasan
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: Cali - Colombia
Mensajes: 1.144
Antigüedad: 16 años, 10 meses
Puntos: 59
Re: Catalogo de productos

Gracias por tu pronta respuesta, voy a trabajarlo y posteo lo que obtenga, no soy muy diestro en PHP ni mucho menos en Bases de Datos, pero con lo que me diste voy a arrancar.

Gracias.
__________________
Plan Original Desarrollo Web
~$>sudo apt-get install -f
"Asi debería arreglarse todo en la vida"
  #4 (permalink)  
Antiguo 27/01/2008, 13:54
 
Fecha de Ingreso: enero-2008
Ubicación: Lima - Perú
Mensajes: 1.127
Antigüedad: 16 años, 3 meses
Puntos: 10
Re: Catalogo de productos

Aqui hay unos tutos muy buenos:
8 tutoriales para empezar con php y base de datos
Te recomiendo que si recien empiezas con php no te hagas lios instalando php, phphmyadmin,mysqln ni pierdas tiempo configurandolos para que puedas ejecutar codigo php.
instalate appserv

Última edición por franko1809; 30/01/2008 a las 21:36
  #5 (permalink)  
Antiguo 01/02/2008, 19:13
Avatar de lucasan
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: Cali - Colombia
Mensajes: 1.144
Antigüedad: 16 años, 10 meses
Puntos: 59
Re: Catalogo de productos

Listo, muchas gracias, ahora lo que necesito es lo siguiente:

Ya tengo la base de datos, ya pude hacer lo que me dice arriba franko, pero eso me lista la totalidad de los productos, lo que necesito es saber como hago para listarlos por categorías.

Me explico:

Código PHP:
//Necesito que al dar click en este link me cargue los productos de la categoria 1
<a href="cualquiera.php">Link</a
Cual debería ser el script para que me haga eso, en la base de datos tengo un campo llamado categoria.

Agradezco a quienes me puedan ayudar.
__________________
Plan Original Desarrollo Web
~$>sudo apt-get install -f
"Asi debería arreglarse todo en la vida"
  #6 (permalink)  
Antiguo 01/02/2008, 19:38
 
Fecha de Ingreso: enero-2008
Ubicación: Lima - Perú
Mensajes: 1.127
Antigüedad: 16 años, 3 meses
Puntos: 10
Re: Catalogo de productos

simplemente cambia los datos por ejemplo

cambia producto por el nombre de tu tabla
$tabla = mysql_query('SELECT * FROM categoria);
y en

<td>$<?php echo $registro['aqui va el nombre del campo']; ?></td>

cheka este link es un catalogo que estoy diseñando todos los datos son ficticios ademas tiene un panel de control para modificar las tablas
catalogo de productos en php
  #7 (permalink)  
Antiguo 01/02/2008, 19:47
Avatar de Carlojas  
Fecha de Ingreso: junio-2007
Ubicación: Shikasta
Mensajes: 1.272
Antigüedad: 16 años, 10 meses
Puntos: 49
Re: Catalogo de productos

y para hacer el link supongamos que en tu tabla productos tienes relacionados los mismos con el ID de la categoria. dentro del ciclo while pones suponiendo que tu tabla categoria tiene dos campos id y descripción.

Código PHP:
echo "<a href = 'tupaginaproceso.php?ID='".$registro['id']."''>'".$registro['descripcion']."'</a>"
y en tupaginaproceso.php recoges la variable ID por $_GET y haces tu respectiva consulta a la tabla productos

Código PHP:
$consulta "SELECT * FROM producto WHERE id_cat = '".$_GET['ID']."'"
Saludos y espero haberte podido ayudar.

Última edición por Carlojas; 01/02/2008 a las 20:08
  #8 (permalink)  
Antiguo 01/02/2008, 19:59
Avatar de lucasan
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: Cali - Colombia
Mensajes: 1.144
Antigüedad: 16 años, 10 meses
Puntos: 59
Re: Catalogo de productos

Muchas gracias a ambos (ustedes lo hacen ver tan facil ) voy a intentarlo, la verdad es que estoy en ceros en php, he ido construyendo el sitio a pasitos con ayuda de ustedes y algunos tutoriales.

pueden chequearlo como va.

http://ventoacoustic.com

Franko, yo intente hacer algo similar para modificar la base de datos pero no tan logrado como el tuyo, si es posible que me enseñaras como hacerlo, sobretodo el upload de las fotos, ya que yo lo pensaba hacer manual via ftp y luego guardar solo la ruta completa en la base de datos.

De verdad agradezco el tiempo que se toman para responder, aprovechare al maximo sus enseñanzas.

Gracias.
__________________
Plan Original Desarrollo Web
~$>sudo apt-get install -f
"Asi debería arreglarse todo en la vida"
  #9 (permalink)  
Antiguo 02/02/2008, 10:11
 
Fecha de Ingreso: enero-2008
Ubicación: Lima - Perú
Mensajes: 1.127
Antigüedad: 16 años, 3 meses
Puntos: 10
Re: Catalogo de productos

Aca te dejo el codigo para el hacer el filtro algo parecido a la solucion de Carlojas pero aplicado a mi codigo en este caso las tablas serian subcategoria y al pulsar sobre una de ellas te muestra todos los productos que pertenecen a dicha subcategoria

Registros de la tabla subcategoria podriamos llamar a este archivo indexar.php
Código PHP:
<table border="1">
<?php
$conexion 
mysql_connect("localhost","root","");
mysql_select_db('tienda_vacia');
$tabla mysql_query("SELECT * FROM subcategoria");
while (
$registro mysql_fetch_array($tabla))
{
?>
<tr>
<td width="42"><?= $registro['codscateg']; ?></td>
<td width="109"><a href="subcategoria.php?id=<?= $registro['codscateg']; ?>"><?= $registro['nomscateg']; ?></a></td>
</tr>
<?php
}
?>
</table>
y el archivo donde se muestran los productos lo llamaremos subcategoria.php
Código PHP:
<table border="1" cellspacing="0">
<tr bgcolor="silver">
<td>nomprod</td>
<td>precio</td>
</tr>
<?php
$id 
$_GET['id'];
$conexion mysql_connect('localhost','root','');
mysql_select_db('tienda_vacia');
$tabla mysql_query("SELECT producto.*,subcategoria.* FROM subcategoria,producto where producto.codscateg=subcategoria.codscateg and subcategoria.codscateg='$id'");
while (
$registro mysql_fetch_array($tabla))
{
?>
<tr>
<td><? echo $registro['nomprod']; ?></td>
<td><? echo $registro['precio']; ?></td>
</tr>
<?php
}
?>
</table>
En la linea $tabla = mysql_query("SELECT producto.*,subcategoria.* FROM subcategoria,producto where producto.codscateg=subcategoria.codscateg and subcategoria.codscateg='$id'"); hacemos una consulta sql donde unimos ambas tablas(subcategoria y productos)

Trata de entender paso a paso que es lo que hace cada linea de codigo, si lo logras ya tienes tu catalogo de productos ahora para subir imagenes busca en los faqs del foro upload de imagenes

saludos
  #10 (permalink)  
Antiguo 02/02/2008, 14:29
Avatar de lucasan
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: Cali - Colombia
Mensajes: 1.144
Antigüedad: 16 años, 10 meses
Puntos: 59
Re: Catalogo de productos

Gracias Franko, he puesto en práctica lo que me han enseñado ustedes, puedes ver como está quedando aquí ya solo me falta subir los productos ala base de datos.

De verdad muchas gracias.
__________________
Plan Original Desarrollo Web
~$>sudo apt-get install -f
"Asi debería arreglarse todo en la vida"
  #11 (permalink)  
Antiguo 02/02/2008, 14:42
Avatar de lucasan
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: Cali - Colombia
Mensajes: 1.144
Antigüedad: 16 años, 10 meses
Puntos: 59
Re: Catalogo de productos

Una pregunta mas, les dejo el código para explicarme mejor:

Esta es la pagina que me recoge las categorias, y cada categoría debe mostrar los prouctos que correspondan.

category.php

Código PHP:
<? include ("conectar.php"); ?>
 <div id="main">
   <div id="cont">
     <h4>Categor&iacute;as de Productos Vento</h4><hr />
      <div id="cat-box">
        <?
         $link 
myconection();
         
$tabla mysql_query("SELECT * FROM categorias"$link) or die(mysql_error());
         while (
$registro mysql_fetch_array($tabla)) 
            {  
              echo 
"<a href=cat.php?ID=$registro[cate]><img src=$registro[cateimagen]></a>"
            }
?>
ahora esta es la pagina que me muestra los productos de cada categoria.

cat.php

Código PHP:
<? include ("conectar.php"); ?>
 <div id="main">
    <div id="cont">
     <h4>Categor&iacute;as de Productos Vento</h4><hr />
      <div id="prod-box">
        <?
         $link 
myconection();
         
$consulta mysql_query("SELECT * FROM producto WHERE MATCH (categoria) AGAINST ('*"$_GET['ID'] ."*' IN BOOLEAN MODE)"$link) or die(mysql_error());
         while (
$registro mysql_fetch_array($consulta)) 
            {  
             echo 
"<a href=prod.php?ID=$registro[nombre]><img src=$registro[minifoto]></a>"
            }
?>
Está funcionando bien, mi pregunta es la sigueinte, en el primer archivo se pone el link asi

Código PHP:
  echo "<a href=cat.php?ID=$registro[cate]><img src=$registro[cateimagen]></a>"
Pero en la URL no sale el nombre completo de la categoria, ejemplo

si la categoria es "Efectos de Iluminacion"

en la URL sale http://ventoacoustic.com/cat.php?ID=Efectos

Por tanto si tengo dos categorias que empiecen con el mismo nombre (como me sucedio) no va aser efectivo el script.

¿Que sucede ahi?

¿como puedo lograr que sea algo como esto?

http://ventoacoustic.com/cat.php?ID=...de+Iluminacion

Gracias.
__________________
Plan Original Desarrollo Web
~$>sudo apt-get install -f
"Asi debería arreglarse todo en la vida"
  #12 (permalink)  
Antiguo 02/02/2008, 19:51
 
Fecha de Ingreso: enero-2008
Ubicación: Lima - Perú
Mensajes: 1.127
Antigüedad: 16 años, 3 meses
Puntos: 10
Re: Catalogo de productos

Podrias lograrlo como quieres es decir
http://ventoacoustic.com/cat.php?ID=Mezcladores+azul
http://ventoacoustic.com/cat.php?ID=Mezcladores+rojo
que me parece es lo que quieres hacer, pero debes utilizar codigos para cada producto es decir:
http://ventoacoustic.com/cat.php?ID=1
http://ventoacoustic.com/cat.php?ID=2
debes agregar un campo codigo a tu tabla producto y asigarle el valor auto_increment asi el codigo nunca se repite

saludos
  #13 (permalink)  
Antiguo 03/02/2008, 01:32
Avatar de lucasan
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: Cali - Colombia
Mensajes: 1.144
Antigüedad: 16 años, 10 meses
Puntos: 59
Re: Catalogo de productos

Hola Franco, a lo que me refiero es que en la base de datos tengo como nombre categroria (campo 'cate') como "efectos de iluminacion" por ejemplo, y el script solo me toma la primera palabra, es decir efectos.

Como hago para que me tome la cadena de texto completa?

Gracias una vez mas
__________________
Plan Original Desarrollo Web
~$>sudo apt-get install -f
"Asi debería arreglarse todo en la vida"
  #14 (permalink)  
Antiguo 03/02/2008, 11:05
 
Fecha de Ingreso: enero-2008
Ubicación: Lima - Perú
Mensajes: 1.127
Antigüedad: 16 años, 3 meses
Puntos: 10
Re: Catalogo de productos

Ya entendi tu pregunta, pero no tengo idea como solucionarlo, parece que solo toma la primera palabra seguro el problema se aregla con una funcion te recomiendo postear esa pregunta en un nuevo tema

saludos
  #15 (permalink)  
Antiguo 03/02/2008, 12:56
Avatar de lucasan
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: Cali - Colombia
Mensajes: 1.144
Antigüedad: 16 años, 10 meses
Puntos: 59
Re: Catalogo de productos

Ok, gracias Franko. Lo haré asi.

Saludos.
__________________
Plan Original Desarrollo Web
~$>sudo apt-get install -f
"Asi debería arreglarse todo en la vida"
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 07:46.