Foros del Web » Programando para Internet » PHP »

Editar php desde el navegador

Estas en el tema de Editar php desde el navegador en el foro de PHP en Foros del Web. Buenas, estoy haciendo una web modular siguiendo un tutorial y pense en agregarle un sistema que me permita editar secciones de mi web desde el ...
  #1 (permalink)  
Antiguo 05/06/2008, 11:40
Avatar de hOpEx  
Fecha de Ingreso: junio-2006
Mensajes: 34
Antigüedad: 18 años, 5 meses
Puntos: 1
Editar php desde el navegador

Buenas, estoy haciendo una web modular siguiendo un tutorial y pense en agregarle un sistema que me permita editar secciones de mi web desde el navegador.

Gracias.
  #2 (permalink)  
Antiguo 05/06/2008, 12:52
Avatar de rogertm
Mod->Cuba
 
Fecha de Ingreso: julio-2005
Ubicación: /home/Cuba/Habana/rogertm/
Mensajes: 2.922
Antigüedad: 19 años, 3 meses
Puntos: 638
Respuesta: Editar php desde el navegador

Hola, si no entiendo mal, lo que quieres es acceder al archivo mediante un formulario y editarlo desde la web... echale un vistazo a este link:
http://www.php.net/manual/es/function.fwrite.php

aqui todo lo que necesitas:
http://www.php.net/manual/es/ref.filesystem.php

saludos y suerte

EDITO: Bienvenido a FDW ;)
__________________
Friki y Blogger por Cuenta Propia:213
Twenty'em: Theming is Prose
  #3 (permalink)  
Antiguo 05/06/2008, 13:02
Avatar de hOpEx  
Fecha de Ingreso: junio-2006
Mensajes: 34
Antigüedad: 18 años, 5 meses
Puntos: 1
Respuesta: Editar php desde el navegador

Ufff gracias creo que me entendiste bien leere los manuales que me pasaste
  #4 (permalink)  
Antiguo 05/06/2008, 13:22
Avatar de hOpEx  
Fecha de Ingreso: junio-2006
Mensajes: 34
Antigüedad: 18 años, 5 meses
Puntos: 1
Respuesta: Editar php desde el navegador

Gracias, e probado el ejemplo en el localhost y si agrega lo que este dentro de las comillas
Código:
$contenido = "Agregar esto al archivo\n";
pero deseo agregar un area texto para escribir ahi lo que se modificaria del archivo, y si se podria mostrar el contenido del archivo a modificar dentro del area de texto seria genial.

Gracias otra vez
  #5 (permalink)  
Antiguo 05/06/2008, 13:42
Avatar de rogertm
Mod->Cuba
 
Fecha de Ingreso: julio-2005
Ubicación: /home/Cuba/Habana/rogertm/
Mensajes: 2.922
Antigüedad: 19 años, 3 meses
Puntos: 638
Respuesta: Editar php desde el navegador

