リモート Linux サーバー上にある 2 つの .txt ファイルからの情報を自動的に入力するテーブルを持つ HTML ページを作成したいと考えています。または、そのリモート サーバーの html ページにこれら 2 つの .txt ファイルからの同じ情報を入力し、Apache の Web サーバーを使用してその html ページにアクセスします。
できるだけ基本的なものがあればいいのですが、html で行うのが複雑かどうかは理解できます
正直なところ、どんな助けでもいいでしょう。
リモート Linux サーバー上にある 2 つの .txt ファイルからの情報を自動的に入力するテーブルを持つ HTML ページを作成したいと考えています。または、そのリモート サーバーの html ページにこれら 2 つの .txt ファイルからの同じ情報を入力し、Apache の Web サーバーを使用してその html ページにアクセスします。
できるだけ基本的なものがあればいいのですが、html で行うのが複雑かどうかは理解できます
正直なところ、どんな助けでもいいでしょう。
私は個人的にそれを行いPHP
ます。ファイルとecho
それをテーブルに読み込むことができます。その後、ファイルの行を必要に応じて使用できます。各ステップの説明にコメントを入れています。$filepath
テキスト ファイルを指すように変更するだけです。
編集済み:コードを編集して、OG ポスターがコメントで言及した制約を追加しました。おそらく、タスクを実行するためのより最適化された方法がありますが、これは機能し、PHP を初めて使用する場合は新しい概念を紹介するはずです。
<?php
$filepath = 'files/the_file.txt';
if (file_exists($filepath)) {
$file = fopen($filepath, 'r');
echo '<table border=1>';
while (!feof($file)) {
$line = fgets($file);
$first_char = $line[0];
if ($first_char != '*' && $first_char != '^' && trim($line) != '') {
if (strstr($line, '|')) {
$split = explode('|', $line);
echo '<tr>';
foreach($split as $line) {
echo '<td>'.$line.'</td>';
}
echo '</tr>';
} else {
echo '<tr><td>'.$line.'</td></tr>';
}
}
}
echo '</table>';
} else {
echo 'the file does not exist';
}
?>
スクリプトをコメントであふれさせるのではなく、行ごとに説明するように最善を尽くします。
<table>
')explode
| のすべての位置で行を分割 ( ) します。文字。この分割されたコンテンツの配列を使用し、コンテンツの各部分についてecho
、現在のコンテンツを含む既存の行に新しい列を作成します。そうでなければ | はありません。見つかったので、通常どおり行をエコーすることができます</table>
')編集#2:投稿した元のソリューション:
<?php
$filepath = '/var/www/files/the_file.txt';
if (file_exists($filepath)) {
$file = fopen($filepath, 'r');
echo '<table border=1>';
while (!feof($file)) {
$line = fgets($file);
echo '<tr><td>'.$line.'</td></tr>';
}
echo '</table>';
} else {
echo 'the file does not exist';
}
?>
HTML を動的に作成するのではなく、事前に作成できる場合は、これらのいずれかが役立つ場合があります。これらのスクリプトは CSV を入力として受け取り、HTML テーブルを出力します。
HTML は何もできません。HTML はプレゼンテーション形式です。
PHP、Javascript、BASH は、非常に異なる方法で仕事を行うことができます。
PHP : サーバーは 2 つのリモート ファイルを呼び出し、組み立てられた html ファイルを Web ページに出力し、それをクライアントに送信します。
Javascript : ページ自体が 2 つのファイルを呼び出し、それ自体に追加します。