よく利用するphpのコードを 自分用のメモに載せておきます。 よかったら使って下さいまし。

2009/101234567891011121314151617181920212223242526272829302009/12

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
phpmyadminで日本語を利用して表示する方法

1.デフォルトキャラクタセットを指定する(ここではutf-8の例です)

ALTER DATABASE `DB名` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci

2.次にデータベース接続後(テーブル接続前)に次の1文を挿入

mysql_query("SET NAMES utf8");

php5.2.3以降であれば下記の方がセキュリティの関係上よいらしいです。
mysql_query("SET NAMES utf8");の部分を
mysql_set_charset(utf8);へ変更


以上の手順で日本語での書き込み、読み込みができるようになると思います。
uniqidではなく独自の形式でユニークIDを取得したい場合
作成したものをDBに存在するかチェックして入れることで実現

$uniqid = ""; // ID取得用の変数
$overlap = ""; //重複チェック用
while(!$aid && !$overlap){

//接頭にアルファベット1文字追加
$setkey=array('a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z');
$prefix = rand(0, count($setkey)-1);
//接頭処理ここまで

$uniqid = $setkey[$prefix];

//8桁の数値を付加
for($i=1;$i<9;$i++){
$uniqid.= rand(0,9);
}

$sql_aid_check = "SELECT * FROM table where フィールド名 = '$uniqid'";
$result_aid_check = mysql_query($sql_aid_check);
$result_aid_check_count=mysql_num_rows($result_aid_check);

//uniqidが存在しなければ重複フラグをチェック

if(!$result_aid_check_count){
$overlap = 1;
}
}
//画像のリサイズ
$size=getImageSize($uploadfile); //画像サイズを取得
$newwidth = "600";
$newheight = "450";
$thumb = imagecreatetruecolor($newwidth, $newheight); //画像サイズを指定
$source = imagecreatefromjpeg($uploadfile); //元の画像を読み込み
ImageCopyResized($thumb,$source,0,0,0,0,$newwidth,$newheight,$size[0],$size[1]);

// header('Content-type: image/jpeg'); //表示の場合はこちらを利用
// imagejpeg($thumb); //表示の場合はこちらを利用
imagejpeg($thumb, $uploadfile . ".jpg");//これでサーバへ保存
レンタルサーバだと設定によってhtml内でphpが使えたりつかなかったりする。

そこで.htaccessを操作してhtml内でphpを使えるように設定する方法を掲載しておきます。

使いたいフォルダの中で.htaccessファイルを作成します。
.htaccessの中には

#----------------
RemoveHandler .html
AddType application/x-httpd-php .html
#----------------

を書いてアップします。

htmlファイルの中にはそのままphpのファイルを入れておけばOKです。
データベースを作成してcreate tableでエラーが出る場合以下のものを試してみる。

ALTER DATABASE `DB名` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci

mysqlのバージョンによっては
デフォルトのキャラクターセットが設定されていないとできない場合があるようです。