トップページや任意のページにテロップ・ニュースティッカー・ヘッドラインを流れる文字で表示するシンプルなPHPプログラムです。
Web上でブログ感覚で更新、管理できるCMSプログラムです。
ブラウザ上ですべて完結しますので更新効率アップが期待できます。
また直感的で簡単な操作なのでクライアント自身での更新も可能です。
htmlタグも入力可能です。(下記サンプルデモではセキュリティ上使用できません)
詳細は以下サンプルデモにてご確認下さい。
【2018/4/7追記】
スマホ対応を考慮してCSS3で実現したバージョンのファイルを同梱しました。必要に応じてご使用下さい。
(telop_CSS.php)
ユーザ名:admin
パスワード:13971397
※自由に登録、編集してみて下さい。
※以下に反映されます。最新のデータを確認するにはブラウザの「更新」を実行して下さい。
デフォルトのCSSはシンプルですが、CSSは自由に変更可能です。
日付、及び曜日を表示するかどうかも設定可能です。
携帯、スマホページにももちろん設置可能です。必要に応じてタグ、CSS等を変更下さい。
事前にご利用規約をご確認下さい。
クリックで自分のPCに保存して下さい。または右クリック⇒「対象をファイルに保存」
ファイルの文字コードはUTF-8です。必ず対応したエディタで開いてください。
メモ帳(UTF-8非対応)は使用禁止です。ファイルが壊れます。エディタソフトは特になんでもかまいませんが、TeraPad(無料)やDreamWeaver等で開いてください。必ずUTF-8のBOM無し(UTF-8N)で保存して下さい(いずれもデフォルトではBOM無しで保存されます)。
BOMについて詳しく知りたい方はこちら
※PHPではスラッシュ2回「//」の後からその行の末尾までがコメント扱いとなります。「#」、「/**/」もです。
ダウンロードしたzipファイルを解凍するとtelop01フォルダがあります。
赤字のファイルが触るファイルです。その他は基本的には触らずOKです。
青字はパーミッション変更が必要になるものです。(サーバによっては不要な場合もあります)
telop.php | テロップ表示本体ページです。実際には任意のページの任意の箇所に埋め込むことになります。 直接埋め込む場合には設置先のページの拡張子が.phpである必要があります。コピペ箇所はコメントにて指示があります。 既存のページが.htmlで、かつ変更できない場合にはiframeで表示して下さい。 見た目等はCSSで自由に調整して下さい。 iframeタグ例 <iframe src="telop.php" width="600" height="45" frameborder="0" scrolling="no"></iframe> |
---|---|
telop_CSS.php | ↑のtelop.phpのmarqueeタグではなくCSSのみで実現したバージョンです。(スマホでの表示も想定している場合等)CSS3に対応したブラウザである必要がありますが、PCでもIE、Firefox、Chromeなど現在の主要なブラウザはほぼ対応しています。(念のため複数の環境でチェックして下さい) |
┗ admin/ | |
┗ index.php | 管理画面です。登録や変更を行います。クライアントにはこのURLだけを教えることになるかと思います。 |
┗ include/config.php | 設定ファイル。管理画面ログイン情報の設定やその他設定を行えます。 エディタで開きコメントを参考に設定下さい。 |
┗ その他ファイル | すべて必要なファイルになりますが意識する機会はないと思います。特に触らずそのままアップ下さい。特に「copy.inc」は触らないで下さい。システム不具合が発生する可能性があります。 |
┗ data/ | データ保存用ディレクトリ(パーミッションを777等書き込み可能なものに) |
┗ data.dat | データを保存するファイル(パーミッション666等書き込み可能なものに) |
┗ backup/ | バックアップデータを保存するディレクトリ バックアップはオプションです。デフォルトはOFF。 (パーミッションを777等書き込み可能なものに) バックアップをONにすると新規投稿時にだけbackupディレクトリ内に「Backup_年月日時分秒_○○.dat」のファイル名で保存されます。古いものは自動で削除されます。保存期間は指定可能です。このあたりは設定ファイル内にも詳しく記述しています。 |
┗ css/ | 管理画面用のCSSです。 |
┗ js/ | 管理画面用のJavascriptファイルです。そっとしておきましょう。 |
admin/include/config.phpをエディタソフトで開き、「必須設定」の箇所を設定してください。
※メモ帳は使用禁止です。ファイルが壊れます。
特にログインID、パスワードの初期値は
ID:admin
パスワード:13971397
になっています。必ず変更してください。
その他必要に応じてコメントを参考に設定してください。
既存ページに直接埋め込む場合
telop.phpをエディタで開き、コメントを参考に既存ページにコピペして下さい。
既存のページの拡張子が.htmlの場合で直接埋め込みたい場合は拡張子を.phpに変更して下さい。
(拡張子が変わっても特に影響しませんが、XML宣言があるとエラーになりますのでご注意下さい)
また1サイト内で.html、.phpが混在していても問題はありません。
文字コードはデフォルトが「UTF-8」ですが、EUC-JP、Shift_JISでも可能です。
「UTF-8」以外の場合にはコピペ箇所に文字コードを指定する箇所がありますのでそちらで設定下さい。
iframeで表示する場合
テロップを表示したいページにiframeでtelop.phpを読み込んで下さい。
タグ例 <iframe src="telop.php" width="600" height="45" frameborder="0" scrolling="no"></iframe>
telop01フォルダの中の「admin」フォルダごとサーバーにアップし、上記でパーミッション変更が必要なファイル、ディレクトリのパーミッションを変更下さい。
テロップを表示するページと同じ階層にアップして下さい。
これで設置は完了です。
adminフォルダ名を変更したい場合には変更後、telop.php(または埋め込み先ファイル)の以下の箇所
include_once("admin/include/config.php");//設定ファイルの読み込み
こちらのパス「admin/」も変更下さい。1箇所だけです。
各パーミッションの適切な値はサーバーのマニュアル等を参考に変更下さい。
サーバーによっては値が違う、または変更の必要自体無いこともあります。
もしパーミッションの設定が間違っていた場合ですが、管理画面にてその旨警告が表示されるよう設定しています。逆にそのようなことがない場合は適切なパーミッションになっていると考えてOKです。
ちなみにエックスサーバーの場合、今のところパーミッション変更は不要です。
ブラウザで「あなたのサイトのURL」/admin/ を表示し、管理画面にログインし、登録を行ってみてください。正常に登録、編集できればOKです。
表示先ページもブラウザで確認してみて下さい。
登録データが反映されていればOKです。
設置するページやその他必要に応じてスタイルシート、HTML等で見た目の調整を行ってください。じゆ~です!
ソースコードをご覧いただけば分かるかと思いますが、細かくclassを振っておりますので基本的にはどのようなスタイルも可能です。
充分な検証は行っておりますが、配布直後は未知の不具合等が無いとも限りませんので、気になる点などがあれば遠慮なくお問い合わせ下さい。
また使用感などもいただけますとものすごくありがたいです!
デフォルトでは全ページ下部に著作権表示リンクがあります。
これらの著作権表示の削除には1サイトあたり2000円+消費税の使用料金が必要になります。
お支払いいただいた場合、この表示が削除されます。
2サイト目以降は都度料金が必要になります。
※すでに導入済みの場合でも問題ありません。システムと無関係のファイルをアップいただくだけです。
クレジットカードでのお支払いはこちら
(完全自動化によりクレジットカード払いの場合、決済完了後即ダウンロード可能です。手数料無し)
十分な検証は行っておりますが、リリース直後は未知の不具合が無いとも限りません。もし不具合などを発見されましたら遠慮なくお問い合わせ下さい。不具合かどうか分からないようなものでも遠慮なくお問い合わせ下さい。
お問い合わせはこちら
不特定多数(たとえばサイト訪問者)の人間が登録できるような運用は想定しておりません。
関係者のみがログインを行って登録下さい。※管理画面(+ID、パスワード)は決して公開しないで下さい。
これは入力部分にhtmlタグを使用できるようにしているためです。
第三者が悪意のあるコードを埋め込んだ場合、脆弱性が発生します。
このプログラムは文字のアニメーションにはmarqueeタグを使用しています。このタグは現在非推奨タグで将来的に廃止される可能性がありますので出来る限りCSSでの対応をオススメします。
あくまで推測ですが、この件については相当以前から言われていることですが、実際には廃止されていません。
下位バージョン互換の問題もあるため、完全に廃止されることは現実的には無いのではとも考えております。または相当年後であるかと思います。
ただ出来る限りCSSなどで対応されたほうが良いでしょう。ただ問題はすべてのブラウザで同じ挙動にすることが難しいというのがあります。そのためひとまず配布版には実装しませんので、設置される方が設置するページに合わせてご対応いただければと思います。ちなみにjQuery等でも実現可能です。
※「marquee css」などで検索すれば参考になるサイトがたくさん見つかります。
※ただし、ガラケーはCSS非対応です。
【2018/4/7追記】
CSS3で実現したバージョンのファイルを同梱しました。必要に応じてそちらをご使用下さい。(telop_CSS.php)
PHP4.3.9~PHP8.1
その他一般的なレンタルサーバーであれば問題なく動作するはずですが、
すべての環境(サーバー)での動作を保証するものではありませんのでご了承下さい。
問題が出る可能性が高い、またはそのままでは必ず問題が出ることが分かっているサーバー
※現状私自身が把握している範囲です。(実際に確認していますのでちゃんと根拠もあります)
1,Yahoo系(ジオプラス、ウェブホスティングとも)※Softbankも含む
2,KDDI系(CPI含む)
3,NTT系(WebArena(suiteX)、NTTビズリンク(BizLink))
※プロバイダー系は特に問題が多いです。(個人的には絶対に借りてはいけないと考えています)
4,スマイルサーバー
5,ファーストサーバ
特にCPI、NTT系、スマイルサーバー、ファーストサーバで問題がある場合はこちらも参照下さい
経験上、結局は「餅は餅屋です」。プロバイダー系はプラン、金額に関係なく特に問題が多いです。サーバーの問題で時間を取られるのは非常に無駄ですし、その先ずっと影響しますのでサーバー選びは慎重にされることをオススメします。
特に理由がなければあえてこれらのサーバーは借りないほうが得策でしょう。高いから良い、安いからダメという安易なものでもありませんので難しいところですね。(まぁ安いには安いなりの理由があるのですが・・)
HTMLやCSSなどをある程度理解されている方を対象としています。
カスタマイズ方法などのサポートは行っておりませんのでご了承ください。
修正方法などに関するサポートは有料にて承ります。
管理人1人で運営していますので。。。
設置の際の不明点や気になった点、不具合等があれば遠慮なくなんでもご連絡ください。
カスタマイズ(改造等)方法などのサポートは行っておりません。
カスタマイズや仕様変更、設置代行などは2,000円~の有料にて承ります。
・無料版プログラムはフリーウェアです。ただし、著作権は放棄するものではありません。
・プログラムの著作権表示リンク(ページ下部にある当サイトへのリンク)を無断で削除することはできません。
(一律2,000円+消費税の削除依頼をいただいた場合を除く)
・プログラムの再配布、再販売は禁止です。
※ただしクライアントへの納品などでシステム費用、設置費用として請求されるのは問題ありません。
・プログラムによって何らかの不利益、損害が生じても一切の責任を負いません。
あらかじめご了承の上ご使用ください。
もし何らかのトラブルがあった場合には、ご相談いただければ解決策が見つかるかもしれません。
(クライアントへの原因の説明など)
・プログラムは全ての環境(サーバー)での動作を保証するものではありません。
・改変等は自由ですが、自己責任でお願いします。
・有料版をご購入いただいた場合、初期不良を除き、ご使用後の返金には応じ兼ねます。
・有料版(著作権リンク削除含む)は1サイト(同一ドメイン)内であれば複製の上で複数利用可能です。
2サイト目以降は都度サイトより購入申込みが必要になります。
※サブドメインはその性質上、別サイト(別ドメイン)とみなします。
ダウンロードいただいた時点で利用規約に同意したものとみなされます。
2021.05.20 v1.0.2リリース
管理画面における反射型クロスサイトスクリプティングの指摘と修正方法について
-- 脆弱性に該当する製品名およびバージョン
※ver.1.0.0~ver.1.0.1
(バージョンはadmin/include/config.php内の上部に記載しています)
確認済対象ブラウザ:(Firefox/Chromeで確認)
-- 脆弱性の内容
管理画面にアクセスしたユーザーを悪意のあるページに誘導することで、ウェブブラウザ上で任意のスクリプトが実行される可能性。
この条件が成立するには管理画面にログインしている管理者を特定のページに誘導する必要があることから、実際に発生する可能性は限りなく低いと思われます。これまでに実害の報告などは届いておりません。
ただ念の為、下記手順にて修正を行なっていただければと思います。
-- 脆弱性への対応方法と適用方法
最新版をダウンロードの上でadmin/内直下にあるedit.phpのみを差し替えていただくか、
または以下手順で修正を行なってください。
admin/内直下にあるedit.phpの15行目の以下の箇所。
※ファイル内で1箇所しかありませんので間違うことはありません。
$id = (!empty($_GET['id'])) ? $_GET['id'] : exit('ページ遷移エラー');
↓以下のように修正いただくか、そのままコピペください。
$id = (!empty($_GET['id'])) ? h($_GET['id']) : exit('ページ遷移エラー');
※「$_GET['id']」をh()で囲むだけです。
以上、これだけです。念の為、管理画面で更新などの操作を行なってください。
特に問題がなければ完了です。もし万が一問題が発生した場合は戻していただくか、お問い合わせください。
-- 謝辞
apple502j様並びに情報処理推進機構 IPA様、JPCERT/CC 脆弱性コーディネーショングループ様にはこの場を借りて感謝申し上げます。
2021/03/16 スマホ表示用としてCSS3でのスクロールとしたtelop_CSS.phpで文字の長さによっては全文が表示されない問題が発覚したためのhtml、CSSを修正しました。
2020.07.30 v1.0.1リリース
認証不備の脆弱性の指摘と修正方法について
-- 脆弱性に該当する製品名およびバージョン
※ver.1.0.0
(バージョンはconfig.php内に記載しています)
確認済対象ブラウザ:(Firefox/Chromeで確認)
-- 脆弱性の内容
特定の条件下において、遠隔の第三者に管理者権限で当該製品にログインされる問題。
この条件が成立するには第三者があなたのサイトのサーバー上に無断でファイルを設置する必要があることから、この問題が実際に発生する可能性は限りなく低いと思われます。これまでに実害の報告などは届いておりません。
ユーザーにとって利便性が良いため、あえてそうしていたということもありますので、
非常に判断が難しいものでしたが、今回の指摘を真摯に受け止め、また利便性よりも安全性を優先するという判断としました。
-- 脆弱性への対応方法と適用方法
以下手順で修正を行なってください。
1,admin/内直下にある6つのPHPファイル(index.phpやregist.php)をエディタソフトで開いていただき、
「session_start();」を見つけて下さい。(ファイル内に1箇所しかないため検索すればすぐに見つかります)
2,この「session_start();」の上に以下1行をコピペして下さい。
※「PHPSystem」部分の文字は変更して下さい。英数字のみとして下さい。
例
session_name('PHPSystem123');
session_start();
※順番に注意して下さい。必ずsession_start();の上に追加下さい。
以上、これだけです。
もしすでに「session_name()」がある場合はすでに対策済のバージョンですので変更不要です。
尚、当サイトの管理画面があるプログラムを複数設置している場合で一度のログイン認証で相互に行き来出来たほうが良い場合はsession_nameの文字列を同じものとして下さい。
-- 謝辞
ご報告いただきました「三井物産セキュアディレクション株式会社 東内様」、
並びに情報処理推進機構 IPA様、JPCERT/CC 脆弱性ハンドリングチーム様にはこの場を借りて感謝申し上げます。
2018/04/07 スマホでも問題なく表示できるようmarqueeタグではなくCSSのみで実現したファイルを追加しました。 (telop_CSS.php)
2014/12/7 Beta版としてフリー版のプログラム配布を開始