Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/285.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在我的WAMP服务器上安装php的ingres扩展_Php_Wamp_Wampserver_Php Extension_Ingres - Fatal编程技术网

在我的WAMP服务器上安装php的ingres扩展

在我的WAMP服务器上安装php的ingres扩展,php,wamp,wampserver,php-extension,ingres,Php,Wamp,Wampserver,Php Extension,Ingres,我有一台在windows下运行的开发计算机 对于一个项目,我必须制作一个php网站,它必须连接到一个Ingres数据库服务器 所以我在本地机器上安装了wamp,安装了服务器和客户端 我在C:\wamp\bin\php\php5.3.5\ext文件夹中添加了在他们的网站php\u ingres.dll上找到的库,并在配置文件中添加了一行扩展名=php\u ingres.dll 我关闭wamp并重新启动它,然后重新启动服务器,我现在在wamp菜单中看到一个复选标记,表示php\u ingres现在被

我有一台在windows下运行的开发计算机

对于一个项目,我必须制作一个php网站,它必须连接到一个Ingres数据库服务器

所以我在本地机器上安装了wamp,安装了服务器和客户端

我在C:\wamp\bin\php\php5.3.5\ext文件夹中添加了在他们的网站php\u ingres.dll上找到的库,并在配置文件中添加了一行扩展名=php\u ingres.dll

我关闭wamp并重新启动它,然后重新启动服务器,我现在在wamp菜单中看到一个复选标记,表示php\u ingres现在被激活。但是当我转到服务器的欢迎页面时,我没有看到这个扩展已加载。如果我进入php信息页面,我在Configure命令中看不到任何入口条目

我只是找不到任何帖子/教程/。。。这表明如何做这个操作,所以任何帮助将不胜感激

谢谢大家!

编辑:我做了一个小测试,看看是否可以连接到Ingres数据库:

    <?php
$link = ingres_connect("localhost", "demodbtest", "demodbtest")  or die("Connexion impossible");
echo "Connexion réussie";

$result = ingres_query($link,"select * from airline");

while ($row = ingres_fetch_array($result)) {
    echo $row["al_iatacode"];  // utilisation du tableau associatif
    echo $row["al_name"];
    echo $row["al_ccode"];          // utilisation du tableau à indices numériques
    echo "</br>";
}
ingres_close($link);
?>
我得到了这个错误:

!!致命错误:调用未定义的函数ingres_connect in 第2行的C:\wamp\www\tests\index.php

有关我的安装的一些信息: 我有一个32位的Windows7 pro Wampserver 2.1 Apache 2.2.17 PHP 5.3.5 Ingres 10.1.0社区版下载地址:
这里下载的PHP驱动程序:

要实际测试是否加载了扩展,您还可以调用它的一个函数。如果加载了扩展,则不应因缺少函数而出现致命错误。这也许是最快的检查之一

另一个检查是使用它,它将为您提供所有已加载扩展的列表。有关更多信息,请参见上面的PHP手册链接

配置行 配置行不会显示ingres扩展,因为它尚未在中编译。这完全没关系,因为您将它作为扩展名.dll加载,所以它不是php.exe的一部分。这就是为什么在配置行中看不到它的原因

在phpinfo页面上查找ingres。 在phpinfo页面上,使用浏览器中的搜索功能(通常为CTRL+F),并尝试查找单词ingres。您应该找到一个显示扩展默认设置(如果已加载)的节

下面是xdebug扩展的示例屏幕截图。这可能与安格尔的情况类似:


图像来源:

仔细检查您的扩展名\u dir设置以及实际使用的php.ini文件。如果通过Apache或IIS在脚本中执行phpinfo,则从命令行调用php.exe-i可能不会给出相同的输出。事实上,有3个可能的php.ini脚本。

问题是,我没有在本地安装ingres客户端,因此,如果没有它,这个库似乎无法工作。

很好地了解,但我能找到ingres的唯一地方是路径中的环境变量。我忘了说我做了一个小测试,我现在就编辑我的帖子好的,你是从命令行打来的。这可能更容易/更快地找出问题所在。在扩展可用之前,php-re-ingres也会给您一个错误。使用php-ini显示ini文件,并检查您的文件是否在其中。如果是,则表示未加载扩展,这可能是错误的配置,也可能是无法加载扩展。php错误日志很有帮助。我仔细检查了一下,我只有一个php.ini文件,它与用于CLI和web执行的php.exe文件位于同一文件夹中。好的,致命错误意味着扩展未加载。您使用的是哪个windows版本,请同时查找32位或64位。扩展必须与您的PHP版本兼容,因此请添加到您下载WAMP和扩展的站点的链接。我在主发布后仔细检查您编辑的正确PHP.ini文件中添加了这些信息。然后启用错误日志记录,使PHP将错误写入日志文件。这也将记录启动错误。如果PHP抱怨加载扩展,请检查日志文件。有时扩展依赖于其他扩展,因此它们在PHP.ini中的显示顺序很重要。对于ingres,我不知道这里的任何细节,抱歉,只是说。希望这有助于您向前迈进一步。我有错误报告=E\u ALL,我的扩展名=php\u ingres.dll位于扩展名引用的最后一行:/I当我试图通过wamp显示日志文件时,日志文件不存在:ssStartup errors将仅在php错误日志文件中可用。您可能需要配置它。这是php.ini中的一个设置。搜索错误日志并给它一个类似c:\phperor.log的路径。然后你应该会找到那个文件。我打开了一个由wamp显示的文件,当我点击wamp菜单中的php.ini项时,我想它是好的,wamp看到它被选中了。此外,我在同一个配置文件中添加了mssql的另一个扩展支持,它可以工作,所以我想我正在编辑好的文件,如果你执行'php-c-m',你就看不到Ingre lis
ted?Microsoft Windows[版本6.1.7600]版权所有c 2009微软公司。我们享有服务权。C:\Users\julien>C:\wamp\bin\php\php5.3.5\php.exe-C:\wamp\bin\php\php5.3.5\php.ini-m[php模块]bcmath calendar com_dotnet Core ctype date dom ereg filter ftp gd hash iconv json libxml mbstring mcrypt mhash mysqli mysqlnd odbc pcre PDO PDO_mysql PDO_sqlite Phar Reflection session SimpleXML SPL sqlsrv标准标记器wddx xdebug xml xmlreader xmlwriter zip zlib[Zend Modules]xdebug C:\Users\julien>所以不,没有入口加载