Foros del Web » Programando para Internet » PHP »

error al guardar en mysql desde php

Estas en el tema de error al guardar en mysql desde php en el foro de PHP en Foros del Web. Hola a todos... tengo este codigo, pero no me almacena absolutamente nada en la base de datos, puse a imprimir as variables en pantalla mediante ...
  #1 (permalink)  
Antiguo 18/07/2012, 10:38
Avatar de mager3  
Fecha de Ingreso: junio-2012
Ubicación: Medellin
Mensajes: 318
Antigüedad: 11 años, 10 meses
Puntos: 4
Información error al guardar en mysql desde php

Hola a todos...

tengo este codigo, pero no me almacena absolutamente nada en la base de datos, puse a imprimir as variables en pantalla mediante un echo y todo lo que ingreso me lo imprime bien en PANTALLA pero en la base de datos no almacena nada de nada.

ya verifique y las variables estan bien escritas, de echo ejecute la consulta SQL poniendo datos manuales mediante un cliente SQL y me almanceno la informacion sin problemas...... que puedo estar haciendo mal? llevo varios dias mirando y no he logrado conseguirlo:

Código PHP:
Ver original
  1. <html xmlns="http://www.w3.org/1999/xhtml">
  2. <head>
  3. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  4. <title>Documento sin t&iacute;tulo</title>
  5. </head>
  6. <?php
  7. include ("conexion.php");
  8. //extract ($_POST, EXTR_PREFIX_ALL, "pst");
  9. $tipo=$_POST['txttipo'];
  10. $titulo=$_POST['txttitulo'];
  11. $ciudad=$_POST['txtciudad'];
  12. $institucion=$_POST['txtinstitucion'];
  13. $inicio=$_POST['txtinicio'];
  14. $fin=$_POST['txtfin'];
  15. $documento=$_GET['identidad'];  // variable documento que recibo de la pagina anterior
  16. echo $tipo;
  17. echo $documento;
  18. echo $ciudad;
  19. echo $institucion;
  20. echo $titulo;
  21. echo $inicio;
  22. echo $fin;
  23.  
  24. //////////////////////////////////////////////////////-------QUERY´s-------////////////////////////////////////////////////////
  25. $link = mysql_connect("127.0.0.1","XXXXX","XXXX");
  26. mysql_select_db("convocatoria",$link);
  27.  
  28. $instituciones=mysql_query("select * from universidades");  //cargo a la variable $estado todo lo que esta en la tabla universidades
  29. $nivel=mysql_query("select * from nivel_estu");  //cargo a la variable $estado todo lo que esta en la tabla universidades
  30. $insertar=mysql_query("INSERT INTO estudios_soli    (documento_soli,tipo_estudio,titulo_estudio,ciudad_estudio,institucion_soli,fechainicio_estudio,fechafin_estudio)VALUES('$documento','$tipo','$titulo','$ciudad',$'institucion','$inicio','$fin')",$link);
  31. $my_error = mysql_error($link);
  32. ?>
  33. <body>
  34. <form id="form1" name="form1" method="post" action="">
  35.   <table width="820" border="1">
  36.     <tr>
  37.       <td>&nbsp;</td>
  38.       <td>&nbsp;</td>
  39.     </tr>
  40.     <tr>
  41.       <td>Tipo estudio :</td>
  42.       <td><label>
  43.         <select name="txttipo" id="txttipo">
  44.         <?php
  45.             while ($h=mysql_fetch_array($nivel)) // Con este arreglo lleno la lista /Menu con los valores de la tabla tipo_usuario
  46.             {  
  47.                 echo'<option value='.$h[id_nivel].'>'.$h[descrip_nivel].'</option>';
  48.             }
  49.          ?>
  50.         </select>
  51.       </label></td>
  52.     </tr>
  53.     <tr>
  54.       <td>Titulo del estudio</td>
  55.       <td><label>
  56.         <input type="text" name="txttitulo" id="txttitulo" />
  57.       </label></td>
  58.     </tr>
  59.     <tr>
  60.       <td>Ciudad :</td>
  61.       <td><label>
  62.         <input type="text" name="txtciudad" id="txtciudad" />
  63.       </label></td>
  64.     </tr>
  65.     <tr>
  66.       <td>Institucion</td>
  67.       <td><label>
  68.         <select name="txtinstitucion" id="txtinstitucion">
  69.          <?php
  70.             while ($f=mysql_fetch_array($instituciones)) // Con este arreglo lleno la lista /Menu con los valores de la tabla tipo_usuario
  71.             {  
  72.                 echo'<option value='.$f[id_uni].'>'.$f[descrip_uni].'</option>';
  73.             }
  74.          ?>
  75.         </select>
  76.       </label></td>
  77.     </tr>
  78.     <tr>
  79.       <td>Duracion Programa</td>
  80.       <td><label>
  81.         <input type="text" name="txtinicio" id="txtinicio" />
  82.         <br>
  83.         <br>
  84.       </label></td>
  85.     </tr>
  86.     <tr>
  87.       <td>&nbsp;</td>
  88.       <td><input type="text" name="txtfin" id="txtfin"></td>
  89.     </tr>
  90.     <tr>
  91.       <td>&nbsp;</td>
  92.       <td><label>
  93.         <input type="submit" name="enviar" id="enviar" value="Enviar" />
  94.       </label></td>
  95.     </tr>
  96.   </table>
  97. </form>
  98. </body>
  99. </html>

  #2 (permalink)  