haciendo alucion a mi imaginacion, lo quetienes que hacer es poner el el area de texto de tu formulario el valor de esa variable:
Código PHP:
<textarea name="contenido"><?php echo $contenido?></textarea>
y lo envias por $_POST, algo asi:
Código PHP:
if(isset($_POST['contenido'])){
    
$contenido $_POST['contenido'];

mas o menos algo asi, prueba y mira ver por donde se le sale el agua , pero creo que esa seria la base de lo que quieres lograr.

saludos y suerte
__________________
Friki y Blogger por Cuenta Propia:213
Twenty'em: Theming is Prose
  #6 (permalink)  
Antiguo 05/06/2008, 14:09
Avatar de hOpEx  
Fecha de Ingreso: junio-2006
Mensajes: 34
Antigüedad: 18 años, 5 meses
Puntos: 1
Respuesta: Editar php desde el navegador

Buenas e conseguido el codigo buscando en el foro es el siguiente pero ahora tengo un problema, cuando quiero modificar el archivo mediante el formulario agrego los cambios pero en ves de agregar el contenido borra todo el contenido del archivo, espero que me puedas ayudar aqui te dejo el codigo:

Funciones.php

Código PHP:
<?php
if(isset($_POST["submit"])){
if(@
$fp fopen("archivo.txt""w")){
  
fwrite($fpstripslashes($newdata));
  
fclose($fp);
} else {
  exit (
"<h1>Error</h1>\n<p>No se puede escribir el archivo, asegurate que los permisos son correctos(CHMOD 777).</p>");
}
}

if(
$fp = @fopen("archivo.txt""r")){
  
$data = @fread($fpfilesize("archivo.txt"));
  
fclose($fp);
} else {
  
$data "";
  exit (
"<h1>Error</h1>\n<p>No se puede escribir el archivo, asegurate que los permisos son correctos(CHMOD 777).</p>");
}
?>
Upload.php

Código PHP:
<?php include("funciones.php"); ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Strict//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Editar TXT</title>
</head>
<body>
<form action="<?php echo $_SERVER["PHP_SELF"]; ?>" method="post">
<fieldset>
  <legend>Editar "archivo.txt"</legend>
  <label>Contenido <strong>Archivo.txt</strong>:<br><textarea name="newdata" rows="50" cols="100"><?php
   
echo $data;
  
?></textarea></label><br>
  <label><input type="submit" name="submit" value="Guardar"></label>
</fieldset>
</form>
</body>
</html>
Lo raro es que antes si se guardaban los cambios y de un momento a otro ya no pude, lo e probado en localhost y en un servidor remoto pero nada.

Última edición por hOpEx; 06/06/2008 a las 13:01
  #7 (permalink)  
Antiguo 06/06/2008, 13:29
Avatar de rogertm
Mod->Cuba
 
Fecha de Ingreso: julio-2005
Ubicación: /home/Cuba/Habana/rogertm/
Mensajes: 2.922
Antigüedad: 19 años, 3 meses
Puntos: 638
Respuesta: Editar php desde el navegador

prueba quitarle todas las arrobas @, para ver que error te da, si es que da alguno, pero creo que el problema esta aqui:
Código PHP:
<?php
 
} else {
  
$data ""// EN ESTA LINEA 
  
exit ("<h1>Error</h1>\n<p>No se puede escribir el archivo, asegurate que los permisos son correctos(CHMOD 777).</p>");
}
?>
de todas formas lo vere este fin (si la nota me lo permite ) y el lunes te dire.... que no tengo internet en casa

saludos y suerte
__________________
Friki y Blogger por Cuenta Propia:213
Twenty'em: Theming is Prose
  #8 (permalink)  
Antiguo 06/06/2008, 13:38
Avatar de hOpEx  
Fecha de Ingreso: junio-2006
Mensajes: 34
Antigüedad: 18 años, 5 meses
Puntos: 1
Respuesta: Editar php desde el navegador

yo le puse las arrobas para que me dejara de dar el error pero el error es este :

Warning: fread() [function.fread]: Length parameter must be greater than 0 in C:\AppServ\www\admin\funciones.php on line 12
  #9 (permalink)  
Antiguo 06/06/2008, 14:05
Avatar de rogertm
Mod->Cuba
 
Fecha de Ingreso: julio-2005
Ubicación: /home/Cuba/Habana/rogertm/
Mensajes: 2.922
Antigüedad: 19 años, 3 meses
Puntos: 638
Respuesta: Editar php desde el navegador

creo que es problemas de permisos, prueba cambiar esta linea:
Código PHP:
<?php
/********/
if($fp = @fopen("archivo.txt""rw")){

/********/
EDITO: http://php.net/fread
__________________
Friki y Blogger por Cuenta Propia:213
Twenty'em: Theming is Prose

Última edición por rogertm; 06/06/2008 a las 14:11
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 14:46.