Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.php > #5112

Re: php PDO does not work

From Jerry Stuckle <jstucklex@attglobal.net>
Newsgroups comp.lang.php
Subject Re: php PDO does not work
Date 2012-03-05 08:04 -0500
Organization A noiseless patient Spider
Message-ID <jj2dks$fjc$1@dont-email.me> (permalink)
References <427252.950.1330787450521.JavaMail.geo-discussion-forums@pbcwi5> <jj20mg$bbh$1@dont-email.me>

Show all headers | View raw


On 3/5/2012 4:23 AM, "Álvaro G. Vicario" wrote:
> El 03/03/2012 16:10, test japan escribió/wrote:
>> i installed php and mysql on archlinux by pacman,
>> and in phpinfo page, i can see the infomation about mysql& pdo_mysql
>>
>> in php.ini, i uncommented the following lines:
>> extension=mysqli.so
>> extension=mysql.so
>
> As far as I know, these are unrelated to PDO.
>
>
>> extension=pdo_mysql.so
>
> Correct, this is the PDO driver for MySQL, though I don't really
> understand why pdo_mysql actually showed up in phpinfo() if this line
> was commented out :-?
>
>
>> but when running the code below, the browser shows a blank page
>> no result, even no error message.
>>
>> try {
>> $dbh = new PDO("mysql:host=192.168.0.1;dbname=testdb", "username",
>> "password");
>> echo 'Connected to database!!';
>> } catch (PDOException ex) {
>> echo $ex->getMessage();
>
> Assuming there's a PHP start tag, you should be getting this:
>
> Parse error: syntax error, unexpected T_STRING, expecting T_VARIABLE
>
> I suggest you configure your development box to display all possible
> errors. You have several ways to do so:
>
> 1. Edit your "php.ini" file:
>
> error_reporting = E_ALL | E_STRICT
> display_errors = On
>
> 2. Put this on top of your script:
>
> <?php
> error_reporting(E_ALL | E_STRICT);
> ini_set('display_errors', TRUE);
>

This will not catch parse errors because the code is never executed.

> 3. If PHP runs as Apache module, you can also use an `.htaccess` file:
>
> # You cannot use PHP constants here
> php_value error_reporting -1
> php_flag display_errors on
>

The httpd.conf file must be set up to allow this, of course (I got 
caught on this one recently).

> This is not specifically related to PDO, it's how PHP error reporting
> works in general.
>
>
>
> Additionally, PDO will not throw exceptions unless you tell it to
> because the default mode is PDO::ERRMODE_SILENT:
>
> http://es2.php.net/manual/en/pdo.error-handling.php
>
> This also implies that you cannot use exceptions to capture connection
> errors unless you set PDO::ERRMODE_EXCEPTION in the constructor.
>
>


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

Back to comp.lang.php | Previous | Next — Previous in thread | Find similar | Unroll thread


Thread

php PDO does not work test japan <testatjapan@gmail.com> - 2012-03-03 07:10 -0800
  Re: php PDO does not work Luuk <luuk@invalid.lan> - 2012-03-03 16:34 +0100
  Re: php PDO does not work Jerry Stuckle <jstucklex@attglobal.net> - 2012-03-03 12:59 -0500
    Re: php PDO does not work test japan <testatjapan@gmail.com> - 2012-03-03 17:08 -0800
  Re: php PDO does not work "Álvaro G. Vicario" <alvaro.NOSPAMTHANX@demogracia.com.invalid> - 2012-03-05 10:23 +0100
    Re: php PDO does not work Jerry Stuckle <jstucklex@attglobal.net> - 2012-03-05 08:04 -0500

csiph-web