Versio

PDO connect error 110

Overzicht Reageren

Pagina: 1 2 volgende »

The Ultimate

The Ultimate

29/12/2010 16:22:24
Quote Anchor link
Op aanraden van een aantal forumleden vandaag PDO gaan gebruiken. Meteen een dikke error waar ik niet voorbij kom.

Waarom kan dit wel:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
DB_USER = '****';
DB_PASS = '****';
$db = new PDO('mysql:host=db.****.nl;dbname=****', DB_USER, DB_PASS);
?>


En dit niet:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?php
DB_USER = '****';
DB_PASS = '****';
PDO_DSN = 'mysql:host=db.****.nl;dbname=****';
$db = new PDO(PDO_DSN, DB_USER, DB_PASS);
?>


Error:
Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[HY000] [2003] Can't connect to MySQL server on 'db.****.nl' (110)' in /public/sites/www.****.nl/test3.php:45 Stack trace: #0 /public/sites/www.****.nl/test3.php(45): PDO->__construct('mysql:host=db.f...', '****', '****') #1 {main} thrown in /public/sites/www.****.nl/test3.php on line 45
Gewijzigd op 29/12/2010 16:22:44 door The Ultimate
 
PHP hulp

PHP hulp

25/05/2012 09:47:37
Gesponsorde koppelingen:
BHosted Hosting al vanaf € 1,- per maand

Controleer nu gratis jouw domeinnaam:

  
 
Mike Smit

Mike Smit

29/12/2010 16:28:06
Quote Anchor link
Lokale database?
 
The Ultimate

The Ultimate

29/12/2010 16:37:20
Quote Anchor link
Mike Smit op 29/12/2010 16:28:06:
Lokale database?
Nope. Live.
 
Mike Smit

Mike Smit

29/12/2010 16:46:07
Quote Anchor link
Heb je wel de bevoegdheid om vanaf jouw domein de server te connecten? (Firewall)
Gewijzigd op 29/12/2010 16:47:32 door Mike Smit
 
The Ultimate

The Ultimate

29/12/2010 16:46:58
Quote Anchor link
Mike Smit op 29/12/2010 16:46:07:
Heb je wel de bevoegdheid om vanaf jouw domein de server te connecten?
Kun je uitleggen wat je precies bedoelt?
 
Mike Smit

Mike Smit

29/12/2010 16:48:45
Quote Anchor link
Draait de web server op dezelfde server als de MySQL server?
 
Karl Karl

Karl Karl

29/12/2010 16:49:06
Quote Anchor link
Soms mag je geen verbinding van localhost maken met een db server die je hebt van je hosting. (Eigenlijk altijd.)
Aan de hand van het voorbeeld wat je nu geeft, kan je stellen dat je wellicht het probeert te doen op deze manier.
 
Mike Smit

Mike Smit

29/12/2010 16:50:47
Quote Anchor link
Je moet er voor zorgen dat je provider je toestemming geeft om de server vanaf een ander domein te benaderen.



Toevoeging op 29/12/2010 16:51:29:

Karl Karl op 29/12/2010 16:49:06:
Soms mag je geen verbinding van localhost maken met een db server die je hebt van je hosting. (Eigenlijk altijd.)
Aan de hand van het voorbeeld wat je nu geeft, kan je stellen dat je wellicht het probeert te doen op deze manier.
 
The Ultimate

The Ultimate

29/12/2010 17:04:52
Quote Anchor link
Karl Karl op 29/12/2010 16:49:06:
Soms mag je geen verbinding van localhost maken met een db server die je hebt van je hosting. (Eigenlijk altijd.)
Ik werk aan een live site (nog niet bereikbaar voor publiek). Dat is toch niet via een localhost?

Sorry hoor, maar ik snap echt niet wat jullie bedoelen. Ik kan namelijk altijd bij mijn databases. Ik heb zelfs ook al verbinding gemaakt en values geinput. Alleen via een ander script.

Mijn vraag was gewoon waarom het een wel werkt en het ander niet. Er staat toch 2x precies hetzelfde? Alleen de ene keer gebruik ik een constante en de andere keer niet.
 
Mike Smit

Mike Smit

29/12/2010 17:07:07
Quote Anchor link
Kun je met een niet PDO connectie wel verbinden?
 
The Ultimate

The Ultimate

29/12/2010 17:14:19
Quote Anchor link
Mike Smit op 29/12/2010 17:07:07:
Kun je met een niet PDO connectie wel verbinden?
Ja, en ik kan ook MET een PDO connectie verbinden. Dat is ook mijn vraag niet.
 
