Foros del Web » Programando para Internet » PHP »

No me inserta en la base de Datos

Estas en el tema de No me inserta en la base de Datos en el foro de PHP en Foros del Web. Estimados soy nuevo aca y recien empezando con PHP, bueno les cuento que he desarrollado un sistema de ingreso de datos web a una base ...
  #1 (permalink)  
Antiguo 12/06/2009, 07:45
 
Fecha de Ingreso: junio-2009
Mensajes: 4
Antigüedad: 15 años, 5 meses
Puntos: 0
No me inserta en la base de Datos

Estimados soy nuevo aca y recien empezando con PHP, bueno les cuento que he desarrollado un sistema de ingreso de datos web a una base de datos, el tema es que no me inserta los datos en la base datos. lo que puedo hacer sin problemas es, consultar y actualizar. la insercion no me resulta desconozco el motivo. de hecho el codigo de insertar lo ingreso en mysql para hacer la prueba y detectar algun error y si me funciona. les dejo el codigo para ver si alguien me puede orientar en mi error.
<?php
if (isset($Buscar)) {
pagina($id_noti);
}
else if (isset($Enviar)) {
//validar que dos noticias no esten en la misma posicion y con publicar =1 al mismo tiempo
include('conexion.php');

$consulta="select * from noticia where publicar=1 and posicion=".$posicion." and id_noti!=".$id_noti." and id_tipo=".$id_tipo."";
$resultado=mysql_query($consulta,$conexion);
if ((mysql_num_rows($resultado)>0) && ($publicar==1)) {
$row = mysql_fetch_array($resultado);
echo "ya existe la noticia ".$row['id_noti']." en esa posición y publicada";
}
else{
$consulta="select * from noticia where id_noti=".$id_noti."";
$resultado=mysql_query($consulta,$conexion);

if (mysql_num_rows($resultado)>0) {
$query= "update noticia set epigra='".$epigra."',titu='".$titu."',baja='".$baj a."',id_dia='".$id_dia."',id_mes='".$id_mes."',id_ ano='".$id_ano."',resumen='".$resumen."',id_tipo=" .$id_tipo.",publicar='".$publicar."',posicion=".$p osicion." ,texto='".$texto."' where id_noti=".$id_noti."";
}
else {
$query= "INSERT INTO noticia(epigra,titu,baja,id_dia,id_mes,id_ano,resu men,id_tipo,publicar,posicion,texto) values ('".$epigra."','".$titu."','".$baja."','".$id_dia. "','".$id_mes."','".$id_ano."','".$resumen."',".$i d_tipo.",'".$publicar."',".$posicion.",'".$texto." ')";
}
mysql_query($query,$conexion);

}

pagina($id_noti);
}
else {
pagina(0);
}
?>
  #2 (permalink)  
Antiguo 12/06/2009, 08:01
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años, 5 meses
Puntos: 1517
Respuesta: No me inserta en la base de Datos

Para poder ver si es un error en los datos que envias a la base de datos escribe en todos los mysql_query() or die(mysql_error());

Ejemplo

Código PHP:

$resultado
=mysql_query($consulta,$conexion) or die(mysql_error()); 
Haz eso con todos a ver que pasa
  #3 (permalink)  
Antiguo 12/06/2009, 08:30
 
Fecha de Ingreso: junio-2009
Mensajes: 4
Antigüedad: 15 años, 5 meses
Puntos: 0
Respuesta: No me inserta en la base de Datos

primero que todo,gracias por contestar, te comento que realice lo que comentaste y no me arroja ningun error, me sigue actualizando y buscando sin problemas, pero aun no puedo insertar.

