データベースの中に入れたphpコードを表示させたい - PHPプロ!Q&A掲示板

673

  • 0P

データベースの中に入れたphpコードを表示させたい

質問日時 / 2007年9月27日 21:03    回答数 / 1件

Questioner:  yore917  このエントリーをはてなブックマークに追加 

キーワード / php    MySQL    コード   

こんにちは。php初心者です。
データベースの中にphpコードを保存して、それをphpで呼び出して中のソースを実行させたいのですがphpコードがそのまま表示されてしまいます。何か良い方法はありますでしょうか?

●データベースの中身
[ID]
0
[contents]
$test="テスト";

●ソース
  1. <?php
  2.   $db = mysql_connect('localhost','root');
  3.   mysql_select_db('hoge',$db);
  4.   $id = mysql_escape_string(0);
  5.   $sql  = "select * from contents where ID = '$id';";
  6.   $contents = mysql_query($sql,$db);
  7.   mb_http_output ( 'UTF-8' );
  8.   $aryCol=mysql_fetch_assoc($contents);
  9.    $a = $aryCol['contents'];
  10.      echo $a;
  11.      echo $test;
  12. ?>

●実行結果
$test="テスト";

と、いうような感じです。実行結果は「テスト」という文字のみ表示させたいのですが、$aに入っているソースコードがそのまま表示されてしまい、$testには何も入っていないままです。
このような処理は不可能なのでしょうか?またデータベースに入っているソースコードの処理を行いたい場合、どのような処理をすればよろしいでしょうか?
私では経験不足なため皆様のお知恵を拝借できればと思い質問させていただきました。くだらない質問で大変恐縮ですがご回答のほうよろしくお願いいたします。


ツリー一覧

┗A01atsushihttp://www.phppro.jp/eval evalとかですかねー eva

回答一覧

並び替え:

A01 満足
answereratsushi [9月27日 21:48]

http://www.phppro.jp/eval
evalとかですかねー
eval($a);って感じで書けば実行されるかと思います。

でもevalはいろいろと脆弱性に繋がったりするので使うときは気をつけてください。

この意見に回答する

ツリーへ TOPへ

<<質問一覧へ



Pick Up Q&A

Q
PHPのHTML埋め込み記述について
 このエントリーをはてなブックマークに追加 
A
$_POST["data"] == "男" ? $val = "checked" : $val = "" ; の意味は以下と同じです。 if($_POST["data"] == "男"){ $val = "checked; } e...

>>続きを読む

kende様のご指摘通り、三項演算子を使用する際には、コードの複雑度などを考慮する必要がありますね。書きやすさと共に可読性も追求したいところですね。

▲解説者:岡本(アシアル株式会社 教育コーディネーター兼 システムエンジニア)