Hatena::Groupstudyroom

phaのPHPとか自習室 このページをアンテナに追加 RSSフィード

PHP(CakePHPとか)、JavaScript(AJAXとか)、MySQL、UNIX、Fireworksなんかを身につけたい><
2007 | 03 | 04 | 05 | 06 | 08 | 09 | 10 | 11 | 12 |
2008 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 12 |
2009 | 01 | 02 | 03 | 04 |
2010 | 01 | 06 |
2011 | 01 |

2007-04-30

勉強する予定

勉強する予定 - phaのPHPとか自習室 を含むブックマーク はてなブックマーク - 勉強する予定 - phaのPHPとか自習室 勉強する予定 - phaのPHPとか自習室 のブックマークコメント

  • ドメインの仕組み。それに関してレンタルサーバーについても。
  • なんかLANとか。複数の人が使えるようにとか、設定しなくても自動取得できるとかはどういうことかとか。
  • 写真とかバナーとかアイコンとか角丸とか使えるようになって、いかにもCSSっぽいデザインからの卒業
  • Preg_matchとか正規表現とかに慣れなければ。
  • XMLとXLSTとかについてもうちょい詳しく
  • HTTPというものについてもうちょい詳しく
  • JavaScriptを軽々使えるように

2007-04-28

PEARのインストールのしかたを覚える

PEARのインストールのしかたを覚える - phaのPHPとか自習室 を含むブックマーク はてなブックマーク - PEARのインストールのしかたを覚える - phaのPHPとか自習室 PEARのインストールのしかたを覚える - phaのPHPとか自習室 のブックマークコメント

PEAR :: Manual :: コマンドライン インストーラ

コマンドPEARの使い方 - よくきたWiki



基本

$ pear install <package>

なんかアルファ版とかだとバージョン名まで入れなきゃいけなかったりする

$ pear install --alldeps <PACKAGE>

依存しているものも全部インストールする(べんり)


アップグレード

$ pear upgrade <package>

エラー

No handlers for package.xml version 2.0が出る

FAQ - 頻出する質問

あなたの使用している PEARバージョンが 1.4.0 未満です。

そのパッケージインストールするには、 次のコマンドPEAR更新しなければなりません。

$ pear upgrade PEAR

Mac OS 10.4.8でPEARのアップグレードをしたいのですが - 人力検索はてな

Mac OS 10.4.8でPEARアップグレードをしたいのですが、

 $ pear upgrade PEAR

入力しても

 could not extract the package.xml file

 User Warning: Could not open dir /tmp/pearGNzZ2d in System.php on line 87

というメッセージが出てアップグレードできません。どうしたらよいでしょうか?


解決しました。

何故か理由は分からないのですが、

#pear upgrade -o http://pear.php.net/get/PEAR-1.4.11.tgz

と、直接バージョンを指定してやるとうまくインストールできました。何故なのかはわかりませんが・・・。

有難うございました。


入れたもの

  • XML_RPC
  • HTTP_Request

  • Services_Amazon
    • XML_Serializer

設定

httpd.conf

超簡単 Mac OS XのローカルでCGI (SSIもPHPも)

を参考に/etc/httpd/httpd.confを設定しなおす

php.ini

/etc/php.iniを設定する

2007-04-24

サーバーでPEARを使う

サーバーでPEARを使う - phaのPHPとか自習室 を含むブックマーク はてなブックマーク - サーバーでPEARを使う - phaのPHPとか自習室 サーバーでPEARを使う - phaのPHPとか自習室 のブックマークコメント

require_once('/var/www/html/pha/tools/pear/Cache/Lite.php');

PEAR呼び出した。

こんなに長く書かないとあかんのかな。PEARパス。自分で入れる場合は。


PEAR :: PEAR_Info()

http://www.pandora.nu/pha/tools/pear/

これは自分で入れたんは入ってないんか


S-MEMO(エスメモ): レンタルサーバーでPEARを使う方法

.htaccess使ったら、そんなに長く書かんでもできるみたいやで。

でも、上の奴の第一のやり方でやったらでけへんかった。

ini_set使ってもでけへんかった。なんかサーバで禁止してんのかも。

しゃあないな。PEAR:Cache_LiteとPEAR:AWSは使えない、と。

あっちのサーバなら使えるかもしらんしな。とりあえずローカルテストや。


