By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
428,816 Members | 2,151 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 428,816 IT Pros & Developers. It's quick & easy.

PHP Setup

P: n/a
jm
I am setting up Apache 2.0, PHP5, and PostgreSQL 8.2 on Windows XP. I
have setup everything correctly in the past but recently had to do a
reformat and have to do the installs all over again.

First, I installed Apache with no problems what so ever.

Next, PHP. Again smooth install. With a little tweaking of the
httpd.conf file, Apache was working with PHP.

Next was PostgreSQL. Again, the install went fine and I could use
pgAdmin to connect to the databases.

When I run a PHP file that uses pg_connect() for example, it fails and
says that it is an unrecognized function. I know that the PostgreSQL
extension is in the extension directory.

To start the troubleshooting process, I create a file with phpinfo()
to see what is going on. It says that the php.ini file can be found
in C:\WINDOWS when there is no php.ini file in that directory. I can
do a search on the hard drive for 'php.ini' and the only php.ini file
that is listed is the one in C:\PHP.
My Apache httpd.conf has: PHPIniDir "C:\PHP\"
Also the phpinfo() says that the extension_dir is C:\php5 when it is
not. In C:\PHP\php.ini the extension directory is listed as C:\PHP
\ext.

Lastly, when I do a restart of the computer, try to pull up localhost,
instead of showing any PHP errors, it just shows the PHP source code
in plain text like it has no idea what PHP is, and suddenly the
phpinfo() page that I created is just blank.

If anyone has some ideas to help me out, it would be much appreciated,
I don't want to have to pull out any more of my hair. :)

j

May 31 '07 #1
Share this Question
Share on Google+
6 Replies


P: n/a
On 31 Mai, 05:32, jm <mister5...@gmail.comwrote:

ok, first of all: why don't you use xampp (www.apachefriends.org)? as
long as you're not on a live-box, there no better way to install
apache and php on a windows-system.
When I run a PHP file that uses pg_connect() for example, it fails and
says that it is an unrecognized function. I know that the PostgreSQL
extension is in the extension directory.
there must be a dll called php_pgsql.dll. look at your php.ini for
"extension=php_pgsql.dll". this line is disabled by default. remove
the ; at the beginning of the line, restart apache.
To start the troubleshooting process, I create a file with phpinfo()
to see what is going on. It says that the php.ini file can be found
in C:\WINDOWS when there is no php.ini file in that directory. I can
do a search on the hard drive for 'php.ini' and the only php.ini file
that is listed is the one in C:\PHP.
have you compiled php by yourself?
in your httpd.conf should be an entry like this one:

PHPIniDir "C:/php"
LoadFile "C:/php/php5ts.dll"
LoadModule php5_module "C:/php/php5apache2.dll"
AddType application/x-httpd-php .php
My Apache httpd.conf has: PHPIniDir "C:\PHP\"
Also the phpinfo() says that the extension_dir is C:\php5 when it is
not. In C:\PHP\php.ini the extension directory is listed as C:\PHP
\ext.
again, have you compiled php by yourself?
regards

May 31 '07 #2

P: n/a
jm wrote:
I am setting up Apache 2.0, PHP5, and PostgreSQL 8.2 on Windows XP. I
have setup everything correctly in the past but recently had to do a
reformat and have to do the installs all over again.

First, I installed Apache with no problems what so ever.

Next, PHP. Again smooth install. With a little tweaking of the
httpd.conf file, Apache was working with PHP.

Next was PostgreSQL. Again, the install went fine and I could use
pgAdmin to connect to the databases.

When I run a PHP file that uses pg_connect() for example, it fails and
says that it is an unrecognized function. I know that the PostgreSQL
extension is in the extension directory.

To start the troubleshooting process, I create a file with phpinfo()
to see what is going on. It says that the php.ini file can be found
in C:\WINDOWS when there is no php.ini file in that directory. I can
do a search on the hard drive for 'php.ini' and the only php.ini file
that is listed is the one in C:\PHP.
My Apache httpd.conf has: PHPIniDir "C:\PHP\"
Also the phpinfo() says that the extension_dir is C:\php5 when it is
not. In C:\PHP\php.ini the extension directory is listed as C:\PHP
\ext.

Lastly, when I do a restart of the computer, try to pull up localhost,
instead of showing any PHP errors, it just shows the PHP source code
in plain text like it has no idea what PHP is, and suddenly the
phpinfo() page that I created is just blank.

