為什麼我的資料庫無法新增1筆資料?



贊助商連結


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時,都沒有問題。我到底是哪堻]定錯誤?

贊助商連結


bx2aa
2002-01-01, 02:56 AM
確定資料庫 TABLE 建好了?

ahtry
2002-01-01, 04:28 PM
對呀!
不然如何檢查此一 UserID 已有他人佔用的功能.
可以執行 Select * From users Where userid='$userid'";
sql 語法