Est t'il possible de passer des paramètres dans l'url dans Drupal

je suis désolé d'ouvrir le même sujet; mais ce problème je dois le résoudre.
Je voudrais savoir si dans Drupal, je pense que oui, je peux faire ceci
passer des paramètres et leurs valeurs dans une url et rediriger l'utilisateur en utilisant la fonction de drupal de header?
une fois que le user a soumis le formulaire, la fonction header de drupal est appelée, et dans l'url on a les paramètres ?

Merci


anka
Posts: 45
Joined: 2008-01-14

Bien,
je sais que Drupal n'accepte pas les formulaires dont la méthode est paramétrée à "get"; du coup comment faire pour trans mettre des paramètres dans l'url, en faisant une redirection de la forme:

<?php
header
("Location: http://www.monsite.com/index.php?param1=".$valeur1."&param2=".$valeur2);
?>

sachant que les paramètres viennent d'un formulaire;

En raison de ma connaissance peu étendu de Drupal je n'y suis pas arrivé.

La solution que j'ai utilisé c'est de créer un fichier de traitement qui récupère les paramètres dans l'url avant de faire la redirection.

Cette méthode n'est pas drupalienne, mais elle fonctionne.

j'aimerais bien connaitre la façon drupalienne de transmettre des paramètres dans l'url d'un header().
Si quelqu'un a une idée, suis vrainment intéressé

Merci



guillaumeb
Posts: 12
Joined: 2007-01-11

Il faut utiliser la fonction 'l' de drupal qui sert à faire des liens :

http://api.drupal.org/api/function/l/5 et remplir le paramètre $query.



Damien Tournoud
Posts: 473
Joined: 2005-08-02

Heu. drupal_goto() ?



terriea
Posts: 2
Joined: 2007-01-16

Si j'ai bien compris tu veux que quand on tape http://www.tonadresse.com/toto/tata tu veux récupérer deux variables une avec toto et une avec tata ?

Cherche du côté du hook_menu et du système de menu en général. Je maîtrise pas totalement mais tu dois pouvoir faire quelque chose comme ca :

<?php
function mymodule_menu() {
 
$items['%var1/%var2'] = array(
   
'page callback' => 'process_values',
   
'page arguments' => array(0, 1),
   
'type' => MENU_CALLBACK,
  );
  return
$items;
}

function
process_values($var1, $var2) {
// Do somthing
}
?>

Grosso modo le système de menu lance l'exécution d'une fonction lorsqu'une url particulière est parsée. Les arguments 0 et 1 seront remplacés par les morceaux d'url corespondant et passés a la fonction de callback.
J'espère que ca va t'aider.



anka
Posts: 45
Joined: 2008-01-14

Bonjour,
désolé de n'avaoir pas répondu de sitot; en fait ce que je veux c''est de créer un formulaire
lorsque je le valide je passe les paramètres dans l'url pour que l'utilisateur soit rediréigé vers un autre site;

j'ai réussi à le faire mais c'est pas à la façon drupal;

je vais réfléchir à ton code, soon, et je tiens au courant;

merci