Keep It Real BLOG

ソフトウェアエンジニア。1児の父。 酒、ラーメン、サッカー好き。旅行も好きですが、普段は出不精で大抵たまプラーザ界隈に居ます。

Web

send_mailやmb_send_mailでメールが届かない場合

単純にsend_mailでメールを飛ばすだけだと、セキュリティが強めの相手方のメールサーバには、スパムメール扱いされてしまって、メールが届かない場合があったりします。そういった場合は、メール送信側でちゃんと、ヘッダー指定してあげてとのこと。 $header…

PHPでサブドメイン間のクッキー情報受け渡し

サブドメイン間でクッキーの値を受け渡したい場合が有りますが、その時の対処で引っ掛かったので、メモしておきます。割りと処理自体は簡単で、クッキーを読み込む前に以下を指定。 ini_set('session.cookie_domain', ドメイン); // メインとなるドメインを…

自動的にパラメータを付加

PHPでsession.use_trans_sidを有効にすると、セッションのパラメータを自動的に付加してくれたりするけど、それと同じような動きをする関数があるんですね。 PHP output_add_rewrite_var('test', 'val'); HTML <input type="hidden" name="test" value="val" />PHP側で、上記のように書いてあげると、HTML側…

divでvalignをmiddleにする方法

divでvalignをmiddleに出来るということで、なかなか便利なので、メモ。HTML<div class="sample1"> <div> aaaa </div> </div>CSSdiv.sample1{}div.sample1 div{ display:table-cell; width:100px; height:100px; vertical-align:middle; }

スラッシュの入っていない日付を分割する場合

スラッシュ区切りになっている日付なんかを扱うことは多いのですが、スラッシュで区切られていない「20110606」みたいな日付を区切る場合に便利な関数が有って、何気に知らなかったのでメモ。 list($y, $m, $d) = sscanf("20110606", "%04d%02d%02d"); 他で…

strtotimeを使わずに、1ヶ月とか足す方法

