Foros del Web » Programando para Internet » PHP »

abrir texto de area de texto como código php en otra ventana

Estas en el tema de abrir texto de area de texto como código php en otra ventana en el foro de PHP en Foros del Web. Hola Tengo un pequeño problema: Tengo en una página un area de texto de un formulario del tipo: <form action="analiza.php" method="POST"> <textarea rows="10" name="codigo" cols="50"></textarea> ...
  #1 (permalink)  
Antiguo 12/07/2005, 19:02
 
Fecha de Ingreso: julio-2005
Mensajes: 10
Antigüedad: 12 años, 5 meses
Puntos: 0
abrir texto de area de texto como código php en otra ventana

Hola
Tengo un pequeño problema:
Tengo en una página un area de texto de un formulario del tipo:
<form action="analiza.php" method="POST">
<textarea rows="10" name="codigo" cols="50"></textarea>
<input type="submit" value="crearpagina" >
</form>

En ese area quiero introducir el código de una página web que tenga embbebido código php, y quiero que al pulsar "crearpágina" la página analiza.php me cree una página nueva a partir del código introducido en ese area de texto.
Ejemplo:
si yo escribiera en el area de texto:

<html>
<head>
<title>Example</title>
</head>
<body>

<?php
echo "¡Soy un script de PHP!";
?>

</body>
</html>

la pagina analiza.php después de haberle pasado la variable $codigo me crease una página web que me escribiera

¡Soy un script de PHP!

He probado con la funcion eval(); pero no lo consigo.

Gracias de antemano si alguien puede ayudarme.

Última edición por plande; 13/07/2005 a las 06:14
  #2 (permalink)  
Antiguo 14/07/2005, 19:06
 
Fecha de Ingreso: julio-2005
Mensajes: 10
Antigüedad: 12 años, 5 meses
Puntos: 0
Hola otra vez! alguien me puede echar una mano...
saludos
  #3 (permalink)  
Antiguo 14/07/2005, 19:10
 
Fecha de Ingreso: abril-2005
Ubicación: zürich, la rica suiza
Mensajes: 212
Antigüedad: 12 años, 7 meses
Puntos: 2
:borracho:

no te entiendo bien, me gustaria ayudarte, pon un ejemplo mas claro. slaudos
  #4 (permalink)  
Antiguo 14/07/2005, 19:42
T4X
 
Fecha de Ingreso: enero-2004
Ubicación: myT-Base
Mensajes: 254
Antigüedad: 13 años, 11 meses
Puntos: 2
Revisaste el Manual de PHP en la función eval()?
Sí no checá la url http://www.php.net/eval
__________________
Ahora T4X es
WinGFX!!!!!
  #5 (permalink)  
Antiguo 14/07/2005, 22:09
Avatar de Seppo  
Fecha de Ingreso: marzo-2005
Ubicación: Buenos Aires, Argentina
Mensajes: 1.284
Antigüedad: 12 años, 8 meses
Puntos: 17
Acá tenés un script de como sería...
Es realmente muuy vulgar hacerlo y no es para nada recomendable.
No es necesario que pongas <? para empezar...
En caso de que sea necesario podés hacer un echo de lo que está antes del <? y el eval de lo que lo sigue

Código PHP:
<?php
eval (stripslashes($_POST['php']));
?>
<br />-------------------
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="POST">
<textarea name="php"></textarea>
<input type="submit">
</form>
  #6 (permalink)  
Antiguo 14/07/2005, 22:12
Avatar de dopon  
Fecha de Ingreso: julio-2005
Ubicación: Cucuta / Colombia
Mensajes: 493
Antigüedad: 12 años, 5 meses
Puntos: 1
Hmmm pues haber si mi ingles medio me falla uno de los post mas o menos tiene algo que te ayudaria:

After several hours of reviewing examples I believe I've come up with a decent method of dynamically loading php pages. I hope this helps, and if anyone else has any better ideas, please post them.

Código PHP:
<?php
$eval_str 
// Your Web Page Source Code....

preg_match_all("/(<\?php|<\?)(.*?)\?>/si"$eval_str,
                     
$raw_php_matches);

$php_idx 0;
 
while (isset(
$raw_php_matches[0][$php_idx]))
{
  
$raw_php_str $raw_php_matches[0][$php_idx];
  
$raw_php_str str_replace("<?php"""$raw_php_str);
  
$raw_php_str str_replace("?>"""$raw_php_str);

  
ob_start();
  eval(
"$raw_php_str;");
  
$exec_php_str ob_get_contents();
  
ob_end_clean();

  
$eval_str preg_replace("/(<\?php|<\?)(.*?)\?>/si",
                                     
$exec_php_str$eval_str1);
  
  
$php_idx++;
}

return 
$eval_str;
?>
si no una solucion sin usar eval() seria creando un fichero de extension php que contenga el codigo que llega desde el form
  #7 (permalink)  
Antiguo 21/07/2005, 13:38
 
Fecha de Ingreso: julio-2005
Mensajes: 10
Antigüedad: 12 años, 5 meses
Puntos: 0
Muchas gracias por vuestra ayuda. yo buscando y buscando encontre otra forma que me dijeron en otro foro, por si a alguien le interesa:

"con este script lo podes hacer onthefly :)

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<HTML>
<HEAD>
<TITLE>Untitled</TITLE>
<META NAME="GENERATOR" CONTENT="MAX's HTML Beauty++ ME">
</HEAD>

<BODY>

<FORM ACTION="procesar.php" METHOD="POST">
<DIV ALIGN="center">
<TEXTAREA NAME="textarea" COLS="100" ROWS="10">
</TEXTAREA><BR><BR>
<INPUT TYPE="submit" NAME="enviar" VALUE="enviar">
</DIV>
</FORM>
</BODY>
</HTML>




procesar.php

<?php
$mipost = stripslashes($_POST[textarea]);
$limpioinicio = str_replace ("<?", "//inicio", "$mipost");
$limpiofinal = str_replace ("?>", "//fin codigo php", "$limpioinicio");
echo "este es el texto a procesar despues de la limpieza de los tags <?php y ?> <br /><br />";
echo "$limpiofinal <br /><br />";
echo "y este es el resultado de procesarlo <br /><br />";
eval( $limpiofinal ); // evalua el texto como codigo php
?>



saludos y gracias de nuevo por vuestras respuestas
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 20:48.