Kill one bird with two stones.

情報推薦、情報抽出を研究している大学院生の基本的にやったことのメモとか

基礎PHPchapter4でつまづいたところメモ

基礎PHP のchapter4でつまづいた所を
2004年発行の初版だから、版を重ねるごとになおってるかもしれないけど


主にchap4.3〜

環境は
Apache 2.2.17
MySQL 5.5.8
PHP 5.3.5
phpMyAdmin 3.3.9
FileZilla FTP Server 0.9.37
Tomcat 7.0.3 (with mod_proxy_ajp as connector)
まあ、XAMPPの最新版

phpmyadminで表4-6のようなフィールド構造を持つテーブルbook_tableを作成
そのとき照合順序を utf8_general_ci
に設定。

bauthだけ、bauthorに変更(基本的にこれは変更いらず)

P243 LIST 中の

$host="localhost";
if(!$conn=mysql_connect($host,"usr","passwd")){ 
	die("Mysql接続エラー"."</br>");
}
mysql_select_db("kisop",$conn);

設定をなにも変えてなかったので

if(!$conn=mysql_connect($host,"usr","passwd")){ 

if(!$conn=mysql_connect($host,"root","")){ 

に変更

ただ、このままじゃ日本語が文字化けするので

mysql_set_charset ('utf8') OR die ('Could not set the character set: ' . mysql_error() );
<||
>||
if(!$conn=mysql_connect($host,"root","")){ 

の次の文に追加
PHP: mysql_set_charset - Manual
によるとMySQL5.0.7以降でしか使えないようなので注意
このへんの文字セットの扱いで1時間悩んだ。


あとは、P249-P251あたりで
search_form,html
でtitleでデーター送ってるはずなのにフォームにデータがあるかどうかの判断を
btitleでチェックしてたりして
エラーがでてた。

echo('$sql);
<||