strtotimeを使ってしまうと、月末に1ヶ月足したりすると、その翌月になってしまったりします。 ex:2012/01/31 + 1month ⇒ 2012/03/02その時の為の関数が以下。メモ。 private function calc_date($year, $month, $day, $addMonths) { $month += $addMonths; …

Facebookアプリ作成中のエラー

本日、Facebookアプリを作っていたら、エラーがいくつか出たので、メモ。 PHPで作っていたので、PHPでの例。#100 The privacy param cannot be applied when a target is specified.自分が作ったページのウォールに書き込みを使用とした時に出たエラー。 他…

XAMPP入れて困ったこと

今までXAMPPというものを特別使ったことがなかったので、導入した際に出た問題まとめ。

PHPで曜日の連結

DB内に保存されて日付データを連結するというプログラムが必要になったので、考えてみました。扱うデータは以下の感じ。 0,1,2,3,6 // 日,月,火,水,土 取得する関数は以下のようにしました。 // 曜日名取得関数 function get_day_names($ids) { $day_name = …

IE6以下でのhistory.back

リンクでhistory.back()を使用としたところIE6で動作しないとのことで、以下のようにreturn falseを足したら動作するようになりました。 <a href="javascript:void(0)" onclick="javascript:history.back();return false;">戻る</a>一応、忘れそうなのでメモ程度に。 ただし、入力された値は残っていない模様・・。

GoogleAnalyticsのデータを取得して、トップページなどに人気ページとして表示したい場合

トップページに人気ページの情報を取得して、表示する機会があったので、メモ。「Google Analytics API 」をPHPから便利に使えるクラスライブラリに書いてあるとおり、こちらよりライブラリを取得して、以下のコードで詳細ページの昨日のページビュー数が一…

GoogleMapのズームコントロールの目盛りを変更する。

メモです。GoogleMapのズームコントロールの目盛りを変更したい時、普通のマップならば、 G_NORMAL_MAP.getMinimumResolution = function(){return 1;} // 最小値 G_NORMAL_MAP.getMaximumResolution = function(){return 5;} // 最大値で出来るようになりま…

border-bottomが表示されない

IE8で、なぜかborder:1px solid #000000;とかで、下のborderだけが表示されない事態が起こった。解決方法としては、 position:relative; を追加したら、直りました。これでいいのか分からないですが、こういったブラウザ毎のバグは大変ですね。

Javascript エラーコード KB927917対処法

自身が作ったサイトをIEで確認していたら、「HTML Parsing Error: Unable to modify the parent container element before the child element is closed (KB927917)」のようなJavascriptエラーがたまに出てくるようになったので、対処した。このエラー原因はと…

PHPで文字列を一部省略する

文字を丸めたかったんですが、PHPにこんな関数あったんですね。 $str = "あいうえおかきくけこさしすせそ"; // mb_strimwidth( 文字列, 開始位置, 文字数, 追加文字 [,文字コード] ) $str = mb_strimwidth( $str, 0, 20, "..." ); // あいうえおかきく... ec…

Cache_Liteの配列

PEARのCache_Lite使用時の注意。配列のCacheの場合、Cache_Liteのインスタンス生成時のオプションには、 'automaticSerialization' => 'true' // 配列を保存可能に を指定しないといけない。その他のいろいろなオプションはこちら。

GPSで現在地取得

GPSで現在地を取得するプログラムを書く機会があったので、メモ。 PearのGPSのライブラリを使用しました。まずは、GPSの位置を取得する為のページへのリンク作成。 require_once("Net/UserAgent/Mobile/GPS.php"); try { $g = Net_UserAgent_Mobile_GPS::fac…

simplexml_load_fileを使ってYouTubeのサムネイルを取得

今回YouTubeのデベロッパーIDを取得して、PEARのライブラリを使わせてもらって、サムネイルを取得しようかと最初は思っていたんだけど、デベロッパーID作ったもののIDが有効でないみたいなエラーが出てしまったので、別方法で取得することにした。デベロッパ…

FireFox周り込み解除

あまりCSSとかいじる機会なくて、たまにやるといつもこれ忘れるので、メモ。 回り込みを解除するケツのところで、 &ltbr style="clear: both;" />

PEAR-Pagerのオプションonclick

今回、非同期でPagerを使いたいと思っていたところ、PEARのPagerの中にonclickというオプションがあることが分かったので、使ってみた。 最新のPagerのパッケージを取得 PagerのCommon.phpを直す Pager使用時にオプション追加 最新のPagerのパッケージを取得…

Ruby on Rails入れてみた

ほとんどはここのサイトを見てやりました。 ちょっと足らなかったファイルがあったりしたので、メモ。 ちなみにWindowsに入れたやり方をメモっておきます。まずはRubyを入れる・http://www.garbagecollect.jp/ruby/mswin32/ja/download/release.htmlから最新…

文字エンコーディングの検出

文字エンコーディングを検出する関数なんてあったんですね。初めて知りました…。使い方は、いたって簡単。 print_r mb_detect_encoding($str); また、配列をエンコーディングする関数ってのもあった。こちらも知らなかった…。 print_r mb_convert_variables(…

IP確認処理

IPのチェックを行うときに便利だったので、メモ。 サブネットマスクを用いたIP確認関数 サブネットマスクを用いたIP確認関数 /** * IPアドレス判定 * @param $check_ip:チェックするIP * @param $ip_addr_list:IPの配列 * @return boolean */ function ip_…

tableの隙間を取る方法

ちょっと今デザインでテーブルを使っていて、そのときtable枠を0pxにしたんだけど、なんだか1pxくらいの隙間が回りにできてしまって、CSSでそれを取り除く方法が分かったのでメモ。 table { border-collapse: collapse; border: none; border-spacing: 0; }…

PHPで404エラー表示

404エラーをPHPで表示する。これサイト終了とかしたときに使うのかな? header("Not Found", true, 404); exit;

Eclipse起動オプション

Web

ついつい忘れがちなことなのでメモ。-clean日本語パックを入れたのに、そのまま英語で表示したりする場合があるので、そんなときはEclipseのキャッシュ情報を初期化するのに使用。...\eclipse.exe -cleanJavaVMの指定Eclipse自体が使うJavaVMを明示的に指定…

iGoogle用ガジェットを作ってみた

ちょっとこれとは別のものを作ろうとしていたんだけど、いろいろ調べていたら今回のものが簡単に出来そうだったので、作ってみた。AmazonのゲームソフトのTOP10を表示するだけのガジェット。一応いろいろなハードを選択出来たりはします。表示するとこんな感…

list関数とeach関数を使って回す

foreachとかと同じなんですが、listとeach使ってvalueだけ取るときのやり方をメモ。 $arr = array('test1', 'test2', 'test3'); while( list(,$val) = each($arr) ) { print $val."<br>"; } これで、valueの値だけ取ってこれる。

defineのキーに変数使用

defineのキーを変数として取得したい場合があったんだけど、そのまま入れたんじゃ取れなかったので、どうすればいいのかなぁと思ってたらconstantとという関数があった。 以下みたいなことがしたかったので紹介。 define("TEXT_MAX", 100); $a= "text"; $val…

必要桁数まで0埋めする

ゼロパディングとかするときに使う。 なんか他にもそんな関数あった気がするけど、とりあえずメモ。 使い方は以下のとおり。 $val = "123"; $val = str_pad($val, 5, "0", STR_PAD_LEFT); print $val // "00123" 第四引数にSTR_PAD_BOTHと指定できるのは面白…