Foros del Web » Programando para Internet » PHP »

Modificar desde PHP otro PHP?

Estas en el tema de Modificar desde PHP otro PHP? en el foro de PHP en Foros del Web. Buenas a todos. He estado buscando por internet y no he encontrado un buen tuto que me indique lo que quiero hacer con precisión, y ...
  #1 (permalink)  
Antiguo 02/11/2008, 10:38
 
Fecha de Ingreso: marzo-2008
Mensajes: 73
Antigüedad: 16 años
Puntos: 0
Modificar desde PHP otro PHP?

Buenas a todos. He estado buscando por internet y no he encontrado un buen tuto que me indique lo que quiero hacer con precisión, y espero que uno de uds. expertos en la materia puedan ayudarme.

Estoy creando mi propio mini script para poder facilitar mi vida editando unas noticias. Básicamente, tengo la maqueta, mi formulario, y esta listo para mandar datos, pero no se que función tengo que hacer para que edite cierta parte de mi otro archivo de PHP. Lo que quiero hacer lo siguiente:

1. Entro a una página a.php en mi Host. Tiene un formulario con "Titulo de noticia", "Información" y "Fecha"

2. En el index de mi Host, está un div con un scroll que tiene el mismo formato: Título, Información y Fecha, respectivamente.

Con PHP, quiero poder llenar ese formulario y que se modifique ese index para no tener que editarlo manualmente, sino que se vayan agregando las noticias por si solas. ¿Como puedo lograr esto?

Gracias de antemano.

Última edición por AeroCross; 02/11/2008 a las 10:41 Razón: Typos.
  #2 (permalink)  
Antiguo 02/11/2008, 10:45
(Desactivado)
 
Fecha de Ingreso: mayo-2008
Mensajes: 67
Antigüedad: 15 años, 10 meses
Puntos: 0
Respuesta: Modificar desde PHP otro PHP?

tal ves nadie te entienda si lo planteas asi pero yo si te entendi la idea es que quieres un editor para editar tus paginas definidas te recomiento este editor es fabuloso yo logre hacerlo con este editor y funciona de mil maravillas

http://tinymce.moxiecode.com/examples/full.php
  #3 (permalink)  
Antiguo 02/11/2008, 10:50
 
Fecha de Ingreso: noviembre-2002
Mensajes: 1.341
Antigüedad: 21 años, 5 meses
Puntos: 17
Respuesta: Modificar desde PHP otro PHP?

Si quieres montar un sistema de noticias es mucho más eficiente usando una base de datos...

Y si no queres usar BDD, puedes hacerlo con ficheros de texto. Podrías tener un fichero donde tengas todas las noticias, y desde el formulario, abrir ese fichero y agregar al final la nueva noticia.

En el index haces un include al de las noticias.
  #4 (permalink)  
Antiguo 02/11/2008, 10:55
(Desactivado)
 
Fecha de Ingreso: mayo-2008
Mensajes: 67
Antigüedad: 15 años, 10 meses
Puntos: 0
Respuesta: Modificar desde PHP otro PHP?

y que tiene que ver eso con tu primera pregunta
  #5 (permalink)  
Antiguo 02/11/2008, 10:58
 
Fecha de Ingreso: marzo-2008
Mensajes: 73
Antigüedad: 16 años
Puntos: 0
Respuesta: Modificar desde PHP otro PHP?

Cita:
Iniciado por sopaetonto Ver Mensaje
tal ves nadie te entienda si lo planteas asi pero yo si te entendi la idea es que quieres un editor para editar tus paginas definidas te recomiento este editor es fabuloso yo logre hacerlo con este editor y funciona de mil maravillas
En realidad tengo uno bastante bueno, pero la idea del asunto es hacerlo por mi mismo, para ir aprendiendo un poco mas de PHP.

El sitio es el siguiente:
uba.edu.ve
(Es un poco problemático este sistema de anti_spam x_x)

A la derecha, están las noticias. Quiero con el siguiente formulario:

Código:
<!--Inicio del Formulario-->
<form action="process.php" method="post">

<label>T&iacute;tulo de la Noticia:</label><br />
<input class="title" type="text" name="title" /><br /><br />

<label>Rese&ntilde;a de la Noticia:</label><br />
<textarea name="noticia" class="news" cols="40" rows="15">
</textarea> 

<br />
<br />

