Foros del Web » Programando para Internet » PHP »

Editar contenido mysql desde php

Estas en el tema de Editar contenido mysql desde php en el foro de PHP en Foros del Web. Hola He creado un panel de administración en mi web para crear, editar y eliminar páginas. Crear y eliminar lo hace perfectamente pero no se ...
  #1 (permalink)  
Antiguo 09/08/2010, 00:43
 
Fecha de Ingreso: julio-2009
Mensajes: 172
Antigüedad: 10 años, 5 meses
Puntos: 3
Editar contenido mysql desde php

Hola

He creado un panel de administración en mi web para crear, editar y eliminar páginas.

Crear y eliminar lo hace perfectamente pero no se como programarla para editar.

En la descripción de las páginas en mi panel de control pongo la opcion editar y envia por metodo get lo siguiente.

Admin.php?pagina=editar&id=1 (Donde 1 es la id correspondiente a la página en mysql)

Lo rescato con:
<?php
$sql_pagina="select * from tabla where id_pagina='".$_GET["id"]."' ";
$query_pagina = mysql_query($sql_pagina);

if($fila_pagina = mysql_fetch_array($query_pagina)) {
?>
<h1> <?php echo $fila_pagina['titulo_pagina'];?></h1><hr>
<p><?php echo $fila_pagina['texto_pagina'];?></p>
<?php
}
?>

Pero no se como llevar la infamación a un formulario para editarla ni encuentro manuales utiles.
  #2 (permalink)  
Antiguo 09/08/2010, 00:46
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 11 años, 7 meses
Puntos: 2534
Respuesta: Editar contenido mysql desde php

te sugiero leer lo siguiente:
http://php.net/manual/en/language.va...s.external.php
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 09/08/2010, 01:20
 
Fecha de Ingreso: julio-2009
Mensajes: 172
Antigüedad: 10 años, 5 meses
Puntos: 3
Respuesta: Editar contenido mysql desde php

Gracias por la info pero me he quedado como estaba.

Lo que no entiendo es como tengo que hacer para que los datos que recojo de la BD se muestren en un formulario y al editarlo actualizarlo en la base de datos.
  #4 (permalink)  
Antiguo 09/08/2010, 02:05
 
Fecha de Ingreso: septiembre-2004
Mensajes: 324
Antigüedad: 15 años, 3 meses
Puntos: 13
Respuesta: Editar contenido mysql desde php

Entonces lo que tienes que hacer es aprender PHP&MySQl
  #5 (permalink)  
Antiguo 09/08/2010, 02:33
Avatar de mortiprogramador
Colaborador
 
Fecha de Ingreso: septiembre-2009
Ubicación: mortuoria
Mensajes: 3.805
Antigüedad: 10 años, 3 meses
Puntos: 214
Respuesta: Editar contenido mysql desde php

hola
bueno, pues tienes la idea, debes mostrarlo en un formulario, cosa que no estas haciendo, solo estas imprimiendo los valores, así entonces, asumiendo que sabes de sintaxis html (bueno, de hecho te puede ayudar un editor html) la idea entonces es que dibujes un formulario con los campos que necesites y en el value de cada objeto dibujado vaya lo que trae la bd, algo así

Código HTML:
Ver original
  1. <form action='editar.php' method='post'>
  2. <input type='text' name='titulo_pagina' value='<?php echo echo $fila_pagina['titulo_pagina'];?>'/>
  3. </form>
