Ver Mensaje Individual
  #1 (permalink)  
Antiguo 12/11/2011, 23:26
Syprog
 
Fecha de Ingreso: mayo-2007
Mensajes: 88
Antigüedad: 16 años, 11 meses
Puntos: 0
problemas para insertar en una base de datos

veran estoy haciendo un programa que entre otras cosas inserta nuevos parametros a una base de datos en mysql a travez de un formulario tengo el siguiente codigo:
Código:
<?php error_reporting(0);?>
  <?php
  require_once 'DB.php';
  $query = 'select * from item order by ID_T';
  $items =$db->query($query);
  $query = 'select * from marca order by ID_M';
  $marcas = $db->query($query);  
  $query = 'select * from proveedores order by ID_Provedor';
  $provedores = $db->query($query);
   ?>
<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
        <link rel="stylesheet" type="text/css" href="datos.css"/>
        <title>Tower Soft </title>
    </head>
    <body>
        <div id="page">
            <div id ="header">
                <h1>Mantenimiento del catalogo de towersoft</h1>
            </div>
            <div id="main">
                <h1>Agregar nuevo producto</h1>
                <form action="agregarItem.php" method="post" id="agregar_item">
                    
                    <label>Piezas de Ensamblaje</label>
                    <select name="item">
                        <?php foreach($items as $item):?>
                        <option value="<?php echo $item['ID_T']; ?>">
                        <?php echo $item['Nombre'];?>
                        </option>
                        <?php endforeach; ?>
                    </select>
                    <br /><br>
                    
                    <label>marcas</label>
                    <select name="marca">
                        <?php foreach($marcas as $marca):?>
                        <option value="<?php echo $marca['ID_M']; ?>">
                        <?php echo $marca['NMarca'];?>
                        </option>
                        <?php endforeach; ?>
                    </select>
                    <br></br>
                    
                    
                    <label>Caracteristicas:</label>
                    <input type="text" name="caracteristica" />
                    <br /><br>
                    <label>Precio:</label>
                    <input type="text" name="precio"/>
                    <br /><br>
                    <label>Existencia:</label>
                    <input type="text" name="existencia"/>
                    <br /><br>
                                        
                    <label>Proveedores</label>
                    <select name="proveedor">
                        <?php foreach($provedores as $provedor):?>
                        <option value="<?php echo $provedor['ID_Provedor']; ?>">
                        <?php echo $provedor['Nombre'];?>
                        </option>
                        <?php endforeach; ?>
                    </select>
                    <br></br>
                    
                    <label>&nbsp;</label>
                    <input type="submit" value="agregar" />
                    <br /><br>
                </form>
                <p> <a href="index.php">Ver Libros</a> </p>
            </div>
            <div id="footer">
                <p>&copy; <?php echo date ('Y'); ?> Svartalv reino de forjadores</p>
            </div>
        </div>

    </body>
</html>
y este otro

Código:
php error_reporting (0); ?>
<?php


  $ID_T= $_POST['item'];
  $ID_M= $_POST['marca'];
  $caracteristica= $_POST['caracteristica'];
  $precio= $_POST['precio'];
  $existencia=$_POST ['existencia'];
  $ID_provedor=$_POST['proveedor'];

  if(empty($caracteristica)||empty($precio)||empty($existencia))
  {$error_message="Todos los campos solicitados son requeridos. Intente nuevamente";
 include ('error.php');
  }
 else
 {
       print "entre";
       require_once ('DB.php');
       $query= "INSERT INTO productos
           (ID_P,ID_T,ID_M,Caracteristica,Precio,
           Existencia,ID_Provedor) VALUES
           (0,$ID_T, $ID_M '$caracteristica',$precio,$existencia,$ID_provedor)";
             $db-> exec($query);
             include ('index.php');
 }


?>
basicamente se supone que deveria de hacer la incercion de datos sin embargo primero me daba el error que yo mismo defini de que no habia llenado todos los campos, pero si lo habia hecho, por lo que supuse que desde el primer codigo alguno de los datos no estaba siendo resivido en el segundo pero a nivel de codigo porque a el formulario lo llenaba, hice algunos cambios y el error dejo de aparecer, sin embargo los datos no se insertan y si quiero verificarlos el error reaparece.

PD: lo nombres de los campos si corresponden a la base de datos así que teoricamente no deveria haber problema por ese lado.

podria decirme alguien en que estoy fallando.

Grasias de antemano