FrontPage
initdb.phpのソースコード
<?php
require_once("config.php");
$dbh = mysql_connect(HOSTNAME,USERNAME,PASSWORD);
if($dbh != FALSE) {
if(!mysql_select_db(USERNAME,$dbh))
{
echo( "データベースが存在しません。" );
exit;
}
//MySQL4.1への対応
mysql_query("SET NAMES UJIS");
// 設定テーブルの作成
$result = @mysql_query( 'drop table b_settings;' );
$sqlstr = "create table b_settings (id INTEGER primary key,". // 管理用ID
" maintitle TEXT,". // ブログタイトル
" subtitle TEXT,". // ブログサブタイトル " maxtopics INTEGER,". // 最大表示トピック数
" username TEXT,". // ユーザー名
" passwd TEXT,". // パスワード
" mailaddr TEXT )"; // メールアドレス
# echo( "$sqlstr<br>" );
$result = mysql_query( $sqlstr );
if( $result == FALSE ) exit( "設定テーブルが作成できません<br>");
$sqlstr = "insert into b_settings values (1,'unknown', 'unknown', '20', 'unknown', 'unknown', 'unknown' )";
# echo( "$sqlstr<br>" );
$result = @mysql_query( $sqlstr );
if( $result == FALSE ) exit( "設定テーブルに書き込めません<br>");
// カテゴリテーブルの作成
$result = @mysql_query( 'drop table b_categories;' );
$sqlstr = "create table b_categories (catid INTEGER primary key AUTO_INCREMENT, category TEXT)";
# echo( "$sqlstr<br>" );
$result = @mysql_query( $sqlstr );
if( $result == FALSE ) exit( "カテゴリテーブルが作成できません<br>");
$sqlstr = "insert into b_categories values (1, 'General')";
# echo( "$sqlstr<br>" );
$result = @mysql_query( $sqlstr );
if( $result == FALSE ) exit( "カテゴリテーブルにアクセスできません<br>");
// 日記テーブルの作成
$result = @mysql_query( 'drop table b_webdiary;' );
$sqlstr = "create table b_webdiary ( topicid int PRIMARY KEY auto_increment, ". // トピックID
"lastupdate TIMESTAMP DEFAULT CURRENT_TIMESTAMP,". // 最終更新日時
"dt TIMESTAMP, ". // ポストされた日時
"fdelete int, ". // 削除マーク
"catid int,". // トピックのカテゴリID
"title TEXT, ". // トピックのタイトル
"body TEXT )"; // トピックの本文
# echo( "$sqlstr<br>" );
$result = mysql_query( $sqlstr );
if( $result == FALSE ) exit( "日記テーブルが作成できません<br>" );
$result = @mysql_query( 'drop table b_comments;' );
$sqlstr = "create table b_comments ( comid INTEGER primary key AUTO_INCREMENT, ". // コメントID
"topicid INTEGER, ". // コメントの親トピックID
"dtTIMESTAMP, ". // ポストされた日時
"ipaddr TEXT,". // コメントを投稿したリモートIPアドレス
"hostname TEXT,". // 同ホスト名
"comname TEXT,". // ポストした人の名前
"mailaddr TEXT,". // 同メールアドレス
"title TEXT, ". // コメントのタイトル
"body TEXT )"; // コメントの本文
# echo( "$sqlstr<br>" );
$result = mysql_query( $sqlstr );
if( $result == FALSE ) exit( "コメントテーブルが作成できません<br>" );
echo("テーブルの新規作成に成功しました");
mysql_close($dbh);
//管理画面初期表示
session_start();
$_SESSION['id'] = "unknown";
$_SESSION['pass'] = "unknown";
header("Location: admin.php" );
}
else echo( "データベースファイルの作成に失敗しました" );
exit();
?>