HTMLコードと そのコードでできた内容をHTML上で結果としてどうなるのかを表示するようなプロ
グラムを作りたいと思っています。問題は、出来たHTMLコード内の<table>タグのみ取得したいと思っています。
http://d.hatena.ne.jp/kotaro01/20100511/1273588059
を参考にしながらつくろうと思ったのですがうまく掴めず、htmlコード表示が出来ません。同一のPHPで
HTML作成 HTMLコード表示 結果表示がしたいと思っています。
HTMLコード表示はjavascriptでも大丈夫です。同一php内に置いて動くものであれば大丈夫です
長くなったので別回答で。
あと、サンプルは短く目的どおり動かなくてもエラーの出ないものがよいです。
<?php if ($gyo === 2){ $htmlstr = <<<EOM <table><tr> <td>$title</td> </tr></table> EOM; } elseif ($gyo === 3){ $htmlstr = <<<EOM <table><tr> <td><strong>$title</strong></td> </tr></table> EOM; } else { $htmlstr = <<<EOM <table><tr> <td><img src="$url1"/></td> </tr></table> EOM; } include('simple_html_dom.php'); $data = str_get_html($htmlstr); foreach($data->find('tr') as $element){ echo $element->innertext; } ?>
<?php ob_start(); if ($gyo === 2){ ?> <table><tr> <td><?php echo $title ?></td> </tr></table> <?php } elseif ($shop === "楽天" && $gyo === 3){ ?> <table><tr> <td><strong><?php echo $title ?></strong></td> </tr></table> <?php } else { ?> <table><tr> <td><img src="<?php echo $url1 ?>"/></td> </tr></table> <?php } $htmlstr = ob_get_contents(); //ob_end_flush(); ob_end_clean(); include('simple_html_dom.php'); $data = str_get_html($htmlstr); foreach($data->find('tr') as $element){ echo $element->innertext; } ?>
解答使い回しで申し訳ないが、昨日の事だし基本同じと思うので。
http://q.hatena.ne.jp/1329396133 より
そういうのをスクレイピングとか言ったりします。
http://www.php-seed.net/blog/archives/113
あと、ここで過去にあった質問ではsimple_html_dom.phpを使ってました。
http://q.hatena.ne.jp/1318845421
http://smkn.xsrv.jp/blog/2010/02/php_simple_html_dom_parser/
http://tips.recatnap.info/simple_html_dom_parser_memo/
1,2,3のどの方法がよいですか?
2か3でお願いします
色々ご迷惑かけます
長くなったので別回答で。
あと、サンプルは短く目的どおり動かなくてもエラーの出ないものがよいです。
<?php if ($gyo === 2){ $htmlstr = <<<EOM <table><tr> <td>$title</td> </tr></table> EOM; } elseif ($gyo === 3){ $htmlstr = <<<EOM <table><tr> <td><strong>$title</strong></td> </tr></table> EOM; } else { $htmlstr = <<<EOM <table><tr> <td><img src="$url1"/></td> </tr></table> EOM; } include('simple_html_dom.php'); $data = str_get_html($htmlstr); foreach($data->find('tr') as $element){ echo $element->innertext; } ?>
<?php ob_start(); if ($gyo === 2){ ?> <table><tr> <td><?php echo $title ?></td> </tr></table> <?php } elseif ($shop === "楽天" && $gyo === 3){ ?> <table><tr> <td><strong><?php echo $title ?></strong></td> </tr></table> <?php } else { ?> <table><tr> <td><img src="<?php echo $url1 ?>"/></td> </tr></table> <?php } $htmlstr = ob_get_contents(); //ob_end_flush(); ob_end_clean(); include('simple_html_dom.php'); $data = str_get_html($htmlstr); foreach($data->find('tr') as $element){ echo $element->innertext; } ?>
あー、コードを表示したいって事ですね。いまさらですが。
あと、これもいまさらですが、こういう操作は理解して行わないとXSSを生じやすいですから気を付けてくださいね。
#元の生成過程が安全なら、たぶん安全だと思いますが。
わかりました。色々ありがとうございます。
あー、コードを表示したいって事ですね。いまさらですが。
2012/02/21 19:45:33あと、これもいまさらですが、こういう操作は理解して行わないとXSSを生じやすいですから気を付けてくださいね。
#元の生成過程が安全なら、たぶん安全だと思いますが。
わかりました。色々ありがとうございます。
2012/02/22 20:19:17