【求助】mysql無法寫入



贊助商連結


lych
2003-09-20, 10:56 AM
作業系統RH9
httpd-2.0.47
php-4.3.2
mysql-4.0.14
安裝方法
"apache"
tar zxvf httpd-2.0.47.tar.gz
cd httpd-2.0.47
./configure --prefix=/usr/local/apache2 --enable-so --enable-rewrite
make
make install

"mysql"
tar zxvf mysql-4.0.14.tar.gz
cd mysql-4.0.14
./configure --prefix=/usr/local/mysql --localstatedir=/usr/local/mysql/data
make
make install

"php"
tar zxvf php-4.3.2.tar.gz
cd php-4.3.2
./configure --prefix=/usr/local/php4 --with-apxs2=/usr/local/apache2/bin/apxs \
--with-mysql=/usr/local/mysl \
--with-config-file-path=/usr/local/php4
make
make install

一開始是用tar安裝的,安裝好後將該修改的組態檔改好都可以執行無錯誤訊息
進入mysql建立好資料庫跟資料表,接著將書上光碟裡的留言版網頁給放上
輸入留言資料後,卻無法將資料給寫進資料庫裡
我就進到mysql用insert指令,但這樣可以輸入到資料庫內
接著又到留言版網頁看,此時可以顯示我剛所輸入的內容
因為這問題我一直找不出原因,所以我就重裝系統
直接用系統內的apache+php+mysql
版本為
apache-2.0.40-21
php-4.2.2
mysql-3.23.54
裝好後也都可以正常執行,但是還是發生相同的問題
書上的程式碼如下
<?
//將留言內容存入資料表
if (!empty($name) and !empty($content)) {
$link_ID = mysql_connect("localhost","root","mypasswd"); //連接Mysql伺服器
mysql_select_db("bc_book"); //指定使用資料庫
$content=addslashes(nl2br($content));
$str="INSERT INTO board (name,email,time,content)
VALUES
('$name','$email',NOW(),'$content')";//查詢字串
mysql_query($str,$link_ID); //送出查詢
mysql_close($link_ID); //關閉資料庫連接
}?>

<form action="board.php" method="post">
大名:
<input type="text" size=5 name="name">
電子信箱:
<input type="text" size=15 name="email">
留言內容:
<textarea rows=5 cols=50 name="content"></textarea>
<input type="submit" value="留言">
<input type="reset" value="重新輸入">
</from>
<h2 align="center">留言版</h2>
<?
//顯示留言版內容
$link_ID = mysql_connect("localhost","root","mypasswd"); //連接Mysql伺服器
mysql_select_db("bc_book"); //指定使用資料庫
$str="SELECT * FROM board ORDER BY sn DESC;";//查詢字串
$result=mysql_query($str,$link_ID); //送出查詢
mysql_close($link_ID); //關閉資料庫連接
$l = mysql_num_rows($result); //查詢結果的記錄筆數
for ($i=1;$i<=$l;$i++){
//顯示記錄的內容
list($sn, $name, $email, $time, $content)= mysql_fetch_array($result);
echo "第$sn 個留言由<a href=\"mailto:$email\">$name</a>在$time 留下,留言內容為:";
echo "<br><br>"; echo $content; echo "<hr>";
}
?>

上面的問題請教知道的拜託幫幫忙解惑,或者是有哪裡需要修改的拜託指導一下,感激.....

贊助商連結


ezboy
2003-10-04, 12:23 PM
$str="INSERT INTO board (name,email,time,content)
VALUES
('$name','$email',NOW(),'$content')";//查詢字串
-------------改--------------------------------------
$str="INSERT INTO board (name,email,time,content)
VALUES
('$_POST[name]','$_POST[email]',NOW(),'$_POST[content]')";//查詢字串

ahome
2003-10-04, 02:32 PM
RH9不是就已經內建了mysql了?

gidrdano
2003-10-05, 11:13 PM
你會自己寫判斷程式嗎?可以測試有無連上資料庫了...
$link_ID = mysql_connect("localhost","root","mypasswd"); 這行程式中的密碼跟帳號不知有沒有問題,確認一下你的mysql中root的密碼是不是mypasswd