PHP

PDOを使う際に注意というか、参考資料。

PDOにおける一応の安全宣言と残る問題点 | 徳丸浩の日記 http://www.king-of-bb.jp/sqlite/最初のblogは古い内容だけど、今でも十分参考になるはず。

PHPでSQLite3を試す

PHPでデータベースとしてSQLite3を使ってみる。 以前は慣れとか、仕事で使ってるレンタルサーバの関係で、SQLite3を使わずSQLite2を使う事が多かった。 久しぶりにお勉強再開ということで、今度は(なんとなく)SQLite3を使っている。 $db = new SQLite3("te…

ラピッドサイト、なかなか厳しいぜ

PHP

まぁ〜、あれがないこれがないとあれこれエラーが出まくって困るわ。 まずはSQLiteが使えないってことで、これはこのページで解決。 http://www.rapidsite.jp/support/manual/vps-sb/e_8815.html その次は PHP Fatal error: Call to undefined function hash…

メールエイリアスで受信して自動で処理させようとしたらエラーメールが帰ってくる

タイトルどおりの処理をしようと思って、あれこれ… 以前はサーバの都合やら時間の関係で、どっかのサイトのサンプルを参考にPOPで受信して、CRLF二個で分解して…とかやったんだけど、修正版はきちんとPEARのmimeDecodeを使うことにした。 サンプルで、mimeDe…

24時を超える時間…というか例えば48時間表記

データベースなんかに営業時間をセットするとする。 開始が20:00で終了が05:00だとする。 MySQLなんかだとADDTIME()で48時間表記が出来るっぽいけど、SQLiteにはないし、PHPも時間を時間として扱う限り、無理っぽい。 まぁ、この05:00を24時間足して29:0…

#!のリンクについて

PHP

http://d.hatena.ne.jp/kazuhooku/20101012/1286901973#20101012f1 ここに記載されているのをきっかけに、色々と検索してみました。 まずはGoogleから。 1. サイトで AJAX クロール スキームがサポートされていることをクローラーに伝えるAJAX サイトをイン…

Wordpressの余計なHTML整形機能を調べてみる

ヘルプされたので、ちょっと追いかけてみた。 Dreamweaver上で整えたHTMLをWordpressのページ編集画面にペーストすると、pやdivの閉じタグが勝手に挿入されて、画面が崩れるという現象が発生した。 Wordpressのエディタ上で、改行を削除したりすると解消され…

RSS1.0の場合

とりあえずRSS1.0の場合。まずはRSS自体を取得する必要があるので、こんなふう。 $xml_data = simplexml_load_file("http://d.hatena.ne.jp/u87/rss",'SimpleXMLElement',LIBXML_NOCDATA); 対象のURLは、このはてなダイアリー。 第二引数はいいとして、問題…

RSS取得方法を色々と考えてみているんだけど…

PHPにはsimplexml_load_file()という関数があって、引数にURLを設定すればRSSの取得は簡単。 しかし取得したXMLをパースする際に、例えば <dc:date>2010-11-29T19:24:54+09:00</dc:date> みたいな名前空間付きの情報が取得できない。*1 日付を取得する場合は以下のような指定方…

RSSを取得するには…

非常に今更な技術だけど、ブログの更新情報などを取得する…というハナシ。 で、どれでやるのが一番いいのかってことです。ユーザビリティというか、設定のしやすさみたいなことを考えるとHTMLをパースしてlinkタグからRSSのURLを取得するとかってことをして…

それは素朴すぎるだろう?

先週は、サンプルサイト作りをやってた。 まぁ、デモ用のサイトがあるので、そこに公開するためのものなんだけどね… 元々自分で作ったものじゃないから、解析するのが大変でした。 そもそもオリジナルの製作者の頭がウェブサイトやウェブアプリを作る用には…

Basic認証はcrypt()で?

PHP

昨日、私用で会社を休んだ。 今朝出社してみると、Basic認証がどーたらこーたらって話を聞かされた。 まぁ、そんな程度のことでゴタゴタするのもアレなんで、社内サーバにパスワード生成ページくらい作ってみるか?なんて思ったりした。 自分で作るならXAMPP…

cal_days_in_month()がなくても月の日数(もしくは末日)を調べる

PHP

今回はカレンダーを表示させたいんだけど、いざサーバにアップしたら… えぇ、phpinfo()を取得して、mbstringとかxmlとかで安心した僕がいけません。 だいたいcalendar supportがないってどういう意図なんだろうな。 自分が使いたいだけでこういうこと書くの…

つぶやきをXMLで取得できない…ときがある。

user_timelineを取得して、表示させるPHPを作った。 ローカルのXAMPP環境だとJSONが扱えたんだけど、テストサーバはダメだったんで、XML形式にした。 …ところが、取得の仕方が複数あることに気づいてしまった。 こうだ。 http://twitter.com/statuses/user_t…

phpizeを使うには…じゃなくて、yumで入れたPHPにsqlite2を追加する。

PHP

忘れないようにメモ。 社内で勝手に使ってるVMwareのOSがcentOS5なんだけど、phpでsqlite2が使えないので、インストールしようと思ったら、phpizeが使えなくてさ。*1 yum -y install php-devel こいつをインストールすることを忘れないように。 パッケージで…

SQLite2でクラス

色々あって、試しに作ってみることにした。DBクラスの作成 - bnote ここのmySQLのクラスを参考にして。 とりあえず、コンストラクタはこんなふうで。 class mySQLite { private $link_id; private $result_id; function __construct($filename){ $this->link…

画像をデータベースから取り出して表示する

PHP

タイトルの通り。 お客さんの環境にphpMyAdminが入ってるので、そういう前提でテストした。 phpMyAdminで、適当なテーブルを作る。例えば、こんなん。 CREATE TABLE image_tbl ( id int(11) NOT NULL AUTO_INCREMENT , img longblob NOT NULL ); phpMyAdmin…

--without-gd だと…!?

PHP

PHPで画像の上に文字を表示させようと思って、ローカルのXAMPP環境であれこれやってて、ふと本番環境ってどうなってんだっけ?と思って、随分前に取得したphpinfo()の内容を確認すると… ‐‐without-gd とか出てる。 当然、GDの項目はない。 あーあ… イマドキ…

忘れないように… - IEだけbmpでしか保存できない問題

すげー悩んだ。 session_start()時、session.cache_limiterで指定されたキャッシュの制御方法が送信されます。そのデフォルトがnocacheになっているので、勝手にno-cacheのヘッダー情報が送られていた、ということでした。 画像表示プログラムの最初にsessio…

カレントワーキングディレクトリ

PHP

要するに、require()でパスを指定するという話なんだけど… htdocs |-index.php |-inc | |-inc.php |-inc2 |-inc2.phphtdocs/index.phpの中で、htdocs/inc/inc.phpをrequire()してると想定します。 で、さらにそのinc.phpから、htdocs/inc2/inc2.phpをrequire…

$_ENVのハナシ

PHP

し…知らなかった…! さっき、ふと思い立ってphshを使おうとテカテカしてたら、$_ENV['HOME']が参照できませんがな!って怒られた。 getenv()推進キャンペーンを考えた - ゆどうふろぐ 問題なのはphp.iniのこれ。 variables_order="GPCS" これだと「GET」「PO…

JSONは生きていた

ページを開いたときに、表示すべきデータがあるかどうかチェックして、その結果に応じてSELECTの項目を作る。 データベースを用意するのが面倒なので、絶対に値を返すようにする。とりあえず形式はJSON形式で。まずはPHPから。 // テキトーだけど $first_arr…

Smartyを使ってみることにした

CMSみたいなことをしたいんだけど、そこであれこれと静的ページを生成したい。 別に動的ページにしてもいいんだけど、そこは色々あるんで。 個人的にはテンプレートエンジンを使う必然性というのはそれほど強く感じているワケではないんだよなぁ。 でも好き…

PHPとxml宣言とDreamweaverのお節介

PHP

いやはや… お仕事でWebサイトの構築があったのだけど、ディレクションが酷くて、サイトオープン当日に深夜まで残業するハメになった。 …というのはいいとして、困ったことがあったのでメモっとく。 ギリギリまで使用するサーバが判らず、ローカルでXAMPPを使…

PHPをアップグレードする。 - 5.1.6から5.2系へ

PHP

正直、5.3へ…とも思ったけど、とりあえずは5.2系にしておくことにした。元々復活させた古いVMwareで動かそうとしたのが間違いだったか? 要するにSQLiteが動かない。 正確にはSQLiteのバージョン2系なんだけどね。 php -iとか phpinfo(); で確認すると、「--…

あれぇ、文字化けするんだけど - PHPをCGIとして動かすとかバージョンが古いとかで、fgetcsv()とか。

Webチームから、以前自社が手がけたサイトの修正依頼がきた。 勿論、僕が一切関わってない仕事だ。 で、納品当時のデータを開いてみて、ビックリ! ぜーんぶ拡張子が「.cgi」ときたもんだ。 しかもソースは全部SJISで書かれてる。 XAMPPのローカルでどう動か…

「文字化けするんですけど」 その2

新規にサーバを設定するのが嫌…というか、面倒だったので、誰かのお古のVMwareを起動させました。 正常に動作する(っぽい)コンテンツがあったので、Apacheとかは正常なんだろうと判断。念のためのphpinfo()も表示されたので、あとはご自由に!と渡したら… …

XAMPP Liteを1.7.1から1.7.3へ

ZIPを自分で展開してインストールしているので、どうやって上書きしようかとあれこれ思案したけど、オリジナルをリネームして保存しておくことにした。 改めて色々と設定をしているので、それは改めてエントリにするとして、PHPでメールを送る場合の設定につ…

PHP6開発 UTF-16化を断念、5.3へロールバック | エンタープライズ | マイコミジャーナル…というニュース

PHP

PHP6開発 UTF-16化を断念、5.3へロールバック | エンタープライズ | マイコミジャーナル 内容は読んでいただければ、というところ。 元々は404 Blog Not Found:PHP6の文字コード実装、UTF-3に決定というブログ記事で見たんだけど… 実際に仕事で使うことを考…

実際に取得してみる

昨日分の記事で書いたとおり、名古屋市役所(460-0001)をJSON形式でリクエストした結果を取得して、バラしてみる。 // テストなので、決め打ち $url = "http://maps.google.com/maps/api/geocode/json?address=460-0001&sensor=false"; // レスポンスを取得す…