Eroare: PDOException invalid data source name

Discutii despre script-uri si coduri PHP-MySQL, precum si lucru cu XML in PHP.
DanuTz1987
Mesaje:13

Eroare: PDOException invalid data source name

Salut
Am la un script aceste setari in config.php:

Cod: Selectaţi tot

// Main Website configuration:
$_CONFIG['site_name'] = 'www.site - Stick-ul Tau Online'; // Site Name
$_CONFIG['site_url'] = 'www.site';  // Site URL (notice: no tralining slash in the end!)
$_CONFIG['site_path']  = 'www.site';  // Website PATH (notice: no tralining slash in the end!)
$_CONFIG['admin_mail'] = 'dancrisro@yahoo.com'; // Mail used in contact us page
$_CONFIG['database'] = 'baza-de-date';  // Database file!
$_CONFIG['mysql'] = 'mysql:host=localhost;dbname=xxxxxxx';  // mysql pdo connect string change host value and dbname value!
$_CONFIG['username'] = 'Username ';  // mysql databasse username
$_CONFIG['password'] = 'parola';  // mysql user password
$_CONFIG['usemysql'] = true;  // use mysql? False = use pdo sqlite. 
Si functia pt conectare la mysql cu pdo:

Cod: Selectaţi tot

// custom database function easy changeable to any pdo supported databases.
function mycustomdb() {
    global $_CONFIG;
    if ($_CONFIG['usemysql']) {
    // Conect to an mysql database (need to install it first from phpmyadmin...)
    $custom_db = new PDO($_CONFIG['mysql'], $_CONFIG['username'], $_CONFIG['password']);
    } else {
    // Create (connect to) SQLite database in file
    $custom_db = new PDO('sqlite:'.$_CONFIG['database'].'');
    }
    // Set errormode to exceptions
    $custom_db->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);
    return $custom_db;
} 
Imi da eroarea :

Cod: Selectaţi tot

Fatal error: Uncaught exception 'PDOException' with message 'invalid data source name' in /home/rohostin/public_html/config.php:62 Stack trace: #0 /home/rohostin/public_html/config.php(62): PDO->__construct('', 'rohostin_rohost...', 'rohostingro') #1 /home/rohostin/public_html/page.php(111): mycustomdb() #2 {main} thrown in /home/rohostin/public_html/config.php on line 62
Am creat baze de date noi, tot degeaba.

andras Mesaje:430
Am facut o conexiune pe baza mea de date (MySQL) exact dupa codul tau. Nu mi-a dat nici un fel de eroare, a mers pana la capat (am afisat date din tabela). Nu stiu ce sa zic, poate nu e configurat corect Apache sau PHP.

DanuTz1987 Mesaje:13
am Gazduire de la hostasset net
Disk Space Usage: 27MB / UnlimitedMB (0%)
Bandwidth usage: 233MB / UnlimitedMB (0%)

am lasat un ticket sa dea un restart sau sa configureze php/apache
nici nu mai stiu ce sa ii fac
Va Multumesc de ajutor.

MarPlo Mesaje:4343
Salut
Cred ca problema nu e de la hosting, ci de la codul php.
Eroarea specifica faptul ca datele transmise la PDO() sunt incorecte.
Poate ca adresa serverului mysql nu e localhost.
Daca totusi e "localhost", aplica acest cod sa vezi exact ce date se adauga la PDO():

Cod: Selectaţi tot

echo $_CONFIG['mysql'] .', '. $_CONFIG['username'] .', '. $_CONFIG['password']
Poti sa incerci si asa.
La linia de cod:

Cod: Selectaţi tot

$custom_db = new PDO($_CONFIG['mysql'], $_CONFIG['username'], $_CONFIG['password']);
Pune direct datele, asa:

Cod: Selectaţi tot

$custom_db = new PDO('mysql:host=ADRESA_MYSQL; dbname=BAZA_DATE', 'NUME_USER', 'PAROLA');

DanuTz1987 Mesaje:13
REGISTRATION NEEDED!Create an account or sign in!
To view your account or your files, you either have to create an account or sign in.

Cod: Selectaţi tot

$custom_db = new PDO('mysql:host=ADRESA_MYSQL; dbname=BAZA_DATE', 'NUME_USER', 'PAROLA');
Sa rezolvat, mi-am creat cont. Multumesc de ajutor.

Subiecte similare