Quelqu'un sait il s'il y a un moyen de donner une portée super globale
à une variable de type $result = pg_query($connection, $query) (je
travaille avec Postgre).
L'idée etant de faire une requete SELECT une seule fois et ensuite
d'afficher sur d'autres pages les résultats de la requete en faisant
un fetch_array sur la variable $result (ce qui permet d'eviter de
passer par un tableau contenant l integralité des résultats ou
d'utiliser la clause LIMIT / OFFSET dans le SELECT).
J'ai essayé de passer $result en $_SESSION sans succès. y a t il une
alternative ?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Olivier Miakinen
Bonjour,
Quelqu'un sait il s'il y a un moyen de donner une portée super globale à une variable de type $result = pg_query($connection, $query) (je travaille avec Postgre).
Utiliser $GLOBALS['result'] au lieu de $result : $GLOBALS étant une super globale, ça marchera depuis n'importe quelle fonction.
L'idée etant de faire une requete SELECT une seule fois et ensuite d'afficher sur d'autres pages les résultats de la requete en faisant un fetch_array sur la variable $result
Sur *d'autres pages* ??? J'ai dû mal comprendre. Si tu parles bien de pages HTML différentes, donc de requêtes HTTP différentes, et partant de là de lancements indépendants d'un process PHP, avec des connexions à la base de données indépendantes, c'est bien évidemment impossible.
(ce qui permet d'eviter de passer par un tableau contenant l integralité des résultats
Ah ben oui, il vaut mieux en effet éviter de passer l'intégralité de la base de données dans un échange de deux paquets HTTP (réponse + nouvelle requête).
ou d'utiliser la clause LIMIT / OFFSET dans le SELECT).
Il faudra m'expliquer pourquoi tu veux éviter la façon de faire la plus naturelle et la plus efficace.
y a t il une alternative ?
Je crois que tu l'as donnée toi-même : LIMIT / OFFSET.
Bonjour,
Quelqu'un sait il s'il y a un moyen de donner une portée super globale
à une variable de type $result = pg_query($connection, $query) (je
travaille avec Postgre).
Utiliser $GLOBALS['result'] au lieu de $result : $GLOBALS étant une
super globale, ça marchera depuis n'importe quelle fonction.
L'idée etant de faire une requete SELECT une seule fois et ensuite
d'afficher sur d'autres pages les résultats de la requete en faisant
un fetch_array sur la variable $result
Sur *d'autres pages* ??? J'ai dû mal comprendre. Si tu parles bien de
pages HTML différentes, donc de requêtes HTTP différentes, et partant de
là de lancements indépendants d'un process PHP, avec des connexions à la
base de données indépendantes, c'est bien évidemment impossible.
(ce qui permet d'eviter de
passer par un tableau contenant l integralité des résultats
Ah ben oui, il vaut mieux en effet éviter de passer l'intégralité de la
base de données dans un échange de deux paquets HTTP (réponse + nouvelle
requête).
ou d'utiliser la clause LIMIT / OFFSET dans le SELECT).
Il faudra m'expliquer pourquoi tu veux éviter la façon de faire la plus
naturelle et la plus efficace.
y a t il une alternative ?
Je crois que tu l'as donnée toi-même : LIMIT / OFFSET.
Quelqu'un sait il s'il y a un moyen de donner une portée super globale à une variable de type $result = pg_query($connection, $query) (je travaille avec Postgre).
Utiliser $GLOBALS['result'] au lieu de $result : $GLOBALS étant une super globale, ça marchera depuis n'importe quelle fonction.
L'idée etant de faire une requete SELECT une seule fois et ensuite d'afficher sur d'autres pages les résultats de la requete en faisant un fetch_array sur la variable $result
Sur *d'autres pages* ??? J'ai dû mal comprendre. Si tu parles bien de pages HTML différentes, donc de requêtes HTTP différentes, et partant de là de lancements indépendants d'un process PHP, avec des connexions à la base de données indépendantes, c'est bien évidemment impossible.
(ce qui permet d'eviter de passer par un tableau contenant l integralité des résultats
Ah ben oui, il vaut mieux en effet éviter de passer l'intégralité de la base de données dans un échange de deux paquets HTTP (réponse + nouvelle requête).
ou d'utiliser la clause LIMIT / OFFSET dans le SELECT).
Il faudra m'expliquer pourquoi tu veux éviter la façon de faire la plus naturelle et la plus efficace.
y a t il une alternative ?
Je crois que tu l'as donnée toi-même : LIMIT / OFFSET.