y así con todos tus campos (puedes usar radiobutton, check, textarea, etc)
nota también que estoy diciendo en el action que vaya a la página editar.php,
pero si estas usandolo en una sola página (por ej Admin.php y lo que envias es
una variable que controle lo que se va a hacer, entonces puedes hacer uso de campos
hidden que envien esas variables, y necesitamos un botón de submit que haga el envio
del formulario, lo que modificaria el form algo así
Código HTML:
Ver original
  1. <form action='Admin.php' method='post'>
  2. <input type='text' name='titulo_pagina' value='<?php echo echo $fila_pagina['titulo_pagina'];?>'/>
  3. <input type='hidden' name='pagina' value='editar'/>
  4. <input type='hidden' name='accion' value='guardar'/>
  5. <input type='submit'/>
  6. </form>

y asi pues en Admin.php en donde este el if de si pagina es editar,
agregariamos otro donde preguntemos que si accion esta seteada y además
su valor es guardar, entonces que ejecute el update con los valores
que le han llegado, algo así

Código MySQL:
Ver original
  1. update tabla set titulo = $_POST['titulo_pagina'];
porque post? porque en el formulario le dije que el method=post, si no hubiera puesto nada
de method entonces el valor por defecto es get, en cuyo caso en la consulta usaria $_GET

y pues tal vez no has buscado lo suficiente, pues creeme que hay buenos manuales al respecto, te recomiendo esta web pero pues eso abunda en la web

saludos
__________________
"Si consigues ser algo más que un hombre, si te entregas a un ideal, si nadie puede detenerte, te conviertes en algo muy diferente."
Visita piggypon.com
  #6 (permalink)  
Antiguo 09/08/2010, 06:27
 
Fecha de Ingreso: julio-2009
Mensajes: 172
Antigüedad: 10 años, 5 meses
Puntos: 3
Respuesta: Editar contenido mysql desde php

morti programador tienes razón.
Hay montones de tutoriales al respecto y seran muy buenos. Los he leído y he intentado poner en marcha ¡todos!, pero se ve que les falta por leer tu post por que desde luego lo que no he conseguido en 5 horas con otros (Y no digo que sean malos) lo he clavado en 5 minutos con el ¡tuyo! XD

Por si interesa aquí dejo el código.

Código PHP:
Ver original
  1. <?php
  2. //$sql_editar_pagina="select * from ".mysql_prefijobd."jsc_pagina order by titulo_pagina asc";
  3. $sql_editar_pagina="select * from ".mysql_prefijobd."jsc_pagina where id_pagina='".$_GET["id"]."'";
  4. $query_editar_pagina = mysql_query($sql_editar_pagina);
  5.  
  6.  
  7. if($fila_editar_pagina=mysql_fetch_array($query_editar_pagina)){
  8. echo $fila_editar_pagina["id_pagina"];
  9. ?>
  10.      
  11. <form name="form" action="?pagina=editar_pagina&editar=editar" method="post">
  12. <input type="hidden" name="id_pagina" value="<?=$fila_editar_pagina["id_pagina"]?>" />
  13. <center><?php echo LAN_PAG_ADMIN_000; ?><center>
  14. <center><input type="text" name="titulo_pagina" value="<?echo $fila_editar_pagina['titulo_pagina'];?>" /></center>
  15. <br />
  16. <center><?php echo LAN_PAG_ADMIN_001;?></center><center><?php echo LAN_PAG_INFO_000;?></center>
  17. <center><input type="text" name="titulo_url" value="<?echo $fila_editar_pagina['titulo_url'];?>"/></center>
  18. <br />
  19. <center><?php echo LAN_PAG_ADMIN_002;?></center><center><?php echo LAN_PAG_INFO_001 ?></center>
  20. <center><textarea name="texto_pagina" cols="40" rows="10" "/><?echo $fila_editar_pagina['texto_pagina'];?></textarea></center>
  21. <br />
  22.  
  23. <input type="submit" value="<?php echo LAN_PAG_ADMIN_009; ?>" title="<?php echo LAN_PAG_ADMIN_009; ?>" />
  24. </form>
  25.      
  26. <?php
  27. }
  28.  
  29. switch ($_GET['editar']){
  30.     case editar:
  31.    
  32.     /*********/
  33. $sql="update ".MPREFIX."jsc_pagina set id_pagina = '".$_POST["id_pagina"]."', titulo_pagina = '".$_POST["titulo_pagina"]."', titulo_url = '".$_POST["titulo_url"]."', texto_pagina = '".$_POST["texto_pagina"]."'";
  34.  
  35. $res=mysql_query($sql,$con);
  36.  
  37. header("Location: ?pagina=paginas");
  38.     /*********/
  39.    
  40.     break;
  41.  
  42. }
  43.  
  44. ?>

Etiquetas: contenido, 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 10:14.