.htaccessによるinclude_pathの変更につい

いろいろな場所で使うとき?

キャッシュを使いたい!!

キャッシュを使いたい!! - phaのPHPとか自習室 を含むブックマーク はてなブックマーク - キャッシュを使いたい!! - phaのPHPとか自習室 キャッシュを使いたい!! - phaのPHPとか自習室 のブックマークコメント

 いちいちデータを取ってくるのは重い!

 そんなにしょっちゅうデータ更新する必要ないからキャッシュで充分なはず!!!

 どうしたらいいんかな。


 PEAR使ったららくしょう。

$params = array(
	'cacheDir' => 'cache/',
	'lifeTime' => 3600*12,
	'automaticSerialization'=>TRUE);
$cache = new Cache_Lite($params);

'automaticSerialization'=>TRUEがみそですね。配列キャッシュしたいとき。

2007-04-23

スクレイピングまとめ

スクレイピングまとめ - phaのPHPとか自習室 を含むブックマーク はてなブックマーク - スクレイピングまとめ - phaのPHPとか自習室 スクレイピングまとめ - phaのPHPとか自習室 のブックマークコメント

正規表現をやればいいだけ。要するに。

正規表現まとめ

まずここは必見

preg_match_all( $pattern, $str, $match );

 $patternにPerlライクな正規表現、$strに検索する文字列が入っていると仮定して、配列である$machには実行後、キャプチャされた文字列が入ります。

返り値はなんだっけ? =>マッチした数

matchへの入り方に癖があるので注意。PREG_PATTERN_ORDER(デフォルト)とPREG_SET_ORDER。

PHP: preg_match - Manual

PHP: preg_match_all - Manual

2007-04-20

ブログ投稿スクリプト

ブログ投稿スクリプト - phaのPHPとか自習室 を含むブックマーク はてなブックマーク - ブログ投稿スクリプト - phaのPHPとか自習室 ブログ投稿スクリプト - phaのPHPとか自習室 のブックマークコメント

やるぞー

mokeheheの日記 - htmlからのフォームの受け取りでクォーテーションがエスケープされてる

http://d.hatena.ne.jp.//mokehehe/20070315/1173970401

PHPで受け取る場合、stripslashes() を使えば元に戻せる。

2007-04-18

PHPとJavaScriptの併用

PHPとJavaScriptの併用 - phaのPHPとか自習室 を含むブックマーク はてなブックマーク - PHPとJavaScriptの併用 - phaのPHPとか自習室 PHPとJavaScriptの併用 - phaのPHPとか自習室 のブックマークコメント

PHPの中にJavaScriptを書けばいいのかその逆なのかどっちなんだろう。

JavaScriptの中にって書いたけどなんかエラーになってる理由がわからない。

参考になるような関係ないような・・・

あとで読む。

2007-04-10

LANについて学ぶ

LANについて学ぶ - phaのPHPとか自習室 を含むブックマーク はてなブックマーク - LANについて学ぶ - phaのPHPとか自習室 LANについて学ぶ - phaのPHPとか自習室 のブックマークコメント

LANの意義は

など

ルータとは

1台しかパソコンがないならルータはいらない?

ハブとは

分岐させる?

だいたいルータハブ機能も持ってる

ブロードバンドルーターとは

必要機材

IPマスカレード=NAPT= Network Address Port Translationという仕組みで複数台同時接続を可能にしている。

市販のBBルータースイッチング・ハブを内蔵していてパソコン接続用に4ポート程度が用意されているけれど無線BBルーターではLAN側に1ポートしかない製品が多い。複数台接続したければクロスケーブルハブを用意ればよい。

NAPTまたはIPマスカレードとは

ネットワーク・アダプタを二つ装備している通信中継用オペレーターを雇います(コンピュータ端末)、片方のアダプタでは貸与される有料のIPアドレスを使いプロバイダネット)と通信を行います。そしてもう一方のアダプタではプライベートアドレスを使って家庭内のパソコンと通信します。

192.168.0.1とか

192.168.0.2とか

そういうのを内部で配布する人のこと?

モデムルータハブについて

モデム:WANとLANの間の変換をする人

ルータ:通信元・通信先とかのことを扱う人? パケットコントロールセンター論理的な調整?

