连接到 wamp 服务器
Posted
技术标签:
【中文标题】连接到 wamp 服务器【英文标题】:Connect to wamp server 【发布时间】:2013-08-09 12:24:41 【问题描述】:我不断收到错误消息:
致命错误:在第 46 行对 C:\wamp\www\Website\index.php 中的非对象调用成员函数 execute()
下面是我的代码。可能出了什么问题?我现在只是使用股票 root 帐户。
<?php
$dbserver="localhost";
$username="root";
$password="";
$connection=mysql_connect("$dbserver","$username","$password")or die("could not connect to the server");
//execute an SQL statement and return a recordset
$rs = $connection->execute("SELECT product_name FROM products");
$num_columns = $rs->Fields->Count();
echo "<table border='1'>";
echo "<tr><th>Name</th></tr>";
while (!$rs->EOF) //looping through the recordset (until End Of File)
echo "<tr>";
for ($i=0; $i < $num_columns; $i++)
echo "<td><a href=\"product.php?id=" . $rs->Fields('id').value . "\">" . $rs->Fields($i)->value . "</a></td>";
echo "</tr>";
$rs->MoveNext();
echo "</table>";
//close the recordset and the database connection
$rs->close();
$rs = null;
$conn->close();
$conn = null;
?>
【问题讨论】:
第 46 行在哪里?这是index.php吗? 【参考方案1】:函数mysql_connect
返回一个资源。这意味着变量$connection
不是对象,因此您不能在其上调用函数execute
。这解释了错误消息。
代码中大部分与数据库相关的函数调用(Fields
、MoveNext
、...)似乎与ADOdb 相关。这些不适用于mysql_*
函数创建的资源(或行集)。
有关更多信息,请参阅 ADOdb 的文档和 PHP 的 mysql 扩展的文档。
由于 PHP 的原始 mysql 扩展已弃用且 ADOdb 更新不频繁,我建议您使用 PDO 进行数据库访问。
【讨论】:
以上是关于连接到 wamp 服务器的主要内容,如果未能解决你的问题,请参考以下文章
如果 mysql 数据库驻留在 wamp 服务器中,如何将 django 项目连接到 mysql 数据库?
从 JAVA(eclipse)连接到 MySQL(wamp 服务器)时出现“文件名、目录名或卷标语法不正确”错误
无法将 Wamp MySQL 数据库连接到 Android Studio
主机 'localhost' 不允许连接到这个 MySQL 服务器
无法在“localhost”端口 587 连接到邮件服务器,验证 php.ini 中的“SMTP”和“smtp_port”设置或在 wamp 服务器中使用 ini_set()