画像掲示板プログラムの修正

画像掲示板の泉が荒らしを受けているといった話を先日ご紹介しました。

あれ以来、画像掲示板プログラムの修正を続けていましたが、突貫で作って放置していたプログラムなだけに、まともに動かなかったり、最初から全く機能していなかった部分も多数見つかりました。

YouTubeやニコ動貼り付けの不具合

特に不具合が目立ったのは、YouTubeとニコニコ動画の動画IDを投稿URLから抽出し、掲示板に貼り付けをするあたりでした。どうやらYouTube側、ニコニコ動画側の仕様変更があったこともあり、全然うまく動いてはいなかったようです。

imgbbs_dtn_2012.gif
当時の画像掲示板の泉ロゴ。目のロゴは怖いのでやめました。。

動画IDの抽出

YouTubeやニコニコ動画の動画URLにはパラメータが山ほどくっついていますが、そこから動画IDだけ抜き取らなければいけないので、これが少々厄介ではあります。

掲示板へ貼り付けする際、『sm00000000』や『v=XXXXXXX0XXX』といった動画ID部分を手できちんと切り取って入力するのは手間ですし、1文字間違えたら別の動画になってしまうので、正直運用には耐えそうにありません。

そこで、正規表現を使ってID抽出をやってみましたが、正規表現がいまいち慣れないので結構苦戦をしてしまいました。結果、あれこれやってこんな形にしたらうまく動きました。

YouTubeの場合はこのような感じ。

//YouTube
preg_match('@[&?]v=([^&]+)|be/(.+)$@',$URL, $match);
$movieaddr = $match[1];  //こちらは配列の[1]に

ニコニコ動画の場合は一旦URLから?以降を切り出した上、このような感じにしてあります。

//ニコニコ動画
$URL = preg_replace('/\?.*/','',$URL);	//?以降を先に削除
preg_match('/[a-zA-Z0-9]{8,10}$/',$URL, $match);
$movieaddr = $match[0];  //こちらは配列の[0]

抽出動画IDを使った掲示板埋め込み

動画IDをプログラムで正確に抜き取りができれば、掲示板のHTMLで表示をさせるのはIDはめ込んだコードを置くだけなので超簡単でした。下記のように縦横サイズも指定ができてしまいます。

$YouTube = ' embed src="http://www.youtube.com/v/' . $動画ID . '" type="application/x-shockwave-flash" wmode="transparent" width="横サイズ" height="縦サイズ" '

おわりに

サイト側で仕様の変更があったら即ダメになるでしょうが、とりあえず今のところは動いていそうです。サーバートラブルの影響もあり、アクセス数は減る一方の掲示板となり残念ですが、荒れた掲示板をメンテナンスし続ける手数もないので、しばらくは人がいない掲示板で置いておこうと思います。

ABOUT dtn.jp

この運営ブログをみてdtn.jpの運営サイトに興味をお持ちになった方は下記のリンク集からサイトをご参照ください。PHP・SQL・JS・HTML・CSSや様々なAPIでゼロから立ち上げたサイトを複数運営しています。

dtn.jp関連サイト

  • ディレクトリ型検索エンジンdtn大手サイトは全てサービスを終了し、中小でも運営を継続するところがほとんどなくなってしまったディレクトリ型検索エンジンを2002年から細々運営しており、未だに細かい機能改修も行っております。申請されたサイトは実際に訪問して細かく確認をしているので登録までかなりお時間いただきます。
  • 猫ネコサーチエンジン猫・ペットサイト専用のディレクトリ型検索エンジンです。登録サイトはサイトのスクリーンショット付きでカテゴリに掲載しています。
  • 画像掲示板の泉画像やYouTubeやニコニコ動画が貼り付け可能な匿名画像掲示板です。27ジャンルに分かれた掲示板に、それぞれ100スレッドまで立てることが可能です。
  • ツイータンTwitter APIを使って10分おきに収集したTwitter(ツイッター)のトレンドワードや人気ハッシュタグデータを月別に集計してランキング形式で公開しています。
  • Keyword Tool++Yahoo APIや楽天サイトのデータを日次で収集したデータを元に、EC系キーワードをラインキング形式でご紹介しています。各ワードは検索ボリュームや関連語、24か月の検索ボリュームトレンドを確認も可能です。
  • 消費者金融の泉カードローン商品を取り扱う金融業者を一覧で比較可能としたサイトです。カテゴリ別、人気度別、限度額別、金利別に比較可能なサイトにしています。
  • TrendinGファッションモールに出店するブランドをアイテムヒット率でランキングとしたサイトです。まだβ版です。

各サイトの開発方法などについて

各サイトの開発方法や運用トラブルについては、当ブログで不定期にご紹介しています。Twitterで新着記事のお知らせもしています。宜しければフォロー下さい。