Foros del Web » Programando para Internet » PHP »

No Puedo Agregar algo a la BD

Estas en el tema de No Puedo Agregar algo a la BD en el foro de PHP en Foros del Web. Hola buenas tardes necesito que alguna persona haga un analisis de este codigo, ya que no me agrega productos a la BD, y vean bien ...
  #1 (permalink)  
Antiguo 02/03/2011, 15:15
 
Fecha de Ingreso: febrero-2007
Ubicación: Caracas
Mensajes: 148
Antigüedad: 17 años, 1 mes
Puntos: 6
Información No Puedo Agregar algo a la BD

Hola buenas tardes necesito que alguna persona haga un analisis de este codigo, ya que no me agrega productos a la BD, y vean bien en codigo JavaScrip a ver si esta alli
Codigo accion.php
Código:
<html>
<head>
  <title>::.. Importadora MMN ..::</title>
</head>
<body>

<? 
  include_once "conexion.php";
  	if($_POST[quehacer]=="agregar")
	  {
	   $consulta = "select * from categorias where desc_categoria = '".$_POST[textdescripcion]."'  ";
       $resultado = mysql_query($consulta);
	   $num_filas = mysql_num_rows($resultado);
		 if(!$num_filas)
		    {
			 $consulta = "insert into categorias values ('".$_POST[textdescripcion]."', '".$_POST[textimagen]."' )";
			 $resultado = mysql_query($consulta);
		    }  
		   else
		    {
?>
<script language="javascript">
  alert("La Descripción ya exite\n intente con otra.")
				   history.go(-1)
</script> 
<?
		}
	}
  if ($_POST[quehacer]=="eliminar")
       {
	    $consulta = "delete from categorias where id_categoria='".$_POST[selectdescripcion]."' ";
	    $resultado = mysql_query($consulta); 
	   }		
	     if ($_POST[quehacer]=="modificar")
            {
	          $consulta = "update categorias set desc_categoria='".$_POST['textdescripcion']." ',
			  img_categoria = '".$_POST['textimagen']."' where id_categoria='".$_POST[textid]."' ";    
	          $resultado = mysql_query($consulta); 
	        }		
 ?>
<script language="javascript"> 
  alert ("Informacion Procesada satisfactoriamente\n Gracias.");
  location.href='adm_categorias.php';
</script>

