Si je configure mon application CI pour utiliser la base de données pour la gestion de session, si une session userdata renvoie la valeur false, je peux supposer que la session de l'utilisateur a expiré. Mais que se passe-t-il si la raison réelle pour laquelle il a renvoyé la valeur false est que la connexion à la base de données n'a pas été établie avec succès?
Répondre
CI lance
A Database Error Occurred
Unable to connect to your database server using the provided settings.
ou quelque chose de similaire en cas d'échec de connexion
Ce ne se produit que si vous avez db_debut = TRUE dans votre database.php . –
Existe-t-il un moyen d'obtenir un message d'erreur plus détaillé? Par exemple, mot de passe erroné, port fermé, etc. – digz6666
Par défaut CodeIgniter erreur fatale si la base de données est chargée et ne peut pas se connecter, mais si vous avez:
$db['local']['db_debug'] = FALSE;
alors ça ne te le dira pas. Vous pouvez activer le débogage off en général, mais encore réagir à une charge a échoué en faisant ceci:
if ($this->load->database() === FALSE)
{
exit('THE END IS NIGH!');
}
Cela n'a pas vraiment fonctionné pour moi. J'utilise des groupes db et peut-être que la logique est légèrement différente ici, mais load-> database ("group", TRUE); semble retourner un objet mysql même s'il ne parvient pas à se connecter. Au lieu de cela, j'ai dû désactiver l'auto-allumage et vérifier si db-> initialize() est faux à la place. – Lewis
Oui, cette réponse ne fonctionne vraiment pas. Si la base de données est déjà chargée avec succès, les appels suivants pour charger la base de données retourneront toujours FALSE. –
Correct. Ne l'appelle pas plusieurs fois? :) –
Je teste tout ce que je trouvais et rien wokrs, la seule façon que j'ai trouvé avec DBUtil vérifier si la base de données existe.
$this->load->database();
$this->load->dbutil();
// check connection details
if(!$this->dbutil->database_exists('myDatabase'))
echo 'Not connected to a database, or database not exists';
- 1. Comment savoir si un utilisateur est connecté?
- 2. CodeIgniter Database Connection Problème
- 3. Comment savoir si le PC est connecté à un réseau?
- 4. comment savoir si Facebook est encore connecté ou non?
- 5. Comment savoir si je suis connecté à Internet
- 6. comment savoir si l'utilisateur est complètement connecté ou pas?
- 7. Iphone Comment savoir si un casque Bluetooth est connecté
- 8. Comment savoir si l'USB est connecté à un appareil Android?
- 9. Comment savoir qui est connecté à SQL Server
- 10. Comment puis-je savoir si STDIN est connecté à un terminal en Perl?
- 11. Comment savoir avec Objective-C si l'iPhone est connecté à un réseau wifi?
- 12. comment savoir si un utilisateur Facebook est connecté à Facebook se connecter à partir de C#
- 13. Comment savoir si vous vous êtes connecté à une page Web Sharepoint?
- 14. Comment savoir qui est connecté à l'application dans WPF?
- 15. Détection si Internet est connecté
- 16. Vérifiez si l'utilisateur est connecté
- 17. Codeigniter Pagination sur tableau au lieu de Database resultset
- 18. Codeigniter Count/Si
- 19. Comment savoir si ob_gzhandler fonctionne?
- 20. Comment savoir si urllib.urlretrieve réussit?
- 21. Comment savoir appareil est connecté à Wifi ou 3G, programatically
- 22. Comment créer DataBase:
- 23. Comment savoir si un message provient d'un appel ajax dans codeigniter?
- 24. Déterminer si l'utilisateur est connecté
- 25. si l'utilisateur est déjà connecté ou non?
- 26. Comment puis-je vérifier si RMI est connecté/peut être connecté?
- 27. Comment vérifier si un Socket est actuellement connecté en Java?
- 28. CodeIgniter n'autorise l'accès à certains contrôleurs que lorsqu'il est connecté
- 29. Comment détecter si un utilisateur s'est connecté à flickr?
- 30. Y at-il un moyen de savoir si un périphérique est connecté à com1 (RS-232)?
Si vous ne pouvez pas vous connecter à la base de données, alors il n'y a aucun moyen que vous allez être en mesure d'utiliser leurs données de session ... – Matthew