Ir para conteúdo
Fórum Script Brasil
  • 0

Gerar Codigo PHP com PHP


Wagner Soares

Pergunta

Tenho o seguinte código:

<?php    

$id = fopen (time() . ".html", "w");

fwrite($id,"<html><head><title>Titulo</title></head>");
fwrite($id,"<body>");
fwrite($id,"blablabla qualquer coisa <font color='#006633'>verdinho</font><br>outra linha<p>paragrafo</p>fim");

fwrite($id,"<html><?php echo "Teste" ?><html>");

ele não interpreta como codigo php e sim como umas string qualquer. alguém já precisou usar esse tipo de recurso?

?>

Com ele eu gero uma pagina html com php mas eu preciso tambem gerar paginas html com scripst em php mas se eu tento assim:

fwrite($id,"</body></html>");

Link para o comentário
Compartilhar em outros sites

5 respostass a esta questão

Posts Recomendados

  • 0

amigo, não intendi o seu script, mais intendi sua duvida...

pra você gerar outra página com PHP, primeiro que você teria que fazer essa página com PHP olha

criador_de_pagina.php

<?php

//by: shupskO

ignore_user_abort(true);

?>
<html>
<head>
<title>Criar Página</title>
<style type="text/css">
body, input, textarea {
    font-family: Tahoma;
    font-size: 14px;
    text-align: center;
}
input, textarea {
    width: 250px;
    border: 1px solid #000000;
}
textarea {
    height: 100px;
}
</style>
</head>
<body>

<?php

function index()
{

?>

<form action="?id=envia" method="POST">
Nome da Página:<br>
<input type="text" name="nome" value="Página de Teste"><br><br>
Link da Página:<br>
<input type="text" name="link" value="teste.php"><br><br>
Conteudo da Página (HTML):<br>
<textarea name="conteudo"><?php echo "<div style=\"font-family: Tahoma; font-size: 14px;\" align=\"center\">Esse texto foi imprimido pelo PHP</div>"; ?></textarea><br><br>
<input type="submit" value="Enviar!" style="width: 100px; background-color: #FFFFFF;">
</form>
<?php

}

function envia() {

$nome = $_POST['nome'];//captura o nome
$link = $_POST['link'];//captura o link que deseja Ex.: oi.php
$conteudo = $_POST['conteudo'];//captura o conteudo da pagina

$mensagem = "<html>\n<head>\n<title>$nome</title>\n</head>\n<body>\n\n";
$mensagem .= "$conteudo \n\n";
$mensagem .= "</body>\n</html>";

$abre = fopen("$link", "w");//se a pagina existir ele cria outra
fwrite($abre, "$mensagem");
fclose($abre);

echo "Página criada com Sucesso<br>\n";
echo "o link é <a href=\"$link\" title=\"$nome\" target=\"_blank\">$nome</a><br>\n";

}

switch($_GET['id']) {

case 'envia':
envia();
break;

default:
index();

}

?>

</body>
</html>

o sistema está desenhado (Formatado com fonte e tudo), e pode inserir código PHP a vontade que ele vai executar na página que você criar

Eu que criei, espero ter ajudado =D

Link para o comentário
Compartilhar em outros sites

  • 0

Ora tudo que estiver entre aspas é string ... para solucionar seu problema é só cocatenar os valores oras ...

<?php 
$valor = "TESTE!!!!!";

$id = fopen (time() . ".html", "w");
fwrite($id,"<html>" . $valor . "<html>");
flose($id);

?>
Caso queira que seje escrito uma página com códigos PHP para futuras execições a mesma coisa bastanto respeita as aspas e afins ...
<?php 

$id = fopen ("novo.php", "w");
fwrite($id,"<?php echo 'TESTE'; ?>");
flose($id);

?>

Depois basta acessar o "novo.php" e ele ira executar o PHP que foi escrito dentro dele :P

Editado por SK15
Link para o comentário
Compartilhar em outros sites

  • 0
Então SK15, foi isso que eu tentei mostrar pra ele só que mais complexo...

o sistema pede Nome da página, endereço dela e o conteudo, incluindo PHP

assim ele vai fazer uma página e nessa página vai colocar o que quizer, altomáticamente =D

nesse caso a unica saida que vejo é fazer como SK15 falou pois você terá que bloquear a execução desse codigo de alguma maneira, se retirar os aspas ele será executado , tente fazer uma pagina de execução para cada tarefa

titulo = caso queira use o require_once

corpo= ||

login= ||

e uma pagina para o proprio usuario criar, implementar os codigos que desejar pois é dificil fazer algo automatizado que irá atender todos os usuarios, dessa maneira você disponibiliza um meio do proprio usuario 'lapidar' sua pagina.

até mais

Link para o comentário
Compartilhar em outros sites

  • 0

Iai mano segue esse código aqui que eu tenho no meu pc,

tava estudando um livro que tem esse código e acabei programando ele

mudei so algumas coisas, ele ta sem cométario qualquer duvida tu me chama ai,

ele e puramente OO !



<?php

class TElement
{
private $name;
private $propriedades;
private $children;


public function __construct($name)
{
$this->name = $name;
}

public function __set($value,$name)
{
$this->propriedades[$name] = $value;
}

public function add($child)
{
$this->children[] = $child;
}


private function open()
{
echo "<{$this->name}";

if($this->propriedades)
{
foreach ($this->propriedades as $value=>$name)
{

echo " {$name}=\"{$value}\"";
}



}
echo '>';
echo '</p>';
}

public function show()
{
$this->open();
echo "\n";

if($this->children)
{

foreach ($this->children as $child)
{

if(is_object($child))
{
$child->show();
}

elseif ((is_string($child)) or (is_numeric($child)))
{
echo $child;
}
}

$this->close();
}
}

private function close()
{
echo "</{$this->name}>\n";
}

}

?>


[/codebox]

[codebox]

<?php

include_once 'TElement.class.php';

$html = new TElement('html');
$head = new TElement('head');
$html->add($head);

$title = new TElement('title');
$title->add('Olá Mundo');
$head->add($title);

$body = new TElement('body');
$body->bgcolor='#ffffdd';
$html->add($body);

$center = new TElement('center');
$body->add($center);

$p = new TElement('p');
$p->align = 'center';
$p->add('Exemplo');
$center->add($p);

$image = new TElement('img');
$image->src = 'app.image/volcom.png';
$image->width = '120';
$image->height = '120';
$center->add($p);

$hr = new TElement('hr');
$hr->width = '150';
$hr->height = 'center';
$center->add($hr);

$a = new TElement('a');
$a->href = 'http://www.google.com.br';
$a->add('Faça uma Busca');
$center->add($a);

$br = new TElement('input');
$input->type = 'button';
$input->value = 'clique para ir para o site ';
$input->onclick = "alert('TESTE 1')";
$center->add($input);


$html->show();


?


Ele possui alguns erros,

esse instanciamento que eu fiz

ta gerando so código html

se você quiser botar um php, e

so instanciar a classe pai

puxar o método de add e

dar seu valor, abraço !

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,9k
×
×
  • Criar Novo...