Foros del Web » Programando para Internet » PHP »

Como hacer un update con php desde un enlace

Estas en el tema de Como hacer un update con php desde un enlace en el foro de PHP en Foros del Web. Que tal buen dia a todos. Necesito que me ayuden con un update ya que mando parametros por un enlace y si los recibe pero ...
  #1 (permalink)  
Antiguo 08/07/2012, 16:52
Avatar de jandrogdz  
Fecha de Ingreso: julio-2012
Ubicación: public $Guadalajara
Mensajes: 397
Antigüedad: 11 años, 8 meses
Puntos: 12
Como hacer un update con php desde un enlace

Que tal buen dia a todos.
Necesito que me ayuden con un update ya que mando parametros por un enlace y si los recibe pero no hace la consulta alguien me podria ayudar...

el codigo es el siguiente...


Código PHP:
Ver original
  1. <?php
  2. $conn = mysql_connect("localhost","root","");
  3. $db = mysql_select_db("legantty", $conn);
  4. $consulta = mysql_query("select * from categoria where activo='0'", $conn);
  5. $num_registros = mysql_num_rows($consulta);
  6.  
  7. if($num_registros == 0)
  8. {
  9.     echo "No hay registros para mostrar...";
  10.     mysql_close($conn);
  11.     exit();
  12. }
  13. $registros=1;
  14. @$pagina=$_GET['page'];
  15. if(!$pagina)
  16. {
  17.     $inicio=0; $pagina=1;
  18. }
  19. else
  20. {
  21.     $inicio=($pagina-1)*$registros;
  22. }
  23. $consulta = mysql_query("select * from categoria where activo='0' limit $inicio,$registros", $conn);
  24. $paginas=ceil($num_registros/$registros);
  25. ?>
  26.     <script type="text/javascript">
  27.     function refrescar()
  28.     {
  29.         location.reload(true);
  30.     }
  31.     </script>
  32. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  33. <html xmlns="http://www.w3.org/1999/xhtml">
  34. <head>
  35. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  36. <title>Documento sin título</title>
  37. </head>
  38.  
  39. <body>
  40. <div style="background:#CCC; color:#666; border:solid 2px #C60; height:100px; width:100%;">
  41.     <center><h1>Registros encontrados</h1></center>
  42. </div><br />
  43.    <table align="center" bgcolor="#FFFFFF" class="bordes" border="1" cellpadding="6" cellspacing="0">
  44.          
  45.           <tr align="center" bgcolor="#670413">
  46.                 <td>ID</td>  
  47.                 <td>Nombre</td>
  48.                 <td>Acciones</td>
  49.           </tr>
  50.  
  51.               <?php
  52.             while($rec = mysql_fetch_array($consulta)){
  53.                 ?>
  54.               <tr  align="center">  
  55.                 <td><?php $mod=htmlentities($rec[0]); echo $mod."<br>";?></td>
  56.                 <td><?php $mod=htmlentities($rec[1]); echo $mod."<br>";?></td>
  57.                 <td><a href="?accion=1&id=<?php echo $mod=htmlentities($rec[0]); ?>" >Activar</a></td>
  58.              </tr> 
  59.            <?php     }
  60. mysql_close($conn);
  61. ?>  
  62.              
  63. </table>
  64. <center>
  65. <?php
  66. echo "Registros encontrados[".$num_registros."]<br>";
  67. if($pagina>1)
  68. {
  69.     echo "<a href='?page=".($pagina-1)."'>Anteriro</a> ";
  70. }
  71.  
  72. if($pagina<$paginas)
  73. {
  74.     echo "<a href='?page=".($pagina+1)."'>Siguiente</a> ";
  75. }
  76. ?>
  77. </center>
  78.  
  79. <?php
  80. @$id=$_GET['id'];
  81. @$accion=$_GET['accion'];
  82. if(@$accion == 1)
  83. {
  84.     echo $accion." ";
  85.     echo $id;
  86.     //@mysql_query("UPDATE categoria SET activo= 1 WHERE id_cat=$mod=htmlentities($rec[0])", $conn);
  87. }
  88. ?>
  89. </body>
  90. </html>

