ahtry
2002-01-01, 01:19 AM
os-> FreeBSD 4.3 Apache-1.3.20 MySQL-3.23.39
主機IP:192.168.202.1
權限的設定如下:
(使用者權限)
使用者名稱 主機 編碼的密碼 權限
mysql localhost 無 選擇| 插入| 更新| 刪除
mysql 192.168.202.1 無 選擇| 插入| 更新| 刪除
(資料庫權限)
資料庫 使用者名稱 主機 權限
websql mysql 從主機權限 選擇| 插入| 更新| 刪除
websql mysql 192.168.202.1 選擇| 插入| 更新| 刪除
(主機權限)
資料庫 主機 權限
websql 192.168.202.1 Select| Insert| Update| Delete
websql localhost Select| Insert| Update| Delete
// ****database.func****
<?
function GetRows( $Database, $Query ) {
mysql_connect ("localhost", "mysql" , "");
$db = mysql_select_db( $Database ) or die("無法開啟資料庫,請確定您已經建立資料庫!");
$rows = mysql_query( $Query ) or die("SQL 指令錯誤,無法選取資料!");
return $rows;
}
function ConnectDatabase( $Database ) {
mysql_connect ("localhost", "mysql", "") or die("無法開啟資料庫,確定您已經建立資料庫!") ;
$db = mysql_select_db( $Database );
}
?>
// *****aduser.php*******
<?
function ShowMessage( $msg ) {
echo "<CENTER><H2>$msg</h2>
<HR>";
echo "<FORM><INPUT Type=Button Value=\"返回重填\" OnClick=\"history.back();\"></FORM>";
echo "</CENTER>";
}
function ShowMessage1( $msg ) {
echo "<CENTER><H2>$msg</h2>
<HR>";
echo "<FORM><INPUT Type=Button Value=\"回首頁\" OnClick=\"history.go(-2);\"></FORM>";
echo "</CENTER>";
}
// 檢查欄位是否留白
if ( empty($userid)) {
ShowMessage("使用者代號空白!");
exit;
}
if ( empty($password)) {
ShowMessage("密碼空白!");
exit;
}
if ( empty($password2)) {
ShowMessage("密碼確認空白!");
exit;
}
:
:
// 檢查兩次輸入的密碼是否一致
if ( $password <> $password2 ) {
ShowMessage("兩次輸入的密碼不一致!");
exit;
}
// 檢查此一 UserID 已有他人佔用
include("db.func");
$sql = "Select * From users Where userid='$userid'";
$rows = GetRows( "websql", $sql );
$num = mysql_num_rows($rows);
if ( $num <> 0 ) {
ShowMessage("此一「使用者名稱」已被佔用,請重新輸入!");
exit;
}
//輸入資料庫
$sql = "INSERT INTO users Values ( '$userid', '$password', '$name' , '$icq' )";
mysql_db_query("websql",$sql) or die ("query 失敗"); *執行到此出現query失敗
$msg="$userid 你已經成為本站的會員了!";
ShowMessage1($msg);
?>
為什麼可以檢查出UserID重複使用,但是沒有重複時,沒有辦法insert到資料庫堙H
在灌MySQL時有設定使用者 mysql,群組mysql。等級和匿名使用者相同。使用webmin時,都沒有問題。我到底是哪堻]定錯誤?
贊助商連結
主機IP:192.168.202.1
權限的設定如下:
(使用者權限)
使用者名稱 主機 編碼的密碼 權限
mysql localhost 無 選擇| 插入| 更新| 刪除
mysql 192.168.202.1 無 選擇| 插入| 更新| 刪除
(資料庫權限)
資料庫 使用者名稱 主機 權限
websql mysql 從主機權限 選擇| 插入| 更新| 刪除
websql mysql 192.168.202.1 選擇| 插入| 更新| 刪除
(主機權限)
資料庫 主機 權限
websql 192.168.202.1 Select| Insert| Update| Delete
websql localhost Select| Insert| Update| Delete
// ****database.func****
<?
function GetRows( $Database, $Query ) {
mysql_connect ("localhost", "mysql" , "");
$db = mysql_select_db( $Database ) or die("無法開啟資料庫,請確定您已經建立資料庫!");
$rows = mysql_query( $Query ) or die("SQL 指令錯誤,無法選取資料!");
return $rows;
}
function ConnectDatabase( $Database ) {
mysql_connect ("localhost", "mysql", "") or die("無法開啟資料庫,確定您已經建立資料庫!") ;
$db = mysql_select_db( $Database );
}
?>
// *****aduser.php*******
<?
function ShowMessage( $msg ) {
echo "<CENTER><H2>$msg</h2>
<HR>";
echo "<FORM><INPUT Type=Button Value=\"返回重填\" OnClick=\"history.back();\"></FORM>";
echo "</CENTER>";
}
function ShowMessage1( $msg ) {
echo "<CENTER><H2>$msg</h2>
<HR>";
echo "<FORM><INPUT Type=Button Value=\"回首頁\" OnClick=\"history.go(-2);\"></FORM>";
echo "</CENTER>";
}
// 檢查欄位是否留白
if ( empty($userid)) {
ShowMessage("使用者代號空白!");
exit;
}
if ( empty($password)) {
ShowMessage("密碼空白!");
exit;
}
if ( empty($password2)) {
ShowMessage("密碼確認空白!");
exit;
}
:
:
// 檢查兩次輸入的密碼是否一致
if ( $password <> $password2 ) {
ShowMessage("兩次輸入的密碼不一致!");
exit;
}
// 檢查此一 UserID 已有他人佔用
include("db.func");
$sql = "Select * From users Where userid='$userid'";
$rows = GetRows( "websql", $sql );
$num = mysql_num_rows($rows);
if ( $num <> 0 ) {
ShowMessage("此一「使用者名稱」已被佔用,請重新輸入!");
exit;
}
//輸入資料庫
$sql = "INSERT INTO users Values ( '$userid', '$password', '$name' , '$icq' )";
mysql_db_query("websql",$sql) or die ("query 失敗"); *執行到此出現query失敗
$msg="$userid 你已經成為本站的會員了!";
ShowMessage1($msg);
?>
為什麼可以檢查出UserID重複使用,但是沒有重複時,沒有辦法insert到資料庫堙H
在灌MySQL時有設定使用者 mysql,群組mysql。等級和匿名使用者相同。使用webmin時,都沒有問題。我到底是哪堻]定錯誤?
贊助商連結