Apparemment mon message n'est pas passé, je renvoie...
Bonjour,
Ceci une question de PHP, mais purement dans le cadre de SPIP. Je précise que je ne connais pas bien PHP, faute de pratique.
Je mets en place, sous forme de plugin, l'insertion d'une nouvelle boîte sur la page d'édition d'un article. Il s'agit de pouvoir sélectionner des "évaluateurs" pour l'article, en reprenant un fonctionnement proche de ce qui se fait pour les auteurs.
Je suis proche de la fin (ça n'a pas été sans peine, vu mon niveau en programmation), mais je suis actuellement bloqué à une étape où, pour faire la mise au point, j'ai besoin de récupérer la totalité de la requête passée au fichier PHP (un fichier "action"), et pas seulement les paramètres un par un. Je ne veux pas _request('redirect') et _request('script') etc..., je veux quelque chose comme _request(), qui me renverrait toute la chaîne.
J'ai essayé avec _request(), justement, mais ça me renvoie une chaîne vide, alors que le _request('redirect') renvoie quelque chose. J'ai essayé aussi avec QUERY_STRING, avec le même résultat (pour faire mes tests, j'envoie ça vers spip.log).
Merci de votre aide.
Mathieu
S'lt
Si je comprends bien ta demande, tu veux récupérer d'un coup sur une
action tout les arguments donnés. En soit cela n'est pas possible si
tu utilises _request('unargument'); (http://doc.spip.org/@_request)
Autrement tu peux tenter de passer directement par la globale PHP qui
va va bien $_GET[] et $_POST[]
Je supposes que ton idée a pour but de te simplifier la vie mais tu
vas à l'encontre d'un taux de problèmes non négligeable. En ne
filtrant pas les arguments à traiter dans ton action tu perds la
maîtrise sur les données à contrôler et donc ouvrir la porte à des
failles de sécurité.
Il est plus pertinent de clairement dire dans ton code ce que attends.
cam.lafit@azerttyu.net a écrit :
S'lt
Si je comprends bien ta demande, tu veux récupérer d'un coup sur une
action tout les arguments donnés. En soit cela n'est pas possible si
tu utilises _request('unargument'); (http://doc.spip.org/@_request)
Autrement tu peux tenter de passer directement par la globale PHP qui
va va bien $_GET et $_POST
Je supposes que ton idée a pour but de te simplifier la vie mais tu
vas à l'encontre d'un taux de problèmes non négligeable. En ne
filtrant pas les arguments à traiter dans ton action tu perds la
maîtrise sur les données à contrôler et donc ouvrir la porte à des
failles de sécurité.
Il est plus pertinent de clairement dire dans ton code ce que attends.
Ce n'était pas pour mes traitements que je voulais récupérer la totalité de la chaîne, c'était juste pour les tests (pouvoir visualiser le QUERY_STRING pour comprendre où était le problème). Finalement j'ai tâtonné autrement et j'ai résolu mon problème sans visualiser le QUERY_STRING.
J'avais bien essayé avec les variables $_SERVER, mais ça ne marchait pas.