Foros del Web » Programando para Internet » PHP »

insertar texto en una linea predeterminada de una web con php

Estas en el tema de insertar texto en una linea predeterminada de una web con php en el foro de PHP en Foros del Web. Hola a todos los molesto nuevamente esta vez con php resulta de que estoy haciendo algo en una pagina que debe funcionar asi: al llenar ...
  #1 (permalink)  
Antiguo 17/07/2012, 08:43
 
Fecha de Ingreso: agosto-2011
Mensajes: 37
Antigüedad: 8 años, 4 meses
Puntos: 1
insertar texto en una linea predeterminada de una web con php

Hola a todos

los molesto nuevamente

esta vez con php

resulta de que estoy haciendo algo en una pagina que debe funcionar asi:
al llenar un formulario en "paginaA.php" se genere o copie un documento php "paginaB.php, abrirlo y en una linea en particular escribir algo (el dato ingresado en el formulario de paginaA)

yo tengo parte del codigo, donde se copia la pagina, se da un nombre consecutivo (use time(), pues no encontre mas) y abre el archivo, pero con la linea el FPUTS me escribe al principio de el codigo o al final y no en el formulario "aqui"

HTML (INDEX.php-Formulario que genera)
Código:
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Generador de paginas </title>
</head>

<body>
<p> <strong>Generador de Paginas</strong></p>
<p>
  <div >  <form  target="_top" method="post" action="generador.php"  name="datosgenerador">
  <table width="553" border="1">
  <tr>
    <th width="195" scope="row">Escribe nombre:</th>
    <td width="342"> <input  value="" name="nombreusuario" type="text"  size="55%" /></td>
  </tr>
</table>
<br />
  <input name="crear"  type="submit" value="Crear pagina usuario" />
  
</form> 
</div>
</p>

</body>
</html>

PHP (GENRADOR:PHP)
Código:
<?php
$archivo = 'ejemplo';
$secuencia= time() ;
$nuevo_archivo = "$archivo.$secuencia.php" ;
if (!copy($archivo, $nuevo_archivo)) {
    echo "Error al copiar $archivo...\n";
}
$abrir = fopen($nuevo_archivo ,"r+" );

	fputs($abrir,$_POST['nombreusuario']);

    
	
	fclose($abrir);
?>
y la pagina copiada (EJEMPLO-se guarda sin extension, luego se coloca automaticamente el php)

Código:
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>ejemplo original</title>
</head>

<body>
 <form method="post"> documento original<input name="aqui" type="text" value=" " /> </form>
</body>
</html>
Muchas gracias por colaborar

Última edición por refresko; 17/07/2012 a las 08:44 Razón: añadir info
  #2 (permalink)  
Antiguo 18/07/2012, 09:49
 
Fecha de Ingreso: agosto-2011
Mensajes: 37
Antigüedad: 8 años, 4 meses
Puntos: 1
Respuesta: insertar texto en una linea predeterminada de una web con php

Hola nuevamente,

he estado pensando: en vez de escribir en el "input" de paginaB, reemplazaar algun texto

entonces seria: desde paginaA lleno formulario "input-text area" y al presionar "enviar", activar un php que me abra una pagina web y me reemplaze un texto (insertado en un input) por otro

lo he intentado con str_replace y no he podido

quien me ayuda profavor!
  #3 (permalink)  
Antiguo 18/07/2012, 10:06
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 13 años, 7 meses
Puntos: 2135
Respuesta: insertar texto en una linea predeterminada de una web con php

¿Como lo intentaste? Pon el código que usaste.
  #4 (permalink)  
Antiguo 18/07/2012, 19:03
 
Fecha de Ingreso: agosto-2011
Mensajes: 37
Antigüedad: 8 años, 4 meses
Puntos: 1
Respuesta: insertar texto en una linea predeterminada de una web con php

GatorV, realmente gracias por querer cooperar

pues lo he intentado de muchaaaaassss maneras

pero con el mismo principio
1. copio el archivo y lo renombro
luego abro el archivo para lectura y escritura
luego con FPUTS ingreso el cambio dado con str_replace