<?php
if (isset($Buscar)) {
pagina($id_noti);
}
else if (isset($Enviar)) {
//validar que dos noticias no esten en la misma posicion y con publicar =1 al mismo tiempo
include('conexion.php');

$consulta="select * from noticia where publicar=1 and posicion=".$posicion." and id_noti!=".$id_noti." and id_tipo=".$id_tipo."";
$resultado=mysql_query($consulta,$conexion) or die(mysql_error());
if ((mysql_num_rows($resultado)>0) && ($publicar==1)) {
$row = mysql_fetch_array($resultado);
echo "ya existe la noticia ".$row['id_noti']." en esa posición y publicada";
}
else{
$consulta="select * from noticia where id_noti=".$id_noti."";
$resultado=mysql_query($consulta,$conexion) or die(mysql_error());

if (mysql_num_rows($resultado)>0) {
$query= "update noticia set epigra='".$epigra."',titu='".$titu."',baja='".$baj a."',id_dia='".$id_dia."',id_mes='".$id_mes."',id_ ano='".$id_ano."',resumen='".$resumen."',id_tipo=" .$id_tipo.",publicar='".$publicar."',posicion=".$p osicion." ,texto='".$texto."' where id_noti=".$id_noti."";
}
else {
$query= "INSERT INTO noticia(epigra,titu,baja,id_dia,id_mes,id_ano,resu men,id_tipo,publicar,posicion,texto) values ('".$epigra."','".$titu."','".$baja."','".$id_dia. "','".$id_mes."','".$id_ano."','".$resumen."',".$i d_tipo.",'".$publicar."',".$posicion.",'".$texto." ')";
}

mysql_query($query,$conexion) or die(mysql_error());

}

pagina($id_noti);
}
else {
pagina(0);
}
?>
  #4 (permalink)  
Antiguo 12/06/2009, 08:37
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años, 5 meses
Puntos: 1517
Respuesta: No me inserta en la base de Datos

mmm, cual es el proceso que tu haces para saber si es problema con la variable de $id_noti
  #5 (permalink)  
Antiguo 12/06/2009, 08:41
Avatar de martin0341  
Fecha de Ingreso: septiembre-2006
Ubicación: Rosario - Santa Fe
Mensajes: 296
Antigüedad: 18 años, 2 meses
Puntos: 8
Respuesta: No me inserta en la base de Datos

podes mostrar la salida con un echo $query del query insert, asi vemos mejor que puede ser
  #6 (permalink)  
Antiguo 12/06/2009, 08:53
 
Fecha de Ingreso: junio-2009
Mensajes: 4
Antigüedad: 15 años, 5 meses
Puntos: 0
Respuesta: No me inserta en la base de Datos

la variable $id_noti , lleva el contador de datos, es decir el numero de noticias. es el que le asigna un numero a una noticia, no se si me explico.

con respecto a lo que me pregunta Martin hago el echo a la $query pero lo raro que tampoco me imprime el los datos $query no se si lo coloco mal o no. asi hago la consulta.

if (mysql_num_rows($resultado)>0) {
$query= "update noticia set epigra='".$epigra."',titu='".$titu."',baja='".$baj a."',id_dia='".$id_dia."',id_mes='".$id_mes."',id_ ano='".$id_ano."',resumen='".$resumen."',id_tipo=" .$id_tipo.",publicar='".$publicar."',posicion=".$p osicion." ,texto='".$texto."' where id_noti=".$id_noti."";
}
else {
$query= "INSERT INTO noticia(epigra,titu,baja,id_dia,id_mes,id_ano,resu men,id_tipo,publicar,posicion,texto) values ('".$epigra."','".$titu."','".$baja."','".$id_dia. "','".$id_mes."','".$id_ano."','".$resumen."',".$i d_tipo.",'".$publicar."',".$posicion.",'".$texto." ')";
}

mysql_query($query,$conexion);
echo"".$query."";
}
  #7 (permalink)  
Antiguo 12/06/2009, 09:02
Avatar de martin0341  
Fecha de Ingreso: septiembre-2006
Ubicación: Rosario - Santa Fe
Mensajes: 296
Antigüedad: 18 años, 2 meses
Puntos: 8
Respuesta: No me inserta en la base de Datos

quizas nunca entre al else ...
  #8 (permalink)  
Antiguo 12/06/2009, 09:15
 
Fecha de Ingreso: junio-2009
Mensajes: 4
Antigüedad: 15 años, 5 meses
Puntos: 0
Respuesta: No me inserta en la base de Datos

y como saber si entra al ELSE, ya que lo que mencionas puedo hacer todo menos insertar.
  #9 (permalink)  
Antiguo 12/06/2009, 10:57
Avatar de martin0341  
Fecha de Ingreso: septiembre-2006
Ubicación: Rosario - Santa Fe
Mensajes: 296
Antigüedad: 18 años, 2 meses
Puntos: 8
Respuesta: No me inserta en la base de Datos

probando y probando...yo pondria dentro del else un
Código PHP:
echo "entre al else!!"
y me aseguraria de que tenga q insertar si o si para ver que sale...
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 21:57.