Du må være registrert og logget inn for å kunne legge ut innlegg på freak.no
X
LOGG INN
... eller du kan registrere deg nå
Dette nettstedet er avhengig av annonseinntekter for å holde driften og videre utvikling igang. Vi liker ikke reklame heller, men alternativene er ikke mange. Vær snill å vurder å slå av annonseblokkering, eller å abonnere på en reklamefri utgave av nettstedet.
  4 1190
Jeg har et lite problem med å kunne bruke .conf filen. Det som er problemet er at jeg ønsker å bruke den delen som er markert under #hidden. Kodene jeg bruker ser dere under,

data.conf File

Kode

 # global variables
 pageTitle = "Main Menu"
 bodyBgColor = #000000
 tableBgColor = #000000
 rowBgColor = #00ff00

[Customer]
pageTitle = "Customer Info"

[Login]
pageTitle = "Login"
focus = "username"
Intro = """This is a value that spans more
       than one line. you must enclose
       it in triple quotes."""

# hidden section -> This par is where my problem starts. I can't use this
[.Database]
host=my.example.com
db=ADDRESSBOOK
user=php-user
pass=foobarenter code here
In my PHP file i have this code:

Kode

require_once("configs/smarty/Smarty.class.php");
$smarty = new Smarty;

$smarty->setConfigDir('configs/');
$smarty->setTemplateDir('templates/');
$smarty->setCompileDir('templates_c/');
$smarty->setPluginsDir('plugins/');
$smarty->setCacheDir('cache/');


## DATABASE ##
$database = $smarty->configLoad('data.conf', 'Database');
$db_host = $database->getConfigVars('host');
$db_name = $database->getConfigVars('db');
$db_user = $database->getConfigVars('user');
$db_pass = $database->getConfigVars('pass');

try{
    $pdo = new PDO('mysql:host='.$db_host.';dbname='.$db_name,   
    $db_user, $db_pass);
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
}catch(PDOException $e){
    die($e->getMessage());
}
Dette er det jeg får som output

SQLSTATE[3D000]: Invalid catalog name: 1046 No database selected

Takk på forhånd
<?php getUserTitle(); ?>
MrMrtn's Avatar

Kode

[.Database]
In my PHP file i have this code:

Kode

$database = $smarty->configLoad('data.conf', 'Database');
Sikker på at det ikke skal være:

Kode

$database = $smarty->configLoad('data.conf', '.Database');
(merk punktumet)

?
Sist endret av MrMrtn; 10. mai 2015 kl. 19:55.
Trådstarter
13 0
Jeg har prøvd flere ganger med å sette

Kode

$database = $smarty->configLoad('data.conf', '.Database');
Jeg prøvde også nå etter svaret ditt. Men får fortsatt samme feilkode.

SQLSTATE[3D000]: Invalid catalog name: 1046 No database selected

Har du noe som viser .Database lenger ned?
Har du prøvd å printe ut innholdet av variablene dine slik at du er sikker på at verdiene faktisk er hva du forventer å koble til databaseserveren med?

http://php.net/manual/en/function.print-r.php bør lede deg på rett vei
Trådstarter
13 0
Ja, det har jeg prøvd på. Men de kommer ikke da heller. Men så fort jeg fjerner punktumet fra .conf filen og i php filen så kommer alt frem