• ベストアンサー

HTMのファイルをPHPに変換する方法

HTMで作ったページをPHPにしようと思っています。 作ったページにテーブルが含まれているのですが、単純に移してみた所 height="30" width="560" などのheightだけはしっかり適用されているのにwidthが適用されていなかったり、 テーブルの外枠はあるのに内枠は表示されなかったりと部分部分でおかしくなっています。 HTMのページの内容をそのままPHPに移す方法はありますでしょうか? 教えてgooを検索して探したのですがテキストエディタでそのまま変換できるというような記事を見たのですがterapad ,h2editor 共にphpへの変換を見つけられませんでした。 またそのようなソフトがない場合テーブルの表示のずれは何が原因でしょうか? 記述の方法を教えていただけたらと思います。

  • PHP
  • 回答数6
  • ありがとう数5

質問者が選んだベストアンサー

  • ベストアンサー
回答No.6

もしくは、外部で指定されたレイアウトを一度は反映させてから さらにその上にレイアウトを重ねるということもできます。 <html> <head> <title></title> </head> <body> <table border="1" style="height:30px; width:560px;"> <tr><td></td></tr> </table> </body> </html>

kurann
質問者

お礼

まさにこれで直りました。 テーブルごとにスタイルシートを指定すれば確かに直せますね。 ありがとうございました!

その他の回答 (5)

回答No.5

> table {width: 97%; margin: 3; padding: 3; font-size: small; table-layout: fixed; } > table td {padding: 1; border-width: 1; vertical-align: ; font-family: Verdana, Arial, Helvetica, sans-serif;} これはHTML上の全てのtableやtdに対してのレイアウトを統一するための命令です。 特定のものに違うレイアウトを与えたい場合は table.a {○○○} td.b {○○○} とし、そのスタイルを使うようにすればいいです。 ------------------------------------------- <html> <head> <title></title> <style> <!-- table.a { height:30px; width:560px; } td.b { } //--> </style> </head> <body> <table border="1" class="a"> <tr><td class="b"></td></tr> </table> </body> </html> -------------------------------------------- http://www.tohoho-web.com/css/basic.htm ▲ 参考サイト

回答No.4

見当違いかもしれませんが、stylesheetが悪さをしている ということはないでしょうか。 XOOPSを利用したことがないのですが、header.phpを読み込んだときに <link ・・・ src="○○○.css"> などで外部のスタイルシートを読み込んでいるのであれば それによりレイアウトが崩れるということも考えられるかと思います。

kurann
質問者

お礼

ありがとうございます。まさにその通りでした。 スタイルシートを変更したら横の幅などのずれが修正できました。 ただ一部に関してだけ直すためにスタイルシートを変更すると他にも影響が出てしまう部分がありまして、 一部の部分だけスタイルシートの影響を排除するような記述等はありませんでしょうか? 具体的にはまた別の部分の横の幅についてなのですが、 (今までは5:5の比率になるものが6:4などになっていた) (スタイルシート内) table {width: 97%; margin: 3; padding: 3; font-size: small; table-layout: fixed; } table td {padding: 1; border-width: 1; vertical-align: ; font-family: Verdana, Arial, Helvetica, sans-serif;} このwidth 97%によって強制的に横幅が伸びて特定のピクセル数で指定したいものまで伸びてしまってます。 逆にこの97%を外すと他の部分がくずれてしまいます。 特定の部分だけスタイルシートの影響は外せますでしょうか?

回答No.3

kurannさんこんにちは。 HTM(HTML)ファイルをPHPファイルにするには 拡張子を「.htm」から「.php」に手動で変更すればいいです。 目的のHTMファイルを開き、内容をコピーし、 メモ帳を開いてそこに貼り付けて(新規のメモ帳の)名前を ○○○.phpとしてもいいです。 ◆index.htm -------------------------------------------- <html> <head> <title></title> </head> <body> <table border="1" height="30" width="560"> <tr><td></td></tr> </table> </body> </html> --------------------------------------------  ↓↓↓ ◆index.php -------------------------------------------- <html> <head> <title></title> </head> <body> <table border="1" height="30" width="560"> <tr><td></td></tr> </table> </body> </html> -------------------------------------------- 静的な部分はHTMと同じ記述方法でPHPでも表示可能です。

kurann
質問者

お礼

ありがとうございます。 なるほど、そのままでも本来は動くんですね。 スタートからのHTMLやヘッダの囲みも全部そのままでいいことがわかって助かりました。 他の要素で表示がおかしくなってるんだと思います。 XOOPSのソフトのincludeしているPHPファイルの記述を調べてみればいいような気がしてきました。

回答No.2