<label>D&iacute;a:</label>
<select class="day">
	<option selected="selected">Lunes</option>
    <option>Martes</option>
    <option>Mi&eacute;rcoles</option>
    <option>Jueves</option>
    <option>Viernes</option>
    <option>S&aacute;abado</option>
    <option>Domingo</option>
</select>

<label>Fecha:</label>
<select class="date">
	<option selected="selected">1</option>
    <option>2</option>
    <option>3</option>
    <option>4</option>
    <option>5</option>
    <option>6</option>
    <option>7</option>
    <option>8</option>
    <option>9</option>
    <option>10</option>
    <option>10</option>
    <option>12</option>
    <option>13</option>
    <option>14</option>
    <option>15</option>
    <option>16</option>
    <option>17</option>
    <option>18</option>
    <option>19</option>
    <option>20</option>
    <option>21</option>
    <option>22</option>
    <option>23</option>
    <option>24</option>
    <option>25</option>
    <option>26</option>
    <option>27</option>
    <option>28</option>
    <option>29</option>
    <option>30</option>
    <option>31</option>
</select>
<br />

<label>Mes:</label>
<select class="month">
	<option selected="selected">Enero</option>
    <option>Febrero</option>
    <option>Marzo</option>
    <option>Abril</option>
    <option>Mayo</option>
    <option>Junio</option>
    <option>Julio</option>
    <option>Agosto</option>
    <option>Septiembre</option>
    <option>Octubre</option>
    <option>Noviembre</option>
    <option>Diciembre</option>
</select>

<label>A&ntilde;o:</label>
<select class="year">
	<option>2008</option>
    <option>2009</option>
</select>
<br /><br />

<input type="submit" value="Modificar" />
<!--Fin del Formulario-->
</form>
Añadir arriba de ese scroll de noticias, una nueva entrada, solo texto, modificando el index.php. ¿Es posible hacer eso?
  #6 (permalink)  
Antiguo 02/11/2008, 10:59
 
Fecha de Ingreso: noviembre-2002
Mensajes: 1.341
Antigüedad: 21 años, 5 meses
Puntos: 17
Respuesta: Modificar desde PHP otro PHP?

Porque lo que busca él no es un editor de texto, sino una forma de añadir noticias a su sitio. O al menos eso se entiende de su post.
  #7 (permalink)  
Antiguo 02/11/2008, 11:08
 
Fecha de Ingreso: marzo-2008
Mensajes: 73
Antigüedad: 16 años
Puntos: 0
Respuesta: Modificar desde PHP otro PHP?

Cita:
Iniciado por Keysher Ver Mensaje
Porque lo que busca él no es un editor de texto, sino una forma de añadir noticias a su sitio. O al menos eso se entiende de su post.
Si, mis disculpas por haber hecho el post tan poco claro al principio.
  #8 (permalink)  
Antiguo 02/11/2008, 11:24
 
Fecha de Ingreso: abril-2006
Mensajes: 1.128
Antigüedad: 18 años
Puntos: 33
Respuesta: Modificar desde PHP otro PHP?

