アクセスカウンタ
読者登録
メールアドレスを入力して登録する事で、このブログの新着エントリーをメールでお届けいたします。解除は→こちら
現在の読者数 0人
プロフィール
月読☆彡
オーナーへメッセージ
QRコード
QRCODE

2007年08月07日

addslashesによるエスケープ処理

PHP+MySQLで簡易掲示板を作っている際にフォームのコメント部分をaddslashesでエスケープしていたが、英数字を書き込んだ際に'(シングルクオート)などが使われていると\にて再度エスケープされてしまった。英数字だけかと思っていると日本語を入力した場合も突然エスケープされる時があった。困っているとこんな記事を発見。

『addslashesによるエスケープ処理はやめましょう』

mysql_real_escape_string()やpg_escape_string()等のデータベース専用のエスケープ関数を使えとある。
ちなみにSQLiteを使っている場合はaddslashesでエスケープ処理はNG。SQLiteではMS SQL Server, Sybaseと同様「'」は「''」とシングルクオートでエスケープする。

そこでaddslashesからpg_escape_string()に書き換えた所、今までエスケープ処理がうまくいかなかった英数字も問題なく書き込みできるようになった。

【参考URL】
yohgaki's blog  

Posted by 月読☆彡 at 13:19Comments(0)MySQL

2007年07月07日

URLに自動的にリンクを貼りたい!

掲示板などでテキスト中にURLがある場合、自動的にリンクを貼りたかったが、めっちゃハマったのでココに記述。。。

正規表現を使う事で自動リンクが可能。
この正規表現は全く意味のわからない記号が並んでるので理解できなーい!…のでココでは説明できません。。。
様々なブログやサイトで正規表現について解説されてるので検索して下さい。

今回したかったのはURLの正規表現。
あるサイトを参考にして文中にURLがあった場合自動的にリンクを貼るかテストしてみた。

…でけた…!!

しかーし!URLの中に『-(ハイフン)』があった場合そこからリンクが貼られないではないか!!

ちゅーことで色々なサイト作成者様のお力を借り、自分なりに書き直したのが下です。

<?php
$com = "元気ですかー!! http://www.sample-123.co.jp てすと";
$com = ereg_replace("(https?|ftp)(://[[:alnum:]¥+¥$¥;¥?¥.%,!#~*/:@&=_-]+)","¥¥1¥¥2",$com);
echo $com;
?>  

Posted by 月読☆彡 at 17:08Comments(0)PHP

2007年07月05日

html拡張子でPHPを実行

.htaccessを使用する。
※ロリポップでは使用可能。さくらインターネット不可。
Apacheを利用しているWEBサーバーで、「.htaccess」使用の許可があれば、この方法が利用できる。「.htaccess」は、サーバーの設定を変更できるファイルという風に考えればよい。
Apacheを使用していない場合は、この方法は使えない。
設定は、非常に簡単で「.htaccess」ファイルに、次のコードを記載してサーバーにアップロードするだけ。(.htaccessにおけるコメントの書き方は、perlと同じく「#」を使います。)
「.htaccess」というファイル名は、Windowsでは作成できませんので、「htaccess.txt」などというファイル名で作成し、アップロード後に変更すればOKです。

# 全てのPHPコードをHTMLのように作成する
AddType application/x-httpd-php .htm .html


これで、拡張子が「.html」と「.htm」のファイルの中に書かれたPHPスクリプトが実行されるようになります。
ロリポップでは、作成した「.htaccess」ファイルを設定したいフォルダにFTPでアップロードし、アップロード後、パーミッションを604に設定する必要がある。
また、「.htaccess」の設置されたディレクトリ、およびそのディレクトリ以下全てのディレクトリに対して、この設定が適用される。
例えば、 『 /abc 』 『 /abc/123 』 『 /456 』 『 /789 』 という4つのディレクトリが有ったとして、.htaccessを 『 /abc 』 に置いた場合、 設定が適用されるのは 『 /abc 』 『 /abc/123 』 の2つのディレクトリになる。

【参考URL】
デジットさんの生活便利サイト  

Posted by 月読☆彡 at 15:02Comments(0)PHP