Ya intente con un archivo externo y no me funciono alguien me podria ayudar a saber que es lo que esta fallando?????
  #2 (permalink)  
Antiguo 08/07/2012, 17:02
Avatar de rodrigo791  
Fecha de Ingreso: noviembre-2009
Ubicación: Uruguay
Mensajes: 1.339
Antigüedad: 14 años, 4 meses
Puntos: 168
Respuesta: Como hacer un update con php desde un enlace

Verificaste que te lleguen esos datos por url? te llegan ? los ves en la url?
  #3 (permalink)  
Antiguo 08/07/2012, 17:03
Avatar de rodrigo791  
Fecha de Ingreso: noviembre-2009
Ubicación: Uruguay
Mensajes: 1.339
Antigüedad: 14 años, 4 meses
Puntos: 168
Respuesta: Como hacer un update con php desde un enlace

Deberias postear el archivo que hace el update aca no veo ninguno
  #4 (permalink)  
Antiguo 08/07/2012, 17:06
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 8 meses
Puntos: 416
Respuesta: Como hacer un update con php desde un enlace

Código PHP:
Ver original
  1. @mysql_query("UPDATE categoria SET activo= 1 WHERE id_cat=$mod=htmlentities($rec[0])", $conn);

No puedes poner una función tal cual en la consulta.
Aparte de que haces id_cat = $mod = htmlentities()

Talvez deberia ser solo $mod.
Parece que copiaste y pegaste la variable $mod del codigo de arriba
  #5 (permalink)  
Antiguo 08/07/2012, 17:15
Avatar de rodrigo791  
Fecha de Ingreso: noviembre-2009
Ubicación: Uruguay
Mensajes: 1.339
Antigüedad: 14 años, 4 meses
Puntos: 168
Respuesta: Como hacer un update con php desde un enlace

Hace lo que dice este señor
  #6 (permalink)  
Antiguo 08/07/2012, 17:16
Avatar de jandrogdz  
Fecha de Ingreso: julio-2012
Ubicación: public $Guadalajara
Mensajes: 397
Antigüedad: 11 años, 8 meses
Puntos: 12
Respuesta: Como hacer un update con php desde un enlace

Ya hice las pruebas para corroborar que si lleguen los datos
y si llegan ambos datos los imprimo en pantalla y se ven en la url
a las veces que he utilizado el update solo hago que cache la accion
y en la accion hago la actualizacion (update) pero no actualiza no se cual sea
el error y antes de poner lo de mod estaba id_cat=$id que es la que cacho por la url

