Configuratie voor command-line PDO

Vandaag had ik wat tijd vrijgemaakt om de Doctrine1.2 Getting Started guide te volgen. Uiteindelijk is het mijn bedoeling om voor een nieuw project Doctrine2 te gebruiken, maar het leek me geen slecht idee om eerst de basis onder de knie te krijgen aan de hand van versie 1.2.

Spijtig genoeg liep het al fout op pagina 2 Introduction to connections met volgende foutboodschap:

Dit terwijl phpInfo via de MAMP start pagina duidelijk aangeeft dat pdo en de mysql dpo driver beiden enabled zijn.

pdo php info

Spijtig genoeg had ik net een hele reeks updates gedaan op mijn mac. Dan is het niet zo snel duidelijk welk onderdeel de problemen veroorzaakt.

  • nieuwe mamp installatie (om met php5.3 te kunnen werken)
  • nieuwe eclipse versie (3.6 helios)
  • subversion 1.6.13 Binaries for Leopard (Mac OS X 10.5)

Heb je een gelijkaardig probleem, onderneem dan de volgende stappen.

  • Check of error_reporting op E_ALL, en display_errors op On staat in php.ini
  • Voer je script eens uit via de browser: werkt dit wel, dan is er iets mis met je command line set-up:
    • voer je script nog eens uit met het absolute pad naar de juiste php versie: $ /Applications/MAMP/bin/php5.3/bin/php test.php
    • Dat is wat omslachtig, dus voeg volgende lijn toe aan je .bash_profile bestand:
      alias php=/Applications/MAMP/bin/php5.3/bin/php
    • het .bash_profile bestand vind je in /Users/%username%/.bash_profile, voer even touch .bash_profile uit indien het bestand niet in je home dir te vinden is
  • Helpt dit allemaal niet dan kan je nog eens proberen om
    • foreach(PDO::getAvailableDrivers() as $driver) {echo $driver, PHP_EOL;} in een php script te zetten en zowel via je browser als via de command line uit te voeren (hopelijk met een identiek resultaat)
    • ga toch even na of je met de databank kan connecteren via mysql_connect
    • misschien ligt het aan je dsn string, zoek de mogelijkheden even op via de php.net site

Hopelijk bespaar je hiermee wat tijd.. Op naar de volgende stap in de Doctrine verkenningstocht.

Gepubliceerd door Kris Lamote op 14 okt 2010
tags: PHP, Mac OS X

0 CommentarenVoeg Toe

Please insert the result of the arithmetical operation from the following image:

Please insert the result of the arithmetical operation from this image. =