Código:
<?php
$archivo = 'ejemplo';
$secuencia= time() ;
$nuevo_archivo = "$archivo.$secuencia.php" ;
if (!copy($archivo, $nuevo_archivo)) {
    echo "Error al copiar $archivo...\n";
}
$abrir = fopen($nuevo_archivo ,"r+" );


	fputs(str_replace("textoareemplazar", "nombreusuario", !!!aqui he puesto "$_post" "aqui" "$nuevo_archivo" y mass);

fclose ($abrir);
?>php
Tambien lo he intentado sin el Fputs, y sin cerrar el codigo y no me funciona

como soy bruto en esto de php no he encontrado otra forma,

talvez el problema es que "textoareemplazar" esta en un input, en el "value"

pero no se como hacerlo

pense que era mas facil dirigir EN QUE PARTE DEL DOCUMENTO escribir, pero no encuentro un comando claro

gracias por preguntar

espero me puedan colaborar
  #5 (permalink)  
Antiguo 19/07/2012, 10:42
 
Fecha de Ingreso: agosto-2011
Mensajes: 37
Antigüedad: 8 años, 4 meses
Puntos: 1
Respuesta: insertar texto en una linea predeterminada de una web con php

Hola, nuevamente yo

he seguido intentado y ya he mejorado algo+

ya logro reemplazar el texto del imput de la pagina copiada, pero se aggregan unas lineas que no necesito y pierdo caracteristicas como "la casa.gif"

ayudemen porfavor

en GENERADOR.php voy asi (la pagina INDEX y EJEMPLO sigue igual)
Código:
<?php
$archivo = 'ejemplo.php';
$secuencia= time();
$nuevo_archivo = "$secuencia.$archivo" ;

if (!copy($archivo, $nuevo_archivo)) {
    echo "Error al copiar $archivo...\n";
}

function cambio($path,$cadena)
{
      //Abrimos el archivo en modo lectura y escritura
   $fp = fopen($path,"r+");
   //Leemos linea por linea el contenido del archivo
   while ($linea= fgets($fp, 2000))
   {
      //Sustituimos las ocurrencias de la cadena que buscamos
      $linea = str_replace($cadena,$_POST{"nombre usuario"},$linea);
      //Anadimos la linea modificada al texto
      
	fputs($fp,$linea);
	
   }
  
	
}
//Definimos el path y la cadena
$path= $nuevo_archivo;
$cadena = "pepe";
//Llamamos la funcion
echo cambio($path,$cadena);





?>
subo la carpeta con el ejemplo por si alguien me quiere ayudar

repito
la idea es llenar el input "nombreusuario" de INDEX.php, se active un GENERADOR.php y que
1.se copie un archivo EJEMPLO.php (ya lo logre)
2.se de un nombre secuencial (ya lo logre)
3.el dato del input "nombreusuario" de INDEX.php se introduzca automaticamente en el input "aqui" de la pagina copiada COPIA.EJEMPLO.php

he intentado simplemente escribiendo desde 0 el "nombreusuario" en "aqui". y (como ahora con el codigo) cambiando cualquier dato escrito en "aqui" por el dato de "nombreusuario"

de verdad necesito ayuda

subo la carpeta con los documentos que tengo aqui: http://www.mediafire.com/?p6cctvk78jdshd7
  #6 (permalink)  
Antiguo 19/07/2012, 10:47
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 13 años, 7 meses
Puntos: 2135
Respuesta: insertar texto en una linea predeterminada de una web con php

En primera es $_POST['acá va el campo'] no es con llaves {} si no con [] luego lo más sencillo es que hagas algo así:
Código PHP:
Ver original
  1. $archivo = file_get_contents('archivo.txt');
  2. $archivo = str_replace('foo', 'bar', $archivo);
  3. file_put_contents('archivo.txt', $archivo);

Saludos.
  #7 (permalink)  
Antiguo 19/07/2012, 12:01
 
Fecha de Ingreso: agosto-2011
Mensajes: 37
Antigüedad: 8 años, 4 meses
Puntos: 1
Respuesta: insertar texto en una linea predeterminada de una web con php

Cita:
Iniciado por GatorV Ver Mensaje
En primera es $_POST['acá va el campo'] no es con llaves {} si no con [] luego lo más sencillo es que hagas algo así:
Código PHP:
Ver original
  1. $archivo = file_get_contents('archivo.txt');
  2. $archivo = str_replace('foo', 'bar', $archivo);
  3. file_put_contents('archivo.txt', $archivo);

Saludos.
GatorV muchisisisisisissisisisisisiisismas gracias

era muy facil( para alguien que sabe), pero yo de esto no se nada y pues me sirvio muchooooooooooo su ejemplo

ya lo logree gracias a usteddddddd

graciasssssss

asi quedo el GENERADOR.php
Código PHP:
<?php
$archivo 
'ejemplo.php';
$secuencia= ($_POST {"nombrearchivo"});
$nuevo_archivo "$secuencia.$archivo" ;

if (!
copy($archivo$nuevo_archivo)) {
    echo 
"Error al copiar $archivo...\n";
}
$cambio file_get_contents($nuevo_archivo);
$cambio str_replace("pepe"$_POST["nombreusuario"], $cambio);
file_put_contents($nuevo_archivo$cambio);
?>
  #8 (permalink)  
Antiguo 19/07/2012, 13:53
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 13 años, 7 meses
Puntos: 2135
Respuesta: insertar texto en una linea predeterminada de una web con php

Nota que esto esta mal: $secuencia= ($_POST {"nombrearchivo"});, repito nuevamente para leer las variables de un array es forzoso usar corchetes [].
  #9 (permalink)  
Antiguo 19/07/2012, 13:58
 
Fecha de Ingreso: agosto-2011
Mensajes: 37
Antigüedad: 8 años, 4 meses
Puntos: 1
Respuesta: insertar texto en una linea predeterminada de una web con php

ok, jejejejee corregireee
gracias
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 02:27.