Mike Smit

Mike Smit

29/12/2010 17:16:32
Quote Anchor link
Error:
Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[HY000] [2003] Can't connect to MySQL server on 'db.****.nl' (110)' in /public/sites/www.****.nl/test3.php:45 Stack trace: #0 /public/sites/www.****.nl/test3.php(45): PDO->__construct('mysql:host=db.f...', '****', '****') #1 {main} thrown in /public/sites/www.****.nl/test3.php on line 45

Nee je kunt niet verbinden.
 
The Ultimate

The Ultimate

29/12/2010 17:19:13
Quote Anchor link
Mike Smit op 29/12/2010 17:16:32:
Nee je kunt niet verbinden.
Gast, hou alsjeblieft op met het vervuilen van mijn topic. Ik zeg toch zelf al in de beginpost dat het niet lukt om op die manier te verbinden? Lees mijn beginpost anders nog eens door...

Denk je dan dat het iets toevoegt als je nog een keer zegt dat ik geen verbinding krijg? Nee dus!
Gewijzigd op 29/12/2010 17:19:42 door The Ultimate
 
Mike Smit

Mike Smit

29/12/2010 17:20:51
Quote Anchor link
Prima ik zal je topic niet meer "vervuilen".
 
Bas Cost Budde

Bas Cost Budde

29/12/2010 17:22:36
Quote Anchor link
heet de host wellicht 'localhost'?

Edit: je lijkt constanten te gebruiken; die zet ik altijd met define(). Ik weet zo niet zeker of je fragmenten uit de topicstart wel echt gelijkwaardig zijn.
Gewijzigd op 29/12/2010 17:28:48 door Bas Cost Budde
 
The Ultimate

The Ultimate

29/12/2010 17:29:14
Quote Anchor link
Bas Cost Budde op 29/12/2010 17:22:36:
heet de host wellicht 'localhost'?
Lijkt me niet, aangezien het volgende gewoon werkt:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
DB_USER = '****';
DB_PASS = '****';
$db = new PDO('mysql:host=db.****.nl;dbname=****', DB_USER, DB_PASS);
?>

Het lijkt er gewoon op alsof ik "'mysql:host=db.****.nl;dbname=****'" niet mag vervangen voor een constante.
 
Bas Cost Budde

Bas Cost Budde

29/12/2010 17:31:51
Quote Anchor link
ja dat lijkt me wel gek. Het *zou* met de PDO-implementatie te maken kunnen hebben... nooit nog gemerkt dat je op de plek van een string geen constante mag gebruiken.

Wil je eens uitproberen of 'localhost' in de string-variant een connectie oplevert? En wil je ook eens proberen of je met
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
define('PDO_DSN', 'mysql:host=db.****.nl;dbname=****');

verder komt?
 
PHP Jasper

PHP Jasper

29/12/2010 17:33:52
Quote Anchor link
ik weet niet of het helpt maar in het eerst stuk het met aanhalingstekens
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
'mysql:host=db.****.nl;dbname=****'


in het 2de stuk staat er
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
PDO_DSN = 'mysql:host=db.****.nl;dbname=****';
$db = new PDO(PDO_DSN, DB_USER, DB_PASS);


waar PDO_DSN dus volgens mij mysql:host=db.****.nl;dbname=**** geeft en er dus zonder '' staat
 
Bart V B

Bart V B

29/12/2010 17:34:34
Quote Anchor link
Geen idee waarom, maar met een constante werkt dit inderdaad niet.
Zet je hem in een variabele dan werkt het wel.

Dus de vraag zou beter kunnen zijn:
Waarom kan een constante niet behandeld worden als een string?
 
Bas Cost Budde

Bas Cost Budde

29/12/2010 17:37:03
Quote Anchor link
PHP Jasper: *dat* maakt niets uit. De quotes zijn syntax, wat er naar de constructor gaat is de inhoud van de string (of de constante. Oh nee, die dus niet :) )

Edit: niet te lang over nadenken, gewoon een variabele gebruiken. Kennelijk is het 'immutable' karakter van een constante iets teveel gevraagd van PDO.
Gewijzigd op 29/12/2010 17:38:44 door Bas Cost Budde
 
PHP Jasper

PHP Jasper

29/12/2010 17:38:04
Quote Anchor link
ok
 

Pagina: 1 2 volgende »



Overzicht Reageren