Sponsored Link

MySQLにユーザー認証をさせる

ファイルの準備

  • mysql.conf.php.exampleをmysql.conf.phpにリネーム
  • mysql.conf.phpを編集

SQLを実行

CREATE TABLE `users` (
  `uid` int(10) UNSIGNED NOT NULL AUTO_INCREMENT,
  `login` varchar(20) NOT NULL DEFAULT '',
  `pass` varchar(60) NOT NULL DEFAULT '',
  `firstname` varchar(255) NOT NULL DEFAULT '',
  `lastname` varchar(255) NOT NULL DEFAULT '',
  `email` varchar(255) NOT NULL DEFAULT '',
  PRIMARY KEY  (`uid`),
  UNIQUE KEY `login` (`login`)
) TYPE = MYISAM;
 
CREATE TABLE `groups` (
  `gid` int(10) UNSIGNED NOT NULL AUTO_INCREMENT,
  `name` varchar(50) NOT NULL DEFAULT '',
  PRIMARY KEY  (`gid`),
  UNIQUE KEY `name` (`name`)
) TYPE = MYISAM;
 
CREATE TABLE `usergroup` (
  `uid` int(10) UNSIGNED NOT NULL DEFAULT '0',
  `gid` int(10) UNSIGNED NOT NULL DEFAULT '0',
  PRIMARY KEY  (`uid`,`gid`)
) TYPE = MYISAM;
  • local.protected.phpに
<?php
require_once('mysql.conf.php');
?>

xreaの文字化け対策

inc/auth/mysql.class.php

$con = @mysql_connect ($this->cnf['server'], $this->cnf['user'], $this->cnf['password']);

という行の後ろに

mysql_query("SET NAMES utf8", $con);

を挿入

登録する

MySQLに切り替えると、ユーザーが空になるので、登録し直す。