Código PHP:
Ver original
  1. <?php
  2. $conn = mysql_connect("localhost","root","");
  3. $db = mysql_select_db("legantty", $conn);
  4. $consulta = mysql_query("select * from categoria where activo='0'", $conn);
  5. $num_registros = mysql_num_rows($consulta);
  6.  
  7. if($num_registros == 0)
  8. {
  9.     echo "No hay registros para mostrar...";
  10.     mysql_close($conn);
  11.     exit();
  12. }
  13. $registros=1;
  14. @$pagina=$_GET['page'];
  15. if(!$pagina)
  16. {
  17.     $inicio=0; $pagina=1;
  18. }
  19. else
  20. {
  21.     $inicio=($pagina-1)*$registros;
  22. }
  23. $consulta = mysql_query("select * from categoria where activo='0' limit $inicio,$registros", $conn);
  24. $paginas=ceil($num_registros/$registros);
  25. ?>
  26.     <script type="text/javascript">
  27.     function refrescar()
  28.     {
  29.         location.reload(true);
  30.     }
  31.     </script>
  32. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  33. <html xmlns="http://www.w3.org/1999/xhtml">
  34. <head>
  35. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  36. <title>Documento sin título</title>
  37. </head>
  38.  
  39. <body>
  40. <div style="background:#CCC; color:#666; border:solid 2px #C60; height:100px; width:100%;">
  41.     <center><h1>Registros encontrados</h1></center>
  42. </div><br />
  43.    <table align="center" bgcolor="#FFFFFF" class="bordes" border="1" cellpadding="6" cellspacing="0">
  44.          
  45.           <tr align="center" bgcolor="#670413">
  46.                 <td>ID</td>  
  47.                 <td>Nombre</td>
  48.                 <td>Acciones</td>
  49.           </tr>
  50.  
  51.               <?php
  52.             while($rec = mysql_fetch_array($consulta)){
  53.                 ?>
  54.               <tr  align="center">  
  55.                 <td><?php echo $rec['id_cat'];?></td>
  56.                 <td><?php echo $rec['nombre_cat'];?></td>
  57.                 <td><a href="?accion=1&id=<?php echo $rec['id_cat']; ?>" >Activar</a></td>
  58.              </tr> 
  59.            <?php     }
  60. mysql_close($conn);
  61. ?>  
  62.              
  63. </table>
  64. <center>
  65. <?php
  66. echo "Registros encontrados[".$num_registros."]<br>";
  67. if($pagina>1)
  68. {
  69.     echo "<a href='?page=".($pagina-1)."'>Anteriro</a> ";
  70. }
  71.  
  72. if($pagina<$paginas)
  73. {
  74.     echo "<a href='?page=".($pagina+1)."'>Siguiente</a> ";
  75. }
  76. ?>
  77. </center>
  78.  
  79. <?php
  80. @$id=$_GET['id'];
  81. @$accion=$_GET['accion'];
  82. if(@$accion == 1)
  83. {
  84.     echo $accion." ";
  85.     echo $id;
  86.     @mysql_query("UPDATE categoria SET activo= 1 WHERE id_cat=$id)", $conn);
  87. }
  88. ?>
  89. </body>
  90. </html>
  #7 (permalink)  
Antiguo 08/07/2012, 17:33
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 8 meses
Puntos: 416
Respuesta: Como hacer un update con php desde un enlace

En ese caso, quita el @ y pon:
mysql_query("UPDATE categoria SET activo= 1 WHERE id_cat=$id)", $conn) or die(mysql_error());
Para ver si hay algun problema con la consulta
  #8 (permalink)  
Antiguo 08/07/2012, 17:41
Avatar de jandrogdz  
Fecha de Ingreso: julio-2012
Ubicación: public $Guadalajara
Mensajes: 397
Antigüedad: 11 años, 8 meses
Puntos: 12
Pregunta Respuesta: Como hacer un update con php desde un enlace

Ya lo habia intentado tambien y lo hice ahorita tmbn asi como me dices y me arroja este error

Warning: mysql_query(): 3 is not a valid MySQL-Link resource in C:\wamp\www\paginar2\form.php on line 87
  #9 (permalink)  
Antiguo 08/07/2012, 17:44
Avatar de rodrigo791  
Fecha de Ingreso: noviembre-2009
Ubicación: Uruguay
Mensajes: 1.339
Antigüedad: 14 años, 4 meses
Puntos: 168
Respuesta: Como hacer un update con php desde un enlace

Código PHP:
Ver original
  1. @mysql_query("UPDATE categoria SET activo= 1 WHERE id_cat=$id)", $conn);

el problema es que tenes las comillas afuera del paréntesis...
  #10 (permalink)  
Antiguo 08/07/2012, 17:50
Avatar de jandrogdz  
Fecha de Ingreso: julio-2012
Ubicación: public $Guadalajara
Mensajes: 397
Antigüedad: 11 años, 8 meses
Puntos: 12
Pregunta Respuesta: Como hacer un update con php desde un enlace

perdoname le deje un parentesis de mas
asi es como queda

Código PHP:
Ver original
  1. mysql_query("UPDATE categoria SET activo= '1' WHERE id_cat=$id", $conn) or die(mysql_error());