Antiguo 18/07/2012, 10:53
Avatar de jotaincubus  
Fecha de Ingreso: mayo-2005
Ubicación: Medellin - Colombia
Mensajes: 1.797
Antigüedad: 18 años, 11 meses
Puntos: 394
Respuesta: error al guardar en mysql desde php

Que tal si empiezas a utilizar las herramientas que nos brinda PHP para verificar los errores generados al intentar realizar la sentencia SQL

Código PHP:
Ver original
  1. $sql = "INSERT INTO estudios_soli    (documento_soli,tipo_estudio,titulo_estudio,ciudad_estudio,institucion_soli,fechainicio_estudio,fechafin_estudio)VALUES('$documento','$tipo','$titulo','$ciudad',$'institucion','$inicio','$fin')";
  2. $insertar = mysql_query($sql, $link) or die (mysql_error());

Esto te imprimira en pantalla el error que tiene la sentencia SQL y porque no esta realizando la accion.

Apenas tengas el error vuelves aca o "NO", con el error generado por MySql. (digo que NO porque los mensajes son tan claros que a veces ya ni es necesaria la ayuda).
__________________
Por que existe gente que no agradece después de que se le ha brindado tiempo y ayuda ???
  #3 (permalink)  
Antiguo 18/07/2012, 10:56
Avatar de poncharelo_69  
Fecha de Ingreso: octubre-2011
Ubicación: Queretaro
Mensajes: 86
Antigüedad: 12 años, 6 meses
Puntos: 10
Respuesta: error al guardar en mysql desde php

Puede que no te inserte ya que veo que en la linea del insert hay un error y es que tienes el simbolo de $ fuera de unas comillas.

Código PHP:
//tienes esto
$insertar=mysql_query("INSERT INTO estudios_soli    (documento_soli,tipo_estudio,titulo_estudio,ciudad_estudio,institucion_soli,fechainicio_estudio,fechafin_estudio)
VALUES('$documento','$tipo','$titulo','$ciudad',$'institucion','$inicio','$fin')"
,$link);

//prueba esto
$insertar=mysql_query("INSERT INTO estudios_soli    (documento_soli,tipo_estudio,titulo_estudio,ciudad_estudio,institucion_soli,fechainicio_estudio,fechafin_estudio)
VALUES('$documento','$tipo','$titulo','$ciudad','$institucion','$inicio','$fin')"
,$link); 
Segundo, como dice jotain prueba con las herramientas de php, ve si te manda un error y comenta cual fue?
  #4 (permalink)  