ハブ:ただの分岐装置

無線LANについて

アクセスポイント(親機)とクライアント(子機)がいる。

ルーター機能付きアクセスポイントとかがある。

ADSLだけど無線LANはどうやって設置するの?

ADSL環境無線LAN製品を導入するには、現在ブロードバンドモデムからパソコンへ接続しているケーブルを無線LAN製品に接続するだけでOKだ。

繋げばいいだけみたい。

無線LANは何台のパソコンまで使えるの?

無線LAN製品には、DHCPサーバー機能を備える製品があり、これを利用すれば一般的な無線LAN製品で256台のパソコンと接続が可能だ。

へー

DHCPってなんだっけ

DHCPサーバーとは

ネットワーク

NetBEUIならインストールするだけで設定いらずなのですがTCP/IPの場合、家庭内LANのみの通信でも適切なIPアドレスサブネットマスクの指定が必要です。ネットに出て行くには更にデフォルトゲートウェイDNSサーバアドレスの値も必要となります。

パソコンの台数が多くなった時など一台づつ間違いなく設定するのは大変ですがLANの中に DHCPサーバーというものがあればこの設定作業をしなくても済みます。 DHCPサーバーとは常時稼動していてLAN内のどこかでコンピュータが起動した時に、そのネットワークで “通用するLAN設定”をすかさず自動配布するという仕事をするものです。

無線LANセキュリティ

無線LAN機器ならどれでももっているセキュリティはWEP(Wired Equivalent Privacy)と呼ばれるもの。WEPキーというパスワード無線区間の通信を暗号化します。また、WPA (WiFi Protected Access)というWEPの強化版も、最近の機器では選択できるようになってきました。

無線LAN導入

ルータに機器をつなげばいいの?

アクセスポイントって要するにハブ

わかりやすい

2007-04-01

URLエンコードについて

URLエンコードについて - phaのPHPとか自習室 を含むブックマーク はてなブックマーク - URLエンコードについて - phaのPHPとか自習室 URLエンコードについて - phaのPHPとか自習室 のブックマークコメント

概要

日本語(および特殊文字)はURLで使えないので変換しなきゃいけない

文字コード

文字コードがいくつもあるのが曲者です。

しかも検索エンジンによって違う。

らしい。

  • え、俺がPHPで作ったやつは何になるの? そのページのhtmlコード
    • なんかutf-8のつもりだけど何の処理もなく送ったらeuc-jpになってるぽい。。。
    • あれ、自分のマシンから送ったやつは何の処理もなしでutf-8
      • えー、FTPで何か変更してるとかそういうこと?
        • どっちにしてもきっちり指定したらOKか?

PHPではどうすればいいの?

方法は簡単で、$str = rawurlencode("田中") で $str には「田中」を URL エンコードした結果が格納されます。

え、この場合文字コードはどうなるの? 気にしなきゃいけないんでは?

あ、そうか。文字コードは、最初に日本語入力した時点で決まってるんだ。

そのサイトの指定の文字コードに。

rawurlencode()はそれを直してるだけ。

元は日本語ではなくコード日本人が同じものを入力しているつもりになっているだけ。

urlencode()とrawurlencode()の違い

urlencode( 文字列 )
urlencode()関数は、指定した文字列を、チルダ(~)、アンダースコア(_)、ドット(.)を除く、英数字以外の文字を”%+16進数”の形式に変換します。

また、空白は"+"に変換します。

rawurlencode( 文字列 )
rawurlencode()関数は、urlencode()関数とほぼ同じですが、空白を"+"に変換しない所が異なります。

http://www.php-ref.com/web/01_urlencode.html

rawのほうを使っときゃいいのかな?


JavaScriptではどうすればいいの?

◆EncodeURI(string) stringURIエンコードした値を返します。

例)var str=EncodeURI("http://漢字"); //str に "http://%E6%BC%A2%E5%AD%97" が代入される

◆EncodeURIComponent(string) stringURIエンコードした値を返します(/ , ? , # などもエンコードします)

例)var str=EncodeURIComponent("http://漢字"); //str に "http%3A%2F%2F%E6%BC%A2%E5%AD%97" が代入される

とりあえず俺のサイトでは

encodeURIしといたらうまくいってるみたいだけど、、、

また実はよくわかっていない。

疑問