If anyone has some ideas to help me out, it would be much appreciated,
I don't want to have to pull out any more of my hair. :)

j
XAMP won't solve your problem because you want PostGres SQL, not MySQL.
No use installing all that MySQL code if you're not going to use it.

As to your problem. It looks like PHP isn't finding the file. Do you
have your PHPiniDir before the LoadModule statement for PHP? Also, I
always use forward slashes - they work fine, even in Windows (except the
command processor), and sometimes backslashes cause problems. You might
try putting PHPiniDir "C:/PHP".

Or, you can handle one problem at a time and for now just copy your
php.ini file to c:\windows (you can always move it once you get things
working, if you wish). Ensure your PostGres dll is loaded in the
extensions section.

I find it interesting that it worked before you restarted. What changes
did you make to your httpd.conf file?
--
==================
Remove the "x" from my email address
Jerry Stuckle
JDS Computer Training Corp.
js*******@attglobal.net
==================
May 31 '07 #3

P: n/a
XAMP won't solve your problem because you want PostGres SQL, not MySQL.

of course it will, all he has to do is to active the postgres-dll.
and he gets a clean, accurate installation.
As to your problem. It looks like PHP isn't finding the file. Do you
have your PHPiniDir before the LoadModule statement for PHP?
it should be AFTER the load_module directive.
Also, I
always use forward slashes - they work fine, even in Windows (except the
command processor), and sometimes backslashes cause problems. You might
try putting PHPiniDir "C:/PHP".
you're right, in some cases, php ignores paths given with backslashes
(don't know why).
forward slashes may solve the problem.

regards

May 31 '07 #4

P: n/a
Lammi wrote:
>XAMP won't solve your problem because you want PostGres SQL, not MySQL.

of course it will, all he has to do is to active the postgres-dll.
and he gets a clean, accurate installation.
And he has a lot of disk space unnecessarily taken up by MySQL.
>As to your problem. It looks like PHP isn't finding the file. Do you
have your PHPiniDir before the LoadModule statement for PHP?

it should be AFTER the load_module directive.
Maybe it doesn't make any difference. I always put it before the
LoadModule statement so it's available when the module is loaded.
>Also, I
always use forward slashes - they work fine, even in Windows (except the
command processor), and sometimes backslashes cause problems. You might
try putting PHPiniDir "C:/PHP".

you're right, in some cases, php ignores paths given with backslashes
(don't know why).
forward slashes may solve the problem.

regards

--
==================
Remove the "x" from my email address
Jerry Stuckle
JDS Computer Training Corp.
js*******@attglobal.net
==================
May 31 '07 #5

P: n/a
jm
On May 31, 6:47 am, Jerry Stuckle <jstuck...@attglobal.netwrote:
jm wrote:
I am setting up Apache 2.0, PHP5, and PostgreSQL 8.2 on Windows XP. I
havesetupeverything correctly in the past but recently had to do a
reformat and have to do the installs all over again.
First, I installed Apache with no problems what so ever.
Next, PHP. Again smooth install. With a little tweaking of the
httpd.conf file, Apache was working with PHP.
Next was PostgreSQL. Again, the install went fine and I could use
pgAdmin to connect to the databases.
When I run a PHP file that uses pg_connect() for example, it fails and
says that it is an unrecognized function. I know that the PostgreSQL
extension is in the extension directory.
To start the troubleshooting process, I create a file with phpinfo()
to see what is going on. It says that the php.ini file can be found
in C:\WINDOWS when there is no php.ini file in that directory. I can
do a search on the hard drive for 'php.ini' and the only php.ini file
that is listed is the one in C:\PHP.
My Apache httpd.conf has: PHPIniDir "C:\PHP\"
Also the phpinfo() says that the extension_dir is C:\php5 when it is
not. In C:\PHP\php.ini the extension directory is listed as C:\PHP
\ext.
Lastly, when I do a restart of the computer, try to pull up localhost,
instead of showing any PHP errors, it just shows the PHP source code
in plain text like it has no idea what PHP is, and suddenly the
phpinfo() page that I created is just blank.
If anyone has some ideas to help me out, it would be much appreciated,
I don't want to have to pull out any more of my hair. :)
j

XAMP won't solve your problem because you want PostGres SQL, not MySQL.
No use installing all that MySQL code if you're not going to use it.

As to your problem. It looks like PHP isn't finding the file. Do you
have your PHPiniDir before the LoadModule statement for PHP? Also, I
always use forward slashes - they work fine, even in Windows (except the
command processor), and sometimes backslashes cause problems. You might
try putting PHPiniDir "C:/PHP".

Or, you can handle one problem at a time and for now just copy your
php.ini file to c:\windows (you can always move it once you get things
working, if you wish). Ensure your PostGres dll is loaded in the
extensions section.

I find it interesting that it worked before you restarted. What changes
did you make to your httpd.conf file?

--
==================
Remove the "x" from my email address
Jerry Stuckle
JDS Computer Training Corp.
jstuck...@attglobal.net
==================
I did change the slashes and now the 'Loaded Configuration File' is
correct. It still says that the ini path is C:\WINDOWS for some
reason, but I know that it is loading the pgsql stuff. There is now a
section in the phpinfo page that displays that information.

Now the only problem is when I view a page that i have created, I will
either get a blank page with nothing or just the source code. What is
even more confusing about this though, is the the page that is
phpinfo(); works fine. So why is that working, but nothing else?

May 31 '07 #6

P: n/a
jm wrote:
On May 31, 6:47 am, Jerry Stuckle <jstuck...@attglobal.netwrote:
>jm wrote:
>>I am setting up Apache 2.0, PHP5, and PostgreSQL 8.2 on Windows XP. I
havesetupeverything correctly in the past but recently had to do a
reformat and have to do the installs all over again.
First, I installed Apache with no problems what so ever.
Next, PHP. Again smooth install. With a little tweaking of the
httpd.conf file, Apache was working with PHP.
Next was PostgreSQL. Again, the install went fine and I could use
pgAdmin to connect to the databases.
When I run a PHP file that uses pg_connect() for example, it fails and
says that it is an unrecognized function. I know that the PostgreSQL
extension is in the extension directory.
To start the troubleshooting process, I create a file with phpinfo()
to see what is going on. It says that the php.ini file can be found
in C:\WINDOWS when there is no php.ini file in that directory. I can
do a search on the hard drive for 'php.ini' and the only php.ini file
that is listed is the one in C:\PHP.
My Apache httpd.conf has: PHPIniDir "C:\PHP\"
Also the phpinfo() says that the extension_dir is C:\php5 when it is
not. In C:\PHP\php.ini the extension directory is listed as C:\PHP
\ext.
Lastly, when I do a restart of the computer, try to pull up localhost,
instead of showing any PHP errors, it just shows the PHP source code
in plain text like it has no idea what PHP is, and suddenly the
phpinfo() page that I created is just blank.
If anyone has some ideas to help me out, it would be much appreciated,
I don't want to have to pull out any more of my hair. :)
j
XAMP won't solve your problem because you want PostGres SQL, not MySQL.
No use installing all that MySQL code if you're not going to use it.

As to your problem. It looks like PHP isn't finding the file. Do you
have your PHPiniDir before the LoadModule statement for PHP? Also, I
always use forward slashes - they work fine, even in Windows (except the
command processor), and sometimes backslashes cause problems. You might
try putting PHPiniDir "C:/PHP".

Or, you can handle one problem at a time and for now just copy your
php.ini file to c:\windows (you can always move it once you get things
working, if you wish). Ensure your PostGres dll is loaded in the
extensions section.

I find it interesting that it worked before you restarted. What changes
did you make to your httpd.conf file?

--
==================
Remove the "x" from my email address
Jerry Stuckle
JDS Computer Training Corp.
jstuck...@attglobal.net
==================

I did change the slashes and now the 'Loaded Configuration File' is
correct. It still says that the ini path is C:\WINDOWS for some
reason, but I know that it is loading the pgsql stuff. There is now a
section in the phpinfo page that displays that information.

Now the only problem is when I view a page that i have created, I will
either get a blank page with nothing or just the source code. What is
even more confusing about this though, is the the page that is
phpinfo(); works fine. So why is that working, but nothing else?
The fact that the phpinfo() page is working correctly indicates your PHP
is installed correctly.

However, you haven't told us enough to determine which of about a
thousand possibilities could be the problem.

For instance - does your file end with .php? Are you using <?php to
start your php code? Are there any errors in your code? Try these
settings in your php.ini file:

error_reporting = E_ALL
display_errors = On

But don't leave display_errors on for a live site!

--
==================
Remove the "x" from my email address
Jerry Stuckle
JDS Computer Training Corp.
js*******@attglobal.net
==================
May 31 '07 #7

This discussion thread is closed

Replies have been disabled for this discussion.