AeroCross:
Si entiendo bien lo que quieres, pues perfectamente puedes utilizar un php script para modificar un html o xhtml o php script existente.
Ejemplo:
Te ubico dentro de un archivo php que esta haciendo lo siguiente:
Elabora un archivo que se llamara mms$clave.html archivo que deposita en un directorio para eventualmente enviarlo por correo hacia un destinatario (unicamente el enlace).
if($estilosmms == "html") {
$mmsclave = fopen("archivos/mms$clave.html", "w+");
fwrite($mmsclave, "<?xml version='1.0' encoding='UTF-8'?>");
fwrite($mmsclave, "\n");
fwrite($mmsclave, "<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN'");
fwrite($mmsclave, "\n");
fwrite($mmsclave, "'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>");
fwrite($mmsclave, "\n");
fwrite($mmsclave, "<html xmlns='http://www.w3.org/1999/xhtml' xml:lang='es' lang='es'>");
fwrite($mmsclave, "\n");
fwrite($mmsclave, "<head>");
fwrite($mmsclave, "\n");
fwrite($mmsclave, "<title>Envio mms</title>");
fwrite($mmsclave, "\n");
fwrite($mmsclave, "</head>");
fwrite($mmsclave, "\n");
fwrite($mmsclave, "<body bgcolor='#FF9900'>");
fwrite($mmsclave, "\n");
fwrite($mmsclave, "<img src='MyIcono.jpg' alt='Franco'><br>");
fwrite($mmsclave, "\n");
fwrite($mmsclave, "<b>Felicitaciones!.</b><br>");
fwrite($mmsclave, "\n");
fwrite($mmsclave, "<b>Baje Su Archivo:</b><br>");
fwrite($mmsclave, "\n");
fwrite($mmsclave, "<b><a href='http://sitio/archivos/$nombre'>$nombre!!!</a></b><br>");
fwrite($mmsclave, "\n");
fwrite($mmsclave, "<br><b>Misitio.com</b>");
fwrite($mmsclave, "\n");
fwrite($mmsclave, "</body>");
fwrite($mmsclave, "\n");
fwrite($mmsclave, "</html>");
$mensaje = "http://sitio/archivos/mms$clave.html";
mail($email, $asunto, $mensaje, "From: $cortesia \nReply-To: $email");
echo "Correo enviado!!!<br>";
Observa que desde un php script he creado un archivo html de nombre
mms$clave.html y es depositado dentro del directorio archivos,
a la misma vez envio un correo hacia el destinatario que se identifica con $email
y como mensaje le envio el enlace o link hacia esta pagina que
le permitira bajar una imagen que se identifica con $nombre.
De igual manera puedes crear un archivo php conservando la syntaxis de php
Saludos
Y espero te ayude
Franco
P.S. En tu caso si quieres agregarle unicamente pues si es al final del archivo, simplemente lo abres con fopen(......., "a") le agregas y lo cierras; si es en otra ubicacion tendrias que repetirlo como te muestro arriba y agregarle donde convenga el codigo adicional.
  #9 (permalink)  
Antiguo 02/11/2008, 12:02
 
Fecha de Ingreso: marzo-2008
Mensajes: 73
Antigüedad: 16 años
Puntos: 0
Respuesta: Modificar desde PHP otro PHP?

Aunque no es precisamente lo que necesito (que es hacer todo eso desde un formulario), me has dado un buen incio, y grandes ideas para empezar. Aunque no se todavía si pueda lograrlo, intentaré a ver que pasa, muchas gracias!

Edit: Por cierto, ¿que es \n?

Última edición por AeroCross; 02/11/2008 a las 12:06 Razón: Otra pregunta.
  #10 (permalink)  
Antiguo 02/11/2008, 12:05
 
Fecha de Ingreso: noviembre-2002
Mensajes: 1.341
Antigüedad: 21 años, 5 meses
Puntos: 17
Respuesta: Modificar desde PHP otro PHP?

Yo haría lo que te he puesto en mi primer mensaje... Tenerlo en un archivo .php, ir agregandolas al final de éste archivo, y en el index, en el lugar donde quieras mostrarlas hacer un include.
  #11 (permalink)  
Antiguo 02/11/2008, 12:23
 
Fecha de Ingreso: marzo-2008
Mensajes: 73
Antigüedad: 16 años
Puntos: 0
Respuesta: Modificar desde PHP otro PHP?

Cita:
Iniciado por Keysher Ver Mensaje
Yo haría lo que te he puesto en mi primer mensaje... Tenerlo en un archivo .php, ir agregandolas al final de éste archivo, y en el index, en el lugar donde quieras mostrarlas hacer un include.
Es precisamente lo que hago, estoy viendo si me funciona.
Rechazé en primera instancia esa idea porque pensé que lo que querías decir era que editara ese archivo manualmente. Pero se me ocurrió la "brillante" idea de editar ese archivo con el form, y luego hacerle el include, que creo que es lo que me quisiste decir. Muchas gracias por tu sugerencia.
  #12 (permalink)  
Antiguo 02/11/2008, 12:41
 
Fecha de Ingreso: marzo-2008
Mensajes: 73
Antigüedad: 16 años
Puntos: 0
Respuesta: Modificar desde PHP otro PHP?

No puedo usar la función fwrite...

Código:
Warning: fwrite(): supplied argument is not a valid stream resource in C:\XAMMP\htdocs\uba\process.php on line 12

Warning: fwrite(): supplied argument is not a valid stream resource in C:\XAMMP\htdocs\uba\process.php on line 13

Warning: fwrite(): supplied argument is not a valid stream resource in C:\XAMMP\htdocs\uba\process.php on line 14

Warning: fclose(): supplied argument is not a valid stream resource in C:\XAMMP\htdocs\uba\process.php on line 16
Leí que son permisos... pero estoy probando con XAMMP y tengo todo sin "Solo lectura"... Así que los permisos no son...

¿Estaré haciendo algo mal?

Última edición por AeroCross; 02/11/2008 a las 12:52
  #13 (permalink)  
Antiguo 02/11/2008, 12:42
 
Fecha de Ingreso: noviembre-2002
Mensajes: 1.341
Antigüedad: 21 años, 5 meses
Puntos: 17
Respuesta: Modificar desde PHP otro PHP?

Copia el código que está generando ese error.
  #14 (permalink)  
Antiguo 02/11/2008, 12:51
 
Fecha de Ingreso: marzo-2008
Mensajes: 73
Antigüedad: 16 años
Puntos: 0
Respuesta: Modificar desde PHP otro PHP?

Código:
<?php
$title = $_POST[title];
$news = $_POST[news];
$day = $_POST[day];
$date = $_POST[date];
$month = $_POST[month];
$year = $_POST[year];

$fname = "included_news.php";
$fhandle = fopen($fname,"wb");

fwrite($fname,'<p class="newslink">');
fwrite($fname,$title);

fclose($fname);
?>
Ya vi el error (ESTUPIDÍSIMO, era $fhandle en vez de $filename)
Pero borra TODO lo que está en el archivo. ¿Como hago para que solo agregue nuevos datos?

Última edición por AeroCross; 02/11/2008 a las 12:57 Razón: Update.
  #15 (permalink)  
Antiguo 02/11/2008, 13:02
 
Fecha de Ingreso: noviembre-2002
Mensajes: 1.341
Antigüedad: 21 años, 5 meses
Puntos: 17
Respuesta: Modificar desde PHP otro PHP?

No tienes que trabajar con $fname, sino con $fhandle. fname sólo tiene el nombre del fichero.
  #16 (permalink)  
Antiguo 02/11/2008, 13:03
 
Fecha de Ingreso: noviembre-2002
Mensajes: 1.341
Antigüedad: 21 años, 5 meses
Puntos: 17
Respuesta: Modificar desde PHP otro PHP?

http://es2.php.net/fopen

'a+' Apertura para lectura y escritura; ubica el apuntador de archivo al final del mismo. Si el archivo no existe, intenta crearlo.
  #17 (permalink)  
Antiguo 02/11/2008, 13:21
 
Fecha de Ingreso: marzo-2008
Mensajes: 73
Antigüedad: 16 años
Puntos: 0
Respuesta: Modificar desde PHP otro PHP?

Si, había ya notado el error.

Como podrás haber visto en el site, el include lee el .php que contiene las noticias, teniendo la última noticia puesta arriba del archivo.

Con a+ estaría de última en el archivo, y por ende no se vería, ¿no hay manera de ponerla de primera? Ahí es donde el asunto se pone feo, puesto que ya había intentado con a+ y escribe al final del archivo.
  #18 (permalink)  
Antiguo 02/11/2008, 13:27
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: Modificar desde PHP otro PHP?

Usa a+ y luego usa fseek() para moverte al inicio, aunque tendrías que primero leer todas las noticias pasarlas a una variable temporal y luego escribir de nuevo todo con tu nueva noticia en el orden que pones.

Personalmente para esto es mejor usar una base de datos o archivos separados de texto, pero si quieres probar puedes hacer eso.

Saludos.
  #19 (permalink)  
Antiguo 02/11/2008, 13:56
 
Fecha de Ingreso: marzo-2008
Mensajes: 73
Antigüedad: 16 años
Puntos: 0
Respuesta: Modificar desde PHP otro PHP?

Muchas gracias por su ayuda. El método de Gator funciona, pero es poco efectivo. Me tocará aprender las funciones de MySQL y volver a intentar... Parecía tarea fácil lo que quería hacer... Iluso de mi t_t

Saludos.
  #20 (permalink)  
Antiguo 02/11/2008, 14:57
Avatar de Deschamps  
Fecha de Ingreso: octubre-2008
Mensajes: 257
Antigüedad: 15 años, 6 meses
Puntos: 8
Respuesta: Modificar desde PHP otro PHP?

Digo yo que ya puestos a manejar ficheros... bien podrías crearte uno de texto plano independiente por cada noticia, todas en una carpeta, jugar con los nombres de los archivos para identificarlas convenientemente, leer el directorio cuando toque y seleccionar las que te interese directamente, mostrarlas como te convenga,... etc.

Por otro lado, aunque sea un poco offtopic: respecto del formulario que pusiste al principio: ¿No deberías dar algún nombre a los select? ¿Y no deberías controlar lo de las fechas para evitar colocar 31 de febrero, por ejemplo?

Un saludo.
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 15:08.