终于我找到了一些时间来编程我自己的网站。问题是,它不承认我给他的桌子。我正在写一个基于SQL的留言簿。它正在登录到SQL平台,但根本没有得到数据库...我给他的名字是100%拼写正确!我试过在我的脚本中不使用$ mysql_select_db,但在“选择” - 声明&“插入” - 声明中命名数据库。也不起作用。 <PHP脚本无法识别给定的表
我这里还有我的脚本:
addguestbook.php
<?php
//******************************************************//
//********************Database stuff********************//
//******************************************************//
$host="localhost"; // Host name
$username=""; // Mysql username
$password=""; // Mysql password
$db_name="mywebsite"; // Database name
//********************Tables***************************//
$tbl_name="guestbook"; // Guestbook
if ($_SERVER['REQUEST_METHOD'] == 'POST'){
$name = $_POST['name'];
$email = $_POST['email'];
$website = $_POST['website'];
$comment = $_POST['comment'];
$datetime=date("y-m-d h:i:s"); //date time
// Connect to server and select database.
mysql_connect("$host", "$username", "$password")or die("cannot connect server ");
//mysql_select_db("$db_name")or die("cannot select DB");
$sql="INSERT INTO $db_name.$tbl_name(name, email, website, comment, datetime)VALUES('$name', '$email', '$website', '$comment', '$datetime')";
$result=mysql_query($sql);
mysql_close();
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
</head>
<body>
<table width="700" border="0" align="center" cellpadding="3"
cellspacing="0">
<tr>
<td><strong>Test Sign Guestbook </strong>
</td>
</tr>
</table>
<table width="700" border="0" align="center" cellpadding="0"
cellspacing="1" bgcolor="#CCCCCC">
<tr>
<form id="form1" name="form1" method="post"
action="index.php?mod=guestbook">
<td>
<table width="400" border="0" cellpadding="3" cellspacing="1"
bgcolor="#FFFFFF">
<tr>
<td width="117">Name</td>
<td width="14">:</td>
<td width="357"><input name="name" type="text" id="name"
size="65" />
</td>
</tr>
<tr>
<td>Email</td>
<td>:</td>
<td><input name="email" type="text" id="email" size="65" />
</td>
</tr>
<tr>
<td>Website</td>
<td>:</td>
<td><input name="website" type="text" id="website" size="65" />
</td>
</tr>
<tr>
<td valign="top">Comment</td>
<td valign="top">:</td>
<td><textarea name="comment" cols="65" rows="3" id="comment"></textarea>
</td>
</tr>
<tr>
<td> </td>
<td> </td>
<td><input type="submit" name="Submit" value="Submit" /> <input
type="reset" name="Submit2" value="Reset" />
</td>
</tr>
</table></td>
</form>
</tr>
</table>
<table width="700" border="0" align="center" cellpadding="3"
cellspacing="0">
<tr>
<td><strong><a href="viewguestbook.php">View Guestbook</a> </strong>
</td>
</tr>
</table>
</body>
</html>
viewguestbook.php
<table width="400" border="0" align="center" cellpadding="3" cellspacing="0">
<tr>
<td><strong>View Guestbook | <a href="guestbook.php">Sign Guestbook</a> </strong></td>
</tr>
</table>
<br>
<?php
//******************************************************//
//********************Database stuff********************//
//******************************************************//
$host="localhost"; // Host name
$username=""; // Mysql username
$password=""; // Mysql password
$db_name="mywebsite"; // Database name
//********************Tables***************************//
$tbl_name="guestbook"; // Guestbook
// Connect to server and select database.
mysql_connect("$host", "$username", "$password")or die("cannot connect server ");
//mysql_select_db("$db_name")or die("cannot select DB");
$sql="SELECT * FROM $db_name.$tbl_name";
$result=mysql_query($sql);
while($rows=mysql_fetch_array($result)){
?>
<table width="400" border="0" align="center" cellpadding="0" cellspacing="1" bgcolor="#CCCCCC">
<tr>
<td><table width="400" border="0" cellpadding="3" cellspacing="1" bgcolor="#FFFFFF">
<tr>
<td>ID</td>
<td>:</td>
<td><? echo $rows['id']; ?></td>
</tr>
<tr>
<td width="117">Name</td>
<td width="14">:</td>
<td width="357"><? echo $rows['name']; ?></td>
</tr>
<tr>
<td>Email</td>
<td>:</td>
<td><? echo $rows['email']; ?></td>
</tr>
<tr>
<td valign="top">Comment</td>
<td valign="top">:</td>
<td><? echo $rows['comment']; ?></td>
</tr>
<tr>
<td valign="top">Date/Time </td>
<td valign="top">:</td>
<td><? echo $rows['datetime']; ?></td>
</tr>
</table></td>
</tr>
<tr>
<td>Website</td>
<td>:</td>
<td><? echo $rows['website']; ?></td>
</tr>
<tr>
</table>
<BR>
<?
}
mysql_close(); //close database
?>
感谢您的帮助!
编辑:所述errormessage的:
警告:mysql_fetch_array()预计 参数1是资源,布尔 在 C中给出:\安德雷斯\ XAMPP-win32-1.7.4-VC6 \ XAMPP \ htdocs目录\ MyWorkspace \ MyWebsite \上线26
数据\ viewguestbook.php 我甚至把一些数据线到表手动,也不管用。
您是否可以使用任何错误消息更新答案? – Kev 2011-05-21 09:23:17
也许mysql不是由“/etc/init.d/mysqld start”启动的 – ibrahim 2011-05-21 09:25:33
我会更新它。 – JustBasti 2011-05-21 09:27:47