Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

fmartins

[RESOLVIDO] Inserir código PHP em registro no banco de dados

Recommended Posts

Olá pessoal!Estou desenvolvendo um projeto e me deparei com uma situação que parece não ter soluçãoTenho a necessidade de inserir códigos php dentro de um registro no banco de dados MySQL, porém não tenho sucesso ao buscá-lo do banco de dados.Acredito que há uma alternativa, porém também sei que quando faço uma consulta ao banco de dados ela me retorna o resultado em uma variável, e é impossível ter um código php dentro de uma variável php :unsure: O que interessa da estrutura de meu banco de dados é:

CREATE TABLE `snippets` (  `id` int(10) NOT NULL auto_increment,  `name` varchar(50) NOT NULL default '',  `snippet` text,  PRIMARY KEY  (`id`));

Duas inserções para modelo:

INSERT INTO `snippets` VALUES (1, 'comentar', '<?php echo "teste1"; ?>');INSERT INTO `snippets` VALUES (2, 'avaliar', '<?php echo "teste2"; ?>');

E a consulta ao banco de dados:

<?phpinclude("inc/inc_conexao.php");$qry = "SELECT id, snippet FROM snippets ORDER BY id DESC LIMIT 1";$res = mysql_query($qry);while($arr = mysql_fetch_array($res)){	echo $arr["snippet"];}?>

Agradeço desde já a ajuda,Fernando Martins

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá Beraldo !Obrigado pela resposta.Eu quero salvar os códigos php dentro do banco de dados para automatizar o maior número possível de funções através de um administrador.Eu sei que existe uma ferramenta, um cms, chamado MODx, e este armazena código php no banco de dados, porém, já tentei debugá-lo e não obtive êxito :( ObrigadoFernando

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fernando, você pode resgatar as funções no banco pra uma variável e usar eval() para torná-las disponíveis. Um exemplo:

 

//Supondo que a variável funcao é o conteúdo resgatado do BD$funcao = "function minhaFuncao() {	print \"Oláaaa.<br />\";}";eval($funcao);minhaFuncao();

Se retirar a linha do eval(), dá erro de função indefinida.

Ai também não é adicionado no banco (variável, no exemplo) as tags <?php ?>, senão daria erro, pois o código seria interpretado dentro de outro trecho em PHP.

 

[]s

Anderson Mello

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.