とりあえず、そのPHPファイルをブラウザで表示させ、 ブラウザからソースを開いて見て下さい。 そこでのHTMLが意図しない作りになっていたら PHPファイルでの記述が間違っています。 HTMLソースを<?php ?>で囲っていなければ HTMLファイルと全く同一の結果が返ってくるはずです。 そうであればHTMLファイル自体のソースがおかしかったという事になります。

kurann
質問者

お礼

ありがとうございます。 まったく同一の結果が返ってきてるのに表示が違うことで XOOPSのソフトを利用する場合に入れないといけない、 <?php include '../../mainfile.php'; include XOOPS_ROOT_PATH.'/header.php'; ?> と <?php include XOOPS_ROOT_PATH.'/footer.php'; ?> に原因がありそうだとわかりました。 この二つをはずしたらきれいに表示されました。 このあたりが横幅がずれたりする原因だと思います。

  • bavarois
  • ベストアンサー率34% (34/100)
回答No.1

htmlのタグをphpにコピーしても普通、問題は起こらないはずですが・・・。 phpの基本的なことはわかっていますか? もしもphpプログラムからブラウザに「height="30" width="560"」を表示させるなら <?php print "height=\"30\" width=\"560\""; ?> このように「"」の前に「\」を必要な分だけ入れないとだめですよ。

参考URL:
http://www.standpower.com/
kurann
質問者

お礼

ありがとうございます。 サイトの方も参考にさせていただきます。

