我一直在尝试遵循http://coenraets.org/directory/上的指南
我将“Web”文件夹的内容复制到我网站的根目录,页面看起来很好,我还将他的 sql 脚本安装到我的数据库中。搜索栏不起作用(可能是因为我的 SQL 数据库需要用户名和密码?)。我该如何解决?
我一直在尝试遵循http://coenraets.org/directory/上的指南
我将“Web”文件夹的内容复制到我网站的根目录,页面看起来很好,我还将他的 sql 脚本安装到我的数据库中。搜索栏不起作用(可能是因为我的 SQL 数据库需要用户名和密码?)。我该如何解决?
我假设您已经设置了 slim 来运行从主干.js 接收 javascript 调用的 php 应用程序?
参考 - https://github.com/ccoenraets/backbone-directory/blob/master/api/index.php
API 目录包含一个名为index.php
. 对于这个应用程序中的 php slim 框架(http://www.slimframework.com/),它应该包含您的数据库 IP、用户名和密码。
文件中从第 148 行开始index.php
。
function getConnection() {
$dbhost="127.0.0.1";
$dbuser="root";
$dbpass="";
$dbname="directory";
$dbh = new PDO("mysql:host=$dbhost;dbname=$dbname", $dbuser, $dbpass);
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
return $dbh;
}
您的服务器位置 - 98.214.131.200 - 如果您在该服务器本身上设置了此 php 应用程序,则无关紧要。 127.0.0.1
指服务器 localhost 本身。
您需要配置的是$dbuser
和$dbpass
(您$dbname
显然是正确的,因为您提到这是您通过运行提供的 sql 脚本创建的 MySQL 数据库),它对应于您为此演示应用程序设置的 MySQL 数据库。
如果您使用apache
的是运行 slim,请确保mod_rewrite
已启用并将您的 apache 虚拟主机配置为:-
<Directory "C:\Path\To\Your\slimphp">
Allow From All
AllowOverride All
</Directory>
<VirtualHost *:80>
ServerName "slim.php"
DocumentRoot "C:\Path\To\Your\slimphp"
</VirtualHost>
啊,如果@vicvicvic 指出使用 IIS,请使用 ModRewrite - http://www.micronovae.com/ModRewrite/ModRewrite.html
您需要在api
文件夹中配置后端,以便它实际与您的 SQL 数据库通信。在getConnection
函数中执行此操作api/index.php
:
function getConnection() {
$dbhost="127.0.0.1";
$dbuser="root";
$dbpass="";
$dbname="directory";
$dbh = new PDO("mysql:host=$dbhost;dbname=$dbname", $dbuser, $dbpass);
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
return $dbh;
}