Bonjour,
Je débute en CakePHP et j'ai essayé de suivre les tutoriels et les cours mais à chaque fois j'ai le même problème c'est que je n'arrive pas à accéder à la base de données Mysql (j'utilise Xampp) et j'ai le message suivant :

Cake is NOT able to connect to the database.

Datasource class Mysql could not be found.

Voici le contenu de la classe DATABASE_CONFIG dans le fichier database.php :

class DATABASE_CONFIG {

public $default = array(
'datasource' => 'Database/Mysql',
'persistent' => false,
'host' => 'localhost',
'port' => '3306',
'login' => 'root',
'password' =>'',
'database' => 'tuto',
'schema'=>'',
'prefix' => '',
'encoding' =>''
);
}

Tout en sachant que j'ai bien (enfin je pense après avoir effectuer les vérifications nécessaires) le PDO et le pdo_mysql !

Merci d'avance pour votre aide.

3 réponses


Bonjour,
Configuration de la base de donnees
Renommez (ou mieux, copiez) le fichier /app/config/database.php.default vers /app/config/database.php. Ensuite, ouvrez /app/config/database.php. Vous devrez trouver une portion de code qui ressemble a ca :

class DATABASE_CONFIG {
    public $default = array(
        'datasource' => 'Database/Mysql',
        'persistent' => false,
        'host' => 'localhost',
        'login' => 'root',
        'password' => 'root',
        'database' => 'test',
        'prefix' => '',
    );
}

Pour compléter ce qu'a dit Med-Radhi... dans ton navigateur (firefox, chrome, opera, ie) tu dois mettre l'adresse te permettant de te connecter a ton interface de gestion de base de donnée (le plus connu *phpMyadmin*) qui est en principe à cette adresse URL: **http://localhost/phpmyadmin/** comme l'as dit med-radhi dans ton fichier tu as des éléments à remplir - **datasource** -> le type de base de donnée (que tu laisses à **'Database/Mysql'**) - **persistent** -> c'est une façon de dire si tu fermes tes connections à la base ou tu les gardes (tu laisses à **false**) - **host** -> ca te dit ou est ton gestionnaire de base de donnée, tu y met l'adresse ip de la machine contenant la base si elle est externe (sinon tu laisses le terme **'localhost'** qui d'un point de vu réseau veut dire "ici même, sur ma machine") - **login** -> le nom d'utilisateur qui a le droit d’accéder a ta base de donner (en principe tu en crée un mais pour tes début tu laisses à **root** qui est l'utilisateur "superman" il fait ce qu'il veut quand il veut) - **password** -> c'est le mot de passe de ton utilisateur (vu qu'on a mis 'root', par défaut root n'as pas de mot de passe donc tu laisses vide **''**) - **database** -> le nom de la base de donnée (tu mets 'mustapha' par exemple) - **prefix** -> c'est une chaine de caractère qui va venir avant tous les noms de tables (la base de données est composé d’éléments regroupés dans des tables par exemple la table utilisateur, la table des films, la tables des noms de pays etc...) dans ton cas **tu laisses à vide**. Donc tu dois créer une base de donnée (c'est ce qui va contenir tout le contenu de ton site ou de ton application de manière structurée) disons que tu va l'appeler mustapha donc dans phpmyadmin tu cliques sur **"base de donnée"**, à coté de **"créer une base de donnée"** tu vas** écrire le nom de ta base** de donnée "mustapha" et juste à coté il y a écrit** interclassement, que tu dois mettre a utf8-general_ci ou utf8-unicode-ci** (utf8 te permettant dans la langue française de supporter les accents, ou la langue arabe, etc etc, ci pour casse inchangé, c'est une façon de dire si on prend en compte la différence minuscule majuscule ou pas) tu cliques sur **créer** puis tu reviens **à cakephp, tu modifie le fichier /app/config/database.php** (voir réponses med-radhi) et **tu refais ton test**, et en principe c'est bon! :) *A titre indicatif: toute la config que je t'ai donnée est bidon, c'est juste pour test!!!* a l'avenir n'utilises jamais root! change toujours le mot de passe root par défaut pour ta base de donnée tu doit créer un utilisateurs qui aura tous les droit sur ta base seulement en laisse phpmyadmin générer le mot de passe qui sera déjà assez fort et que tu peux renforcer en ajoutant des signe + - ***

Extraire et afficher correctement en arabe les données d'une table PHP/MySQL dans une page de résultat PHP sous Dreamweaver 8®

S?MARAß?S.com

Objectif du cours :

  • obtenir l'affichage correct en arabe des données extraites d'une table.

MODE OPÉRATOIRE :

PREMIÈRE PARTIE :

Afficher les caractères arabes dans une table MySQL avec Wampserver® :

  1. Créer une Table.

  2. Dans le champ Interclassement, sélectionner "utf8_bin" comme langue d'affichage.

  3. Enregistrer en cliquant sur Sauvegarder.

DEUXIÈME PARTIE :

  1. Ouvrir la page de résultats et repérer la ligne suivante :
    mysql_select_db($database_MaBase, $MaTable);

  2. Copier/coller les deux lignes suivantes immédiatement en dessous :
    mysql_query("SET NAMES cp1256");
    mysql_query("set characer set cp1256");

Cela donne :

mysql_select_db($database_MaBase, $MaTable);

mysql_query("SET NAMES cp1256");
mysql_query("set characer set cp1256");

  1. Attribuer à la page de Résultats la police de caractère "Windows-1256" comme cela :
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1256" />

  2. Enregistrer.

Source : sumarabus.com partie "Tutoriels arabes" (Tutoriels sur les particularités de la langue arabe pour la création de pages webs).

Autres Tutoriels disponibles : "Créer un clavier arabe virtuel", "Afficher la date en arabe", etc...
Ma3a assalama,
Mister Arabic.