関連するQ&A

  • Flash5でhtmのサイズが変わってしまうのは?

    Flash5でhtmのサイズが変わってしまうのは? ムービーのプロパティでサイズを600×30pxにしました。 パブリッシュをしたxxx.htmでは、サイズは600×30pxのままですが、ホームページ・ビルダー5の新しいhtmのページに下を貼り付けると、 WIDTH=600 HEIGHT=30 が width="192" height="192" に自動的に変わってしまいます。何度直しても変わってしまいます。なぜなのでしょうか、よろしくおねがいします。 <OBJECT classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=5,0,0,0" WIDTH=600 HEIGHT=30> <PARAM NAME=movie VALUE="down.swf"> <PARAM NAME=play VALUE=false> <PARAM NAME=loop VALUE=false> <PARAM NAME=quality VALUE=high> <PARAM NAME=bgcolor VALUE=#FFCC00> <EMBED src="down.swf" play=false loop=false quality=high bgcolor=#FFCC00 WIDTH=600 HEIGHT=30 TYPE="application/x-shockwave-flash" PLUGINSPAGE="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash"></EMBED> </OBJECT>

  • FlashでPHPページのポップアップ

    Flash8 actionscript2.0を使用しています。 flashのボタンを押したとき、javascriptを使い、PHPページ(変数も送る)のポップアップ表示をしたいと考えています。 通常のhtmlページだと、 Btn.onRelease=function(){ getURL("javascript:void(window.open('test.html','subWin','width=320,height=240'))"); } で表示出来ました。 又、PHPページの表示は Btn.onRelease=function(){ getURL("test.php?name="+escape(mozi)+"&tokuten="+suuti, "_blank"); } で別ウィンドウに表示できました。 ですが、javascriptの場合のアドレス部分にPHPのアドレス部分を入れてもうまくいきません。 おそらく、クォーテーション、ダブルクォーテーションなどが問題だと思うのですが・・・。 その辺のことがよく分かっていないので色々と試してみたのですが出来ませでした。 どうすれば表示させる事ができるでしょうか?よろしくお願いします。

    • ベストアンサー
    • Flash
  • PHPでGDライブラリを使って縮小した画像を直接表示したい

    PHPでGDライブラリを使って、「image.jpg」という画像(800x222のJPEGファイル)を、GETで渡した幅に縮小させたくて、次のように書きました。 -----reimage.php--------------------- <?php header("Content-Type:image/jpeg"); $old_width=800; $old_height=222; $width = htmlspecialchars($_GET['w']); $height = ($old_height / $old_width) * $width; $source = imagecreatefromjpeg("image.jpg"); $re_image = imagecreatetruecolor($width,$height); imagecopyresampled($re_image,$source, 0, 0, 0, 0,$width, $height, $old_width, $old_height); imagejpeg($re_image); imagedestroy($re_image); ?> -------------------------- 他のHTMLファイルから <img src="reimage.php?w=480"> などとすると縮小された画像が表示されるのですが、直接「reimage.php?w=480」を開くと、文字化けした文字列が並んでいるばかりで画像が表示されません。 firefoxでMIMEタイプを見てみると、「text/html」になっています。 >header("Content-Type:image/jpeg"); の部分がうまくいっていないのだと思いましたが、どう直せばいいのか分かりません。 なお、サーバーはxreaの広告免除を使っています。 まだPHPを勉強し始めて日が浅いので、見当違いなことを聞いているかも知れませんが、よろしくおねがいします。

    • ベストアンサー
    • PHP
  • PHP+MYSQLでページのカウントを取る方法

    会員ページでページビューを見たくて 下記のように作ろうとしていますが 表示をどのようにしたらいいか分かりません。 **カウントは取れています** テーブル count sn pagename access (フィールド) 1 001top 10 2 001a 13 3 001b 8 4 002t 23 5 002a 18 6 002b 20 このように入れて、表示は下記のようにしたいのです ID: 001 合計アクセス 31 topページアクセス 10 aのページアクセス 13 bのページアクセス 8 似たような質問が多くてスミマセン、 頭が固くて応用が利きません。。。 アドバイス、お願いいたします。 ちなみに、カウントを取るのは下記のようにしています カウントを取るページに以下を張る <IMG src="pgview.php?pagename=001t" height="1" width="1"> pgview.php <?php require_once("dbini.php"); $con = mysql_connect($DBSERVER, $DBUSER, $DBPASSWORD); $selectdb = mysql_select_db($DBNAME, $con); $sql = "update count set access = access + 1 where pagename = '$pagename'"; mysql_query($sql, $con); $con = mysql_close($con); ?> MYSQL ver4.0.26 PHP ver4.2.2

    • ベストアンサー
    • PHP
  • PHP工房 フリーフォーム⇒HPビルダー12へ

    PHP工房で無料のフォームをカスタマイズし、TeraPadは取り込んだのですが mail.phpをエディタソフトで開き、必要な設定を行う。の所から分からなくなりました。 フォームページ側を設定する。の所も全くわかりません。 どなたかお分かりになる方いらっしゃいましたら教えて頂けないでしょうか? 無知過ぎて申し訳ありませんが、宜しくお願い致します。

  • PHPの読解お願いいたします クラスについて

    独学でPHPを学んでます。 環境:XAMPPにて1.7.0でアパッチなど一括ダウンロード クラスについておおまかな概念は分かりますが、細かな点が多々わかりません。 下記コードをまずご覧ください。 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ <html> <head> <title> </title> </head> <body> <?php $test=new Figure(3,4); print "三角形の面積は"; print $test->getarea();● print "となります"; class Figure{ protected $width; △ protected $height;△ function __construct($width,$height){ $this->width=$width; $this->height=$height; } function getarea(){ return $this->width * $this->height;●● } } </table> </body> </html> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ まず私の解釈ですが、 コンストラクターでオブジェクトが作成される $width $heightにそれぞれ、3と4が格納。 クラス内ではメンバ変数を$thisであらわす必要性があることから、$widthと$heightをそれぞれ$this->width $this->heightにする。 ●で$test->getarea()を呼んでいるので●●の部分の計算が行われ、その値を再度$test->getarea()に返す。 以上になりますが、なぜかエラーが出ます。 どこに誤りがありますでしょうか。 また●の部分 $test->getarea()ですが、これは関数呼び出し文とはまた別のものなのでしょうか。もし関数呼び出し文であるなら、print表記は必要ないとは思うのです。また関数呼び出し文は文字列ではないので、""は必要はないとの理解でよろしいでしょうか。 さらに△の二行につき、このコード上での存在意義とはなんでしょうか。 以上、よろしくお願いいたします。

    • ベストアンサー
    • PHP
  • Dreamweaver+PHPの効率化、生成について

    初めまして、どうぞ宜しく御願いします 只今、PHP学習と並行して先日購入したDreamweaverMX2004を使いHTML&PHPの効率よく生成する事を独学して学んでいます。 そこで以下のようなプログラムを作ったときにDreamweaverのライブデータの表示機能について質問があります。 *------php1------* <?php $red = "赤"; $html = <<<__HTML__ <html><body> <table width="50" height="50"> <tr><td bgcolor="#FF0000">$red</td></tr> </table> </body></html> __HTML__; echo $html; ?> *----------------* *------php2------* <?php $red = "赤"; ?> <html><body> <table width="50" height="50"> <tr><td bgcolor="#FF0000"> <?php echo $red; ?> </td></tr> </table> </body></html> *----------------* PHPページを作る時『PHP1』のように変数にHTMLを入れてからechoして表示しているのですが、ライブデータの表示機能を使うとtableタグのwidthとheightの大きさは表示されていますが背景やHTMLの編集がデザインでできなくなってしまい、悩んでいます。 DreamweaverでPHPを作成する時の書き方は『PHP2』のように埋め込めて書かないと上手く表示してくれないのでしょうか?もし『PHP1』の書き方で考えられる対処法のしかたや、もっといい方法がございましたら是非お教えください。 又、皆さんがどのようにPHPの生成しているのかとても興味があります、もし宜しければ『こんな方法がある』『この機能が便利』などございましたらアドバイス頂きたいです、どうぞ宜しく御願い致します。 長文で解り難い文章でスミマセン、最後まで読んで頂いて有難うございます。

  • 私は、PHP開発環境として秀丸エディタを使い始めたのですが、PHP言語

    私は、PHP開発環境として秀丸エディタを使い始めたのですが、PHP言語の入力時に「ファイルタイプ別設定」で「Dreamweaverに似たPHP強調定義ファイル2」を適用し、PHP言語を強調表示にしたいと思っています。 しかし、設定のリストで新しく「PHPファイル」と作り、デザインの強調表示→読み込みで「php.highlight」を選択し適用するまでは自力でできたのですが、この状態の保存の仕方がわかりません。強制的に保存をしても、共通設定として保存されてしまいます。PHPだけに適用したまま保存をする方法はあるのでしょうか? あるのでしたら、その方法を教えてください。お願いします。 あと、同じく強調表示の「PHPまるごと強調表示 Ver1.0」は現在では使用できないのでしょうか?

    • ベストアンサー
    • PHP
  • PHP ファイルアップロードの縮小方法(比率)

    初めまして。PHP の初心者で勉強中なのですが、 ファイルのアップロードの際に確認として 画像を指定範囲に表示したいと考えています。 参考サイトで http://usualcms.net/contents/index/page/49/middle/201106/ で縮小する事ができ、 http://usualcms.net/contents/index/page/31/middle/201106/category_id/ で比率を変えずに縮小する関数の定義 とあるのですが、この二つを組み合わせて試行錯誤したのですが 行き詰まってしまいました。 <?php function getImgSize ($path, $new_width, $new_height) {        $size = array();        list ($getWidth,$getHeight) = getimagesize ($path);        $w = $new_height / $getHeight * $getWidth;        $h = $new_width / $getWidth * $getHeight;        //幅と高さの両方が指定より小さい場合        if ($getWidth <= $new_width && $getHeight <= $new_height) {                $size['new_width'] = (int)$getWidth;                $size['new_height'] = (int)$getHeight;        //幅が指定より大きい場合        } else if ($w >= $new_width && $h < $new_height) {                $size['new_width'] = (int)$new_width;                $size['new_height'] = (int)$h;        //高さが指定より大きい場合        } else if ($w < $new_width && $h >= $new_height) {                $size['new_width'] = (int)$w;                $size['new_height'] = (int)$new_height;        }        return $size; } if (isset($_POST['index_submit'])) {               $type = $_FILES['upfile1']['type'];               if ($type == 'image/jpeg' || $type == 'image/gif'                                                         || $type == 'image/png') {                       $ext = str_replace('image/', '', $_FILES['upfile1']['type']);                       $path = 'image.'.$ext;             move_uploaded_file($_FILES['upfile1']['tmp_name'], $path);            $new_width = 200;            $new_height = 200;             $new_image = imagecreatetruecolor ($new_width, $new_height);            if ($type == 'image/jpeg') {                            $image = imagecreatefromjpeg ($path);            } else if ($type == 'image/gif') {                            $image = imagecreatefromgif ($path);             } else if ($type == 'image/png') {                            $image = imagecreatefrompng ($path);             }             imagecopyresampled ($new_image,$image,                    0,0,0,0,$new_width,$new_height,                     $getWidth,$getHeight            );             imagejpeg ($new_image, $path, 100);             echo "<img src='".$path."' />";          } else {            var_dump ('error');  } } ?> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title></title> </head> <body> <form enctype="multipart/form-data" method="post"           action="<?php echo $_SERVER['PHP_SELF']; ?>" > <input type="file" name="upfile1" /><br /> <input type="submit" name="index_submit" /> </form> </body> </html> 定義したgetImgSize関数がうまく結びついていないのは自分でも分かるのですが、 getImgSize関数を機能させる方法がうまく分からず悩んでいます。 お分かりになる方からすればご指摘だらけかと思いますが、 お力を貸していただければ大変うれしく思います。 よろしくお願い致します。

    • ベストアンサー
    • PHP
  • 例えばhttp://www.***.com/bigfunman.htm

    を表示するときに http://www.***.com/bigfunman.htm を曖昧に次のように覚えていて http://www.***.com/?fun?.htm ?の部分がわからないときにどのようにie5のアドレス欄に入力してブラウザにそのページを表示することができるのでしょうか?

専門家に質問してみよう