</body>
</html>
Codigo Formulario (adm_categorias.php)
Código:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Administrador de Categoria / Importadora MMN</title>
<style type="text/css">
<!--
.style1 {color: #CE7E03}
.style5 {
	font-size: 18px;
	color: #FFFFFF;
}
.style8 {color: #000000}
.style9 {font-size: 18px}
-->
</style>
</head>

<body><table width="756"  border="0" align="center">
  <tr>
    <td width="750"><img src="/autopartes/imagenes/logo_mcontenido.jpg" width="750" height="200" /></td>
  </tr>
  <tr>
    <td><div align="center" class="style1 style9"><span class="style8"> <a href="/autopartes/mcontenido.php">Inicio</a> \ <a href="/autopartes/adm_categorias.php">Categorias</a> \ <a href="/autopartes/admin_producto.php">Productos</a> \ <a href="/autopartes/adm_publicidad.php">Publicidad</a> \ <a href="/autopartes/adm_datovehiculo.php">Datos Vehiculo</a>  \ <a href="/autopartes/adm_marcas.php">Marcas</a></a> \  </span><span class="style6"><a href="/autopartes/adm_modelo.php" class="style8">Modelo</a> </span>\<a href="/autopartes/adm_version_vehiculo.php">Versi&oacute;n</span> Vehiculo</a></div></td>
  </tr>
  
  <tr>
    <td height="23" background="/autopartes/imagenes/carro1.jpg"><div align="center"><span class="style5">ADMINISTRADOR DE CATEGORIAS</span>
     <table width="324" border="1" cellspacing="0" cellpadding="0">
  <tr>
    <td><form action="" method="post" name="formcategoria" id="formcategoria">
        <table width="324" border="0" cellspacing="0" cellpadding="3">
          <tr> 
            <td colspan="2"><p align="center"><strong>Agregar Categoria </strong></p></td>
          </tr>
          <tr> 
            <td></td>
            <td height="10"></td>
          </tr>
          <tr> 
            <td>Descripcion </td>
            <td><input name="textdescripcion" type="text" id="textdescripcion" size="40" maxlength="40"></td>
          </tr>
          <tr> 
            <td><span class="Estilo3">Imagen</span></td>
            <td><input name="textimagen" type="text" id="textimagen"></td>
          </tr>
          <tr> 
            <td></td>
            <td></td>
          </tr>
          <tr> 
            <td colspan="2"><div align="center"> 
                <input name="agregar" type="button" id="agregar2" value="Agregar" onClick="accion_agregar()">
                <input name="quehacer" type="hidden" id="quehacer">
              </div></td>
          </tr>
          <tr> 
            <td colspan="2" class="Estilo3"><div align="center">----------------------------------------------------</div></td>
          </tr>
          <tr> 
            <td colspan="2"><p align="center"><strong>Modificar / Eliminar Categoria 
                </strong></p></td>
          </tr>
          <tr> 
            <td></td>
            <td height="10"></td>
          </tr>
          <tr> 
            <td class="Estilo3">Descripci&oacute;n</td>
            <td> <span class="Estilo2"> 
              <?php 
      include_once"conexion.php";
	  $consulta = "select * from categorias"; //consulta query
	  $resultado = mysql_query($consulta);//ejecuta la consulta y guarda el resultado en la variable $reslutado 
	  $num_filas = mysql_num_rows($resultado);//guarda en la variable $num_filas el numero de items que devuelve   
?>
              <select name="selectdescripcion" id="selectdescripcion">
                <?php 
		for  ($i=0; $i < $num_filas; $i++)
		{
		 $fila = mysql_fetch_array($resultado);
     	echo "<option value=".$fila["id_categoria"].">".$fila["desc_categoria"]."</option>";   
		}	  
	?>
              </select>
              </span></td>
          </tr>
          <tr> 
            <td>&nbsp;</td>
            <td>&nbsp;</td>
          </tr>
          <tr> 
            <td colspan="2"><div align="center"> 
                <input name="Modificar" type="button" id="Modificar3" value="Modificar" onClick="accion_modifica()">
                &nbsp;&nbsp; 
                <input name="Eliminar" type="button" id="Eliminar" value="Eliminar" onClick="accion_eliminar()">
              </div></td>
          </tr>
          <tr> 
            <td></td>
            <td height="10"></td>
          </tr>
        </table>
    </form></td>
  </tr>
</table>

<p>  <script language="javascript" type="text/javascript">
function accion_agregar()
{
  if (document.formcategoria.textdescripcion.value != "" && document.formcategoria.textimagen.value != "")
  {
		document.formcategoria.action="accion_categoria.php"
		document.formcategoria.quehacer.value = "agregar"
		document.formcategoria.submit()
  }
  else
  {
  		alert ("Dejaste algún dato en blanco \n Debes completarlo")
		document.formcategoria.textdescripcion.focus()
		return;
  }
}

function accion_eliminar()
{
	confirma=confirm("Seguro desea eliminar? ")
	if (confirma)
	{
		document.formcategoria.action="accion_categoria.php"
		document.formcategoria.quehacer.value = "eliminar"
		document.formcategoria.submit()
  	}
}

function accion_modifica()
{
		document.formcategoria.action="modifica_categoria.php"
		document.formcategoria.submit()
}
  </script>
   </div>
    </td>
  </tr>
</table>
</body>
</html>
Conexion de BD

Código:
<?php
$conexion= mysql_connect("127.0.0.1","usuario","clave");
	if (!$conexion)
		{
		 echo"Error: Nos se ha podido conectar a la Base de Datos. Por Favor intente mas tarde";
		 exit;
		}
	mysql_select_db("autopartes");
?>
  #2 (permalink)  
Antiguo 02/03/2011, 17:31
 
Fecha de Ingreso: agosto-2009
Mensajes: 216
Antigüedad: 14 años, 8 meses
Puntos: 3
Respuesta: No Puedo Agregar algo a la BD

Hola, pues no te inserta nada en la base de datos, porque la consulta SQL está mal. Debería ser:

Código PHP:
$consulta "INSERT INTO categorias (campo1, campo2)
 VALUES ('"
.$_POST[textdescripcion]."', '".$_POST[textimagen]."' )"
Prueba así y me dices.

Un saludo!
  #3 (permalink)  
Antiguo 02/03/2011, 18:47
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: No Puedo Agregar algo a la BD

Cita:
Iniciado por bienpiyao Ver Mensaje
Hola, pues no te inserta nada en la base de datos, porque la consulta SQL está mal. Debería ser:

Código PHP:
$consulta "INSERT INTO categorias (campo1, campo2)
 VALUES ('"
.$_POST[textdescripcion]."', '".$_POST[textimagen]."' )"
Prueba así y me dices.

Un saludo!
Se pueden obviar los campos a insertar siempre y cuando uses el mismo formato que tiene la tabla, es decir, si tienes 3 campos, nombre, apellido y edad, debes introducir los valores en ese orden SIN saltar ningun campo, es decir no puedes hacer INSERT INTO tabla VALUES('nombre', 34) ... Deberia ser siempre INSERT INTO tabla VALUES('nombre', 'apellido', 54)

Depura tus consultas usando mysql_error().

Código PHP:
$resultado mysql_query($consulta) or die(mysql_error()); 
  #4 (permalink)  
Antiguo 03/03/2011, 07:48
 
Fecha de Ingreso: febrero-2007
Ubicación: Caracas
Mensajes: 148
Antigüedad: 17 años, 1 mes
Puntos: 6
Respuesta: No Puedo Agregar algo a la BD

Ok con este mismo codigo como haria para que solo fuera un boton, que diga o tenga un icono de me gusta? tiene que unir el producto en el que esta el boton y hacer como un contador para contabilizar los me gusta de cada producto. Aqui en este foro hay algo parecido a lo que se quiere?
  #5 (permalink)  
Antiguo 03/03/2011, 10:09
Avatar de arepavieja  
Fecha de Ingreso: marzo-2011
Mensajes: 207
Antigüedad: 13 años, 1 mes
Puntos: 9
Respuesta: No Puedo Agregar algo a la BD

aja pero tienes que recibir los campos con $_POST['campo']; te faltan las comillas simples, y cuando lo hagas en la consulta entonces los quitas. Deberia quedar algo como:

$consulta = "insert into categorias (campo1, campo2) values ('$_POST[textdescripcion]', '$_POST[textimagen]')"; y cuando los reciebes quedarian algo como:

if($_POST['quehacer']=="agregar")
  #6 (permalink)  
Antiguo 03/03/2011, 10:47
 
Fecha de Ingreso: febrero-2007
Ubicación: Caracas
Mensajes: 148
Antigüedad: 17 años, 1 mes
Puntos: 6
Respuesta: No Puedo Agregar algo a la BD

Es queel codigo Script no pasa por esa parte sino que se va directo para
Código:
{
		  ?>
		    <script language="javascript" type="text/javascript">
			 alert("La Descripción ya existe\n intente con otra.")
			 history.go(-1)
            </script>
          <?php
     }
y Nunca pasa por aqui

Código:
<?php
 include_once "conexion.php";
  
   if($_POST['quehacer']=="agregar")
   {
	  $consulta = "select * from categorias where desc_categoria =  '".$_POST[textdescripcion]."' ";
	  $resultado = mysql_query($cosulta);
	  $num_filas = mysql_num_rows($resultado);
	  if (!$num_filas)
	  {
		  $consulta = "insert into categorias (desc_categoria, img_categoria) values ('$_POST[textdescripcion]', '$_POST[textimagen]')";   
		  $resultado = mysql_query($consulta) or die(mysql_error());  
 
	  }
	  else
	  {
Codigo completo

Código:
<?php
 include_once "conexion.php";
  
   if($_POST['quehacer']=="agregar")
   {
	  $consulta = "select * from categorias where desc_categoria =  '".$_POST[textdescripcion]."' ";
	  $resultado = mysql_query($cosulta);
	  $num_filas = mysql_num_rows($resultado);
	  if (!$num_filas)
	  {
		  $consulta = "insert into categorias (desc_categoria, img_categoria) values ('$_POST[textdescripcion]', '$_POST[textimagen]')";   
		  $resultado = mysql_query($consulta) or die(mysql_error());  
 
	  }
	  else
	  {
		  ?>
		    <script language="javascript" type="text/javascript">
			 alert("La Descripción ya existe\n intente con otra.")
			 history.go(-1)
            </script>
          <?php
     }
?>
y de Ultimo esto

Código:
 <script language="javascript" type="text/javascript">
      alert("Información Procesada satisfactoriamente Gracias");
	  
  </script
  #7 (permalink)  
Antiguo 03/03/2011, 10:56
Avatar de arepavieja  
Fecha de Ingreso: marzo-2011
Mensajes: 207
Antigüedad: 13 años, 1 mes
Puntos: 9
Respuesta: No Puedo Agregar algo a la BD

primero comprueba que se están enviando correctamente las variables. envía al action a una página de prueba y revisa que se envían esas variables con los valores correctos.
  #8 (permalink)  
Antiguo 03/03/2011, 11:01
 
Fecha de Ingreso: febrero-2007
Ubicación: Caracas
Mensajes: 148
Antigüedad: 17 años, 1 mes
Puntos: 6
Respuesta: No Puedo Agregar algo a la BD

Esto tendra que ver con la version del PHP y MYSQL Instalas¡do ahh el Apache? ya que el soporte de varibles varia en versiones, y en una maquina me da errores de variables y en la otra no, con lo que seria modificar...

Porfa avisame si sabes algun codigo asi como el que tiene facebook, de megusta , para aplicarlo en la pagina
  #9 (permalink)  
Antiguo 03/03/2011, 11:12
Avatar de arepavieja  
Fecha de Ingreso: marzo-2011
Mensajes: 207
Antigüedad: 13 años, 1 mes
Puntos: 9
Respuesta: No Puedo Agregar algo a la BD

no creo, antes se recibían con HTTP_POST_VARS y aún así creo que las sigue recibiendo. pero no creo que sea eso.. y con respecto a lo de facebook. jaja no.. no se... tendrías que usar algo de ajax o jquery, lo máximo que pude conseguir, fue agregar ese botón a la página. pero el código en si no....
  #10 (permalink)  
Antiguo 03/03/2011, 12:12
 
Fecha de Ingreso: febrero-2007
Ubicación: Caracas
Mensajes: 148
Antigüedad: 17 años, 1 mes
Puntos: 6
Respuesta: No Puedo Agregar algo a la BD

Código:
Este es mi codigo de Megusta


echo "<td width='280' align='left'><div class='catalogo_descripcion'><h1>" . ucwords(strtolower($row[Descripcion])) . "</h1><h2>COD " . $row[CodigoProducto] . "</h2><h3>" . money_format('%.2n', $row[PrecioUnitario1])  . "</h3><div><form action='' method='post' name='formmegusta' id='formmegusta'><input name='mgusta' type='button' id='mgusta' value='Me Gusta' onClick='megusta()'/><input name='quehacer' type='hidden' id='quehacer'></form></div><a href='?pag=detalle&id=" . $row[CodigoProducto] . "'>Ver Detalle</a></div><a href='?pag=detalle&id=" . $row[CodigoProducto] . "'><img src='" . $imagen . "' border='0' alt='" . $row[Descripcion] . "' /></a></td>\n";

Y este es la accion
<? 
	include ($_SERVER[DOCUMENT_ROOT] . "/proyectocrossh/sec/funciones.php");
  	 if($_POST[quehacer]=="megusta")
	 	{
		 $consulta = "select * from categorias where desc_categoria = '".$_POST[mgusta]."' ";
		 $resultado = mysql_query($consulta);
	     $num_filas = mysql_num_rows($resultado);
			if(!$num_filas)
				{
				 $consulta = "insert into categorias values ('".$_POST[mgusta]."' )";
				 $resultado = mysql_query($consulta);
				}  
				 else
				{
				 ?>
				  <script language="javascript" type="text/javascript">
				   alert("La Descripción ya exite\n intente con otra.")
				   history.go(-1)
				  </script> 
				 <?
				}
		}

?>
    <script language="javascript" type="text/javascript"> 
		alert ("Gracias.");
		location.href='plantilla_catalogo.php';
	</script>
  #11 (permalink)  
Antiguo 03/03/2011, 12:18
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: No Puedo Agregar algo a la BD

Cambia:
Código PHP:
if(!$num_filas
Por:
Código PHP:
if($num_filas == 0
  #12 (permalink)  
Antiguo 04/03/2011, 09:39
 
Fecha de Ingreso: febrero-2007
Ubicación: Caracas
Mensajes: 148
Antigüedad: 17 años, 1 mes
Puntos: 6
Respuesta: No Puedo Agregar algo a la BD

Auxilio ni con lo que le ponga esta miercoles no funciona.

Código:
<? 
error_reporting(E_ERROR | E_WARNING | E_PARSE | E_NOTICE);
include_once "conexion.php";
if($_POST[quehacer]=="agregar")
{
 $consulta = "select * from categorias where desc_categoria = '".$_POST[textdescripcion]."' ";
 $resultado = mysql_query($consulta);
 $num_filas = mysql_num_rows($resultado);
 if(!$num_filas==0)
 {
   	 $consulta = "INSERT INTO categorias (desc_categoria, img_categoria) VALUES ('".$_POST[textdescripcion]."', '".$_POST[textimagen]."' )";  	 
	 $resultado = mysql_query($consulta) or die(mysql_error());  
   	}  
	 else
	{
	     ?>
		   <script language="javascript">
		   alert("La Descripción ya exite\n intente con otra.")
		   history.go(-1)
		   </script> 
		 <?
	}
}
if ($_POST["quehacer"]=="eliminar")
    {
	 $consulta = "delete from categorias where id_categoria='".$_POST[selectdescripcion]."' ";
	 $resultado = mysql_query($consulta); 
	}		
if ($_POST["quehacer"]=="modificar")
    {
	 $consulta = "update categorias set desc_categoria='".$_POST['textdescripcion']." ',
	             img_categoria = '".$_POST[textimagen]."' where id_categoria='".$_POST[textid]."' ";    
	 $resultado = mysql_query($consulta); 
	}		
?>
    <script language="javascript"> 
		alert ("Informacion Procesada satisfactoriamente\n Gracias.");
		location.href='adm_categoria.php';
	</script>
  #13 (permalink)  
Antiguo 04/03/2011, 09:42
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: No Puedo Agregar algo a la BD

Era:
Código PHP:
if($num_filas==0
, no:
Código PHP:
if(!$num_filas==0
  #14 (permalink)  
Antiguo 04/03/2011, 12:25
 
Fecha de Ingreso: febrero-2007
Ubicación: Caracas
Mensajes: 148
Antigüedad: 17 años, 1 mes
Puntos: 6
Respuesta: No Puedo Agregar algo a la BD

Tampoco, no se que pensar , sobre mi Script.
  #15 (permalink)  
Antiguo 04/03/2011, 12:30
 
Fecha de Ingreso: febrero-2007
Ubicación: Caracas
Mensajes: 148
Antigüedad: 17 años, 1 mes
Puntos: 6
Respuesta: No Puedo Agregar algo a la BD

Tampoco, no se que pensar , sobre mi Script.
  #16 (permalink)  
Antiguo 04/03/2011, 12:39
 
Fecha de Ingreso: febrero-2007
Ubicación: Caracas
Mensajes: 148
Antigüedad: 17 años, 1 mes
Puntos: 6
Respuesta: No Puedo Agregar algo a la BD

Tampoco, no se que pensar , sobre mi Script.

Etiquetas: bd
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




La zona horaria es GMT -6. Ahora son las 17:59.