Antiguo 18/07/2012, 12:26
Avatar de mager3  
Fecha de Ingreso: junio-2012
Ubicación: Medellin
Mensajes: 318
Antigüedad: 11 años, 10 meses
Puntos: 4
Respuesta: error al guardar en mysql desde php

excelente.... puse la validacion del error y ahora me muestra lo siguiente:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '1' at line 1

Que creen que puede ser? porque observo la linea 1 y la veo bien....
  #5 (permalink)  
Antiguo 18/07/2012, 12:31
Avatar de jotaincubus  
Fecha de Ingreso: mayo-2005
Ubicación: Medellin - Colombia
Mensajes: 1.797
Antigüedad: 18 años, 11 meses
Puntos: 394
Respuesta: error al guardar en mysql desde php

Como dice @mager3 tienes un error en $'institucion', espero te sirva y recuerda que las herramientas ayudan a depurar el codigo. ;)
__________________
Por que existe gente que no agradece después de que se le ha brindado tiempo y ayuda ???
  #6 (permalink)  
Antiguo 18/07/2012, 12:42
Avatar de mager3  
Fecha de Ingreso: junio-2012
Ubicación: Medellin
Mensajes: 318
Antigüedad: 11 años, 10 meses
Puntos: 4
Respuesta: error al guardar en mysql desde php

sii, ya lo repare pero sigue el mismo error.....
  #7 (permalink)  
Antiguo 18/07/2012, 13:01
Avatar de jotaincubus  
Fecha de Ingreso: mayo-2005
Ubicación: Medellin - Colombia
Mensajes: 1.797
Antigüedad: 18 años, 11 meses
Puntos: 394
Respuesta: error al guardar en mysql desde php

Ummm la verdad no se cual es la variable que lleva 1, pero deberias realizar un echo a $sql para mirar la estructura de la sentencia SQL, casi siempre es la falta de comillas o la falta de una coma.
__________________
Por que existe gente que no agradece después de que se le ha brindado tiempo y ayuda ???
  #8 (permalink)  
Antiguo 18/07/2012, 13:17
Avatar de xpapachox  
Fecha de Ingreso: junio-2011
Mensajes: 77
Antigüedad: 12 años, 10 meses
Puntos: 12
Respuesta: error al guardar en mysql desde php

No te insertara nada. Pues no le dices en que momento haga esa insercion..
<?php
include ("conexion.php");
$link = mysql_connect("127.0.0.1","XXXXX","XXXX");
mysql_select_db("convocatoria",$link);

//Si se pulso el boton de nombre enviar entonces recuperas los valores de los campos..

if(isset($_POST['enviar'])){

$tipo=$_POST['txttipo'];
$titulo=$_POST['txttitulo'];
$ciudad=$_POST['txtciudad'];
$institucion=$_POST['txtinstitucion'];
$inicio=$_POST['txtinicio'];
$fin=$_POST['txtfin'];
$documento=$_GET['identidad'];

//Luego simplemente insertas..
$insertar=mysql_query("INSERT INTO estudios_soli (documento_soli,tipo_estudio,titulo_estudio,ciudad _estudio,institucion_soli,fechainicio_estudio,fech afin_estudio)VALUES('$documento','$tipo','$titulo' ,'$ciudad',$'institucion','$inicio','$fin')",$link );

}
  #9 (permalink)  
Antiguo 18/07/2012, 14:00
Avatar de mager3  
Fecha de Ingreso: junio-2012
Ubicación: Medellin
Mensajes: 318
Antigüedad: 11 años, 10 meses
Puntos: 4
De acuerdo Respuesta: error al guardar en mysql desde php

Excelente, esa fue la solucion, puse el if pero me continuaba arrojando ese error, sin embargo me guardaba en la base de datos... asi que quite la linea de mysql_error y LISTO,...

Gracias por brindarmen solucion..

Etiquetas: mysql
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 06:29.