Ver Mensaje Individual
  #1 (permalink)  
Antiguo 02/08/2012, 13:56
Avatar de elsolodigno
elsolodigno
 
Fecha de Ingreso: agosto-2009
Mensajes: 225
Antigüedad: 14 años, 8 meses
Puntos: 2
Pregunta Categorias, subcategorias y productos

Hola comunidad, les consulto si me pueden guiar con el sgte. código:

Lo que estoy tratando de plasmar es que al agregar un nuevo producto tenga la opción de elegir la categoría y subcategoría para el producto. Luego solo agregar el id de la subcategoria en la tabla producto.

Al principio funciona pero luego al ver la base me agrega cualquier cosa y registros duplicados..., podrán guiarme dónde tengo el error?.

Muchas gracias de antemano!.

Código PHP:
require_once('conexion.php');

if (isset(
$_POST['codigo']) &&
    isset(
$_POST['nombre']) &&
    isset(
$_POST['id_subcategoria']) && 
    isset(
$_POST['descripcion']) &&
    isset(
$_POST['marca']) &&
    isset(
$_POST['imagen']) &&   
    isset(
$_POST['destacado']))
{
$sql="INSERT INTO productos
(id_producto, codigo_producto, nombre_producto, id_subcategoria, descripcion_producto, marca_producto, imagen_producto, destacado_producto) 
VALUES 
(null,'"
.$_POST['codigo']."','".$_POST['nombre']."','".$_POST['id_subcategoria']."','".$_POST['descripcion']."','".$_POST['marca']."','".$_POST['imagen']."','".$_POST['destacado']."')";

$result mysql_query($sql) or die('No pude ejecutar la consulta');

Código HTML:
<h3>Agregar Productos</h3>
<form action="agregar.php" method="POST">
Código:
<input type="text" name="codigo" maxlength="50" size="20"><br>
Nombre:
<input type="text" name="nombre" maxlength="50" size="20"><br> 
Código PHP:
 $id_categoria=isset($_POST['id_categoria']) ? $_POST['id_categoria'] : null;

   echo 
"<select name=\"id_categoria\" onChange=\"this.form.submit()\">\n";
   echo 
"<option value=\"\"> Seleccione una Categoría </option>\n";
 
   
$consulta_categoria mysql_query("SELECT * FROM categorias");
 
  while(
$registro_categoria=mysql_fetch_assoc($consulta_categoria)){
      
      if (
$id_categoria == $registro_categoria['id_categoria']){
         echo 
"<option value=\"".$registro_categoria['id_categoria']."\" selected>".$registro_categoria['nombre_categoria']."</option>\n";
      } else {
         echo 
"<option value=\"".$registro_categoria['id_categoria']."\">".$registro_categoria['nombre_categoria']."</option>\n";
      }
    }
   echo 
"</select>\n\n";
 
   
mysql_free_result($consulta_categoria);
 
      echo 
"<select name=\"id_subcategoria\">\n";
 
   if (!empty(
$id_categoria)){
 
       
$consulta_subcategoria mysql_query("SELECT * FROM subcategorias WHERE id_categoria='$id_categoria'");
       
       if (
mysql_num_rows($consulta_subcategoria) != 0){
          while   (
$registro_subcategoria=mysql_fetch_assoc($consulta_subcategoria)){
            echo 
"<option value=\"".$registro_subcategoria['id_subcategoria']."\">".$registro_subcategoria['nombre_subcategoria']."</option>\n";
          }
        } else {
            echo 
"<option value=\"\"> No hay registros para esta Categoría </option>";
        }
    } else {
        echo 
"<option value=\"\"> <-- Seleccione una Subcategoría  </option>";
    }
 
    
mysql_free_result($consulta_subcategoria);
 
    echo 
"</select>\n\n"
Código HTML:
<br>
Descripción:
<input type="text" name="descripcion" maxlength="50" size="5"><br>
Marca:
<input type="text" name="marca" maxlength="50" size="30"><br>
Imagen:
<input type="text" name="imagen" maxlength="50" size="20"><br>
Destacado:
<input type="text" name="destacado" size="9"><br>
<INPUT type="submit" name="enviado" value="Agregar">
</form>
<a href="admin.php">Volver</a>