11
votes

Ne peut pas passer la connexion mysqli en session en php

J'essaie de passer une session avec la connexion MySQLI pour plusieurs requêtes sur le site, mais lorsque j'essaie de faire une requête, il émet un avertissement "Impossible de chercher MySQLI"

$_SESSION['db']=new mysqli($host,$username,$password,$db);


0 commentaires

3 Réponses :



2
votes

Les connexions de base de données sont des ressources et ne peuvent pas être stockées dans une session. Vous devrez reconstruire la connexion dans chaque page ou utiliser un Connexion persistante (PHP 5.3+).


0 commentaires

1
votes

Ouais - Vous ne pouvez pas passer à une session. La poignée est spécifique à la demande. Vous pourrez peut-être le mettre dans une ressource partagée comme Memcache et récupérer la poignée lorsque vous en avez besoin.

Cependant, si vous utilisez la connexion de la connexion, en saisissant une nouvelle poignée lorsque vous avez besoin (et la fermeture de la fermeture lorsque vous avez terminé) n'est pas une grande performance.

dépend toujours de vos besoins, mais oui, je:

  • Créez une nouvelle poignée lorsque vous en avez besoin / par demande / (Allumez la mise en commun de la connexion)
  • Collez le dbhandle dans MemCache

0 commentaires