y me sigue mandando el mismo error.
Tendra algo que ver que este dentro de un popup?
  #11 (permalink)  
Antiguo 08/07/2012, 17:52
Avatar de rodrigo791  
Fecha de Ingreso: noviembre-2009
Ubicación: Uruguay
Mensajes: 1.339
Antigüedad: 14 años, 4 meses
Puntos: 168
Respuesta: Como hacer un update con php desde un enlace

Como?
solo tenes eso en una ventana a parte? si es asi entonces te está faltando llamar el archivo de conexión también donde tenes la variable $conn.

En ese popup donde tenes el update hace un include de donde definas $conn
  #12 (permalink)  
Antiguo 08/07/2012, 17:58
Avatar de jandrogdz  
Fecha de Ingreso: julio-2012
Ubicación: public $Guadalajara
Mensajes: 397
Antigüedad: 11 años, 8 meses
Puntos: 12
Respuesta: Como hacer un update con php desde un enlace

Ese documento es un solo archivo tengo un index que manda el parametro para abir la popup
y en la popup tengo los datos paginados y en ese archivo del popup tengo $conn hasta arriba lo que pasa es que en la tabla donde muestro slos datos le agregue el campo de activar y es un enlace que manda 2 parametros el de accion y el id de la categoria para cacharlos mas abajo del documento para hacer distintas comparaciones de acciones que habran no se si me di a entender???
  #13 (permalink)  
Antiguo 08/07/2012, 18:07
Avatar de rodrigo791  
Fecha de Ingreso: noviembre-2009
Ubicación: Uruguay
Mensajes: 1.339
Antigüedad: 14 años, 4 meses
Puntos: 168
Respuesta: Como hacer un update con php desde un enlace

Warning: mysql_query(): 3 is not a valid MySQL-Link resource in C:\wamp\www\paginar2\form.php on line 87

El problema es que no te esta reconociendo la variable de conexion $conn.
  #14 (permalink)  
Antiguo 08/07/2012, 18:11
Avatar de rodrigo791  
Fecha de Ingreso: noviembre-2009
Ubicación: Uruguay
Mensajes: 1.339
Antigüedad: 14 años, 4 meses
Puntos: 168
Respuesta: Como hacer un update con php desde un enlace

Otra cosa,
Código PHP:
Ver original
  1. mysql_query("UPDATE categoria SET activo= '1' WHERE id_cat=$id", $conn)

1 no va entre paréntesis si es numérico.
  #15 (permalink)  
Antiguo 08/07/2012, 18:17
Avatar de jandrogdz  
Fecha de Ingreso: julio-2012
Ubicación: public $Guadalajara
Mensajes: 397
Antigüedad: 11 años, 8 meses
Puntos: 12
Respuesta: Como hacer un update con php desde un enlace

Gacias rodrigo791 el problema si radicaba en la variable $conn.

al parecer al mandar un parametro y recibirlo ya no detecta la conexion anterior la solucion quedo asi...

Código PHP:
Ver original
  1. <?php
  2. $conn = mysql_connect("localhost","root","");
  3. $db = mysql_select_db("legantty", $conn);
  4.  
  5. @$id=$_GET['id'];
  6. @$accion=$_GET['accion'];
  7. if(@$accion == 1)
  8. {
  9.     echo $accion." ";
  10.     echo $id;
  11.     mysql_query("UPDATE categoria SET activo= '1' WHERE id_cat=$id", $conn) or die(mysql_error());
  12. }
  13. ?>
  #16 (permalink)  
Antiguo 08/07/2012, 18:44
Avatar de rodrigo791  
Fecha de Ingreso: noviembre-2009
Ubicación: Uruguay
Mensajes: 1.339
Antigüedad: 14 años, 4 meses
Puntos: 168
Respuesta: Como hacer un update con php desde un enlace

Pues claro, simpre que te diga como error algo de "Link resource" hace referencia a esa variable conexión, el problema era ese que no la tenias definida ahi.
Suerte

Etiquetas: enlace, html, mysql, registro, update
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 16:42.