utiliser la chaîne de requête dans l'URL pour afficher le contenu sur la page
-
-
Désolé,je comprends que les réponses sont desexemples,maisje trouveimportant denoter qu'ellesne doiventpas être utiliséestelles quelles.Lesentrées de l'utilisateur (comme lesparamètres de chaîne de requête)ne doivent **jamais être renvoyées sans contrôle **pour éviter les [attaques XSS] (https://en.wikipedia.org/wiki/Cross-site_scripting#Non-persistent)!** Toutes les réponses à cejour sont vulnérables à XSS **et devraient aumoinsinclure un avertissement.Sorry I understand that the answers are examples, but I find it important to note that they should not be used as-is. User input (like query string parameters) should **never be echoed unsanitized** to prevent [XSS attacks](https://en.wikipedia.org/wiki/Cross-site_scripting#Non-persistent)! **All answers so far are vulnerable to XSS** and should at least include a warning.
- 0
- 2019-08-14
- kubi
-
3 réponses
- votes
-
- 2013-08-23
Vouspouvez utiliser une session PHP,rechercher la requête dans l'objet de requête ou utiliser $ _GET avec votre URL,mais cen'estpaspour desinformations sensibles ...
Quelque chose comme ça;
Récupérez lenom du voyage àpartir de l'URL
$tripname = $_GET['tripname'];
Utilisez-le dans votretitre;
if(isset($tripname)) echo '<h1>Plan Your Trip To ' .$tripname. '</h1>';
You could use a PHP session, look in the query object for the request, or use $_GET with your url, but it's not for sensitive information...
Something like this;
Grab the trip name from the URL
$tripname = $_GET['tripname'];
Use it in your heading;
if(isset($tripname)) echo '<h1>Plan Your Trip To ' .$tripname. '</h1>';
-
Merci!Cene sontpas desinformations sensibles.Commentpourrais-jefaire ça?Thanks! This is not sensitive info. How would I go about doing that?
- 0
- 2013-08-23
- user3515
-
Celapourrait vous aider: http://www.w3schools.com/php/php_get.aspThis might help you out : http://www.w3schools.com/php/php_get.asp
- 0
- 2013-08-23
- Dan
-
Merci!Puis-jemettre cela directement sur lapage ou doit-il aller dans unfichiermodèle?Thanks! Can I put that straight onto the page, or does it need to go into a template file?
- 0
- 2013-08-23
- user3515
-
Cela dépend de l'endroit où vousen avezbesoin - s'ilne s'affiche que sur unepage qui s'exécute sur un seulmodèle,vous leplacerez là.D'oùproviennent lesinformationset où aboutiront-elles?Depends where you need it - if it's only showing on a page that runs on one template, you would put it there. Where is the information coming from, and where will it end up?
- 0
- 2013-08-23
- Dan
-
L'histoireest la suivante:j'aibeaucoup de «pages de voyage»,chacune contenant desinformations sur un certain voyage quenouseffectuons.Ensuite,ils cliquent sur «s'inscrire»,et cela les amène à unepage avec unformulaire d'inscription (formulairesgravitaires).J'aimerais que lapage (oubien la descriptionen haut duformulaire) dise "Remplissez ceformulairepour vousinscrire au voyage xxxx".The story is like this: I have a lot of 'trip pages', each of which has information about a certain trip we run. Then, they click "register", and it takes them to a page with a registration form (gravity forms). I'd like the page (or else the description on the top of the form) to say "Fill out this form to register for the xxxx trip".
- 0
- 2013-08-23
- user3515
-
J'ai donc ajouté à l'url dubouton d'inscription sur chaquepage de voyage,www.website.com/registration?trip=tripname.So I added to the url of the register button on each trip page, www.website.com/registration?trip=tripname.
- 0
- 2013-08-23
- user3515
-
Mise àjour de la réponse ci-dessus,voyez ce que vousen pensez.Updated the answer above, see what you think.
- 0
- 2013-08-23
- Dan
-
Alors,oùpourrais-jemettre ce code?So where would I put that code?
- 0
- 2013-08-23
- user3515
-
Je souhaite également utiliser lamêmefonctionnalité sur une autrepage deformulaire,oùilsnous demandent de leurenvoyer unitinéraire.Votre solutionfonctionnerait-elle?Peut-être qu'un shortcode serait unemeilleureidée??I would also like to use the same functionality on another form page, where they request for us to sent them an itinerary. Would your solution work? Maybe a shortcode would be a better idea??
- 0
- 2013-08-23
- user3515
-
Coder un shortcodenécessiteraplus detravailet detemps que cela,cela dépend donc de ce que vous voulezfaire dans l'ensemble.Le code quej'aimentionnéirait sur lapage sur laquelle setrouve leformulaire.S'ils sont sur unmodèleparticulier,commepage.php,il yirait.Coding a shortcode will require more work and time than this, so it depends what you want to do overall. The code I mentioned would go on the page the form is on. If they are on a particular template, like page.php, it would go there.
- 0
- 2013-08-23
- Dan
-
Ils sonttous les deux sur lemêmemodèle,maisje veux qu'il y ait untexte différent autour.Celapeut-il êtrefait sans un shortcode?They are both on the same template, but I want there to be different text around it. Can that be done without a shortcode?
- 0
- 2013-08-23
- user3515
-
Ou,savez-vous oùje peuxtrouver "la création de codes courtspour lesnuls" ou quelque chose dugenre?Or, do you know where I can find "creating shortcodes for dummies" or something of the sort?
- 0
- 2013-08-23
- user3515
-
Je suggère depasser dutemps sur le WP Codexet de lire les codes courts.Il y a debonnes chosesen ligne.Vouspouvezbasculerentre deuxmorceaux detexte dans lemêmemodèle,mais l'instruction conditionnelle serait une autre affaire.I suggest spending some time on the WP Codex and reading up on shortcodes. There is some good stuff online. You could switch between two pieces of text in the same template, but the conditional statement would be another matter.
- 0
- 2013-08-23
- Dan
-
J'yjetterais un œil.Qu'entendez-vouspar "Vouspouvezbasculerentre deuxmorceaux detexte dans lemêmemodèle"?I will take a look. What do you mean by "You could switch between two pieces of text in the same template"?
- 0
- 2013-08-23
- user3515
-
Vous auriezbesoin d'une condition.Vérifiez les déclarations "si";)You'd need a condition. Check out "if" statements ;)
- 0
- 2013-08-23
- Dan
-
Merci!Avec votre aideet quelques recherches sur Google,j'ai créé un shortcode debase qui renverra la valeur d'unparamètre spécifique.Codemis àjour ci-dessusThanks! With your help, and some googling, I put together a basic shortcode that will return the value of a specific parameter. Updated code above
- 0
- 2013-08-23
- user3515
-
- 2016-11-09
Selon la réponse du PO dans sa question:
Avec votre aideet quelques recherches sur Google,j'ai créé un shortcode qui renvoie la valeur den'importe quelparamètre d'url.La voici:
//THIS IS A CUSTOM SHORTCODE TO DISPLAY A PARAMETER FROM THE URL function URLParam( $atts ) { extract( shortcode_atts( array( 'param' => 'param', ), $atts ) ); return $_GET[$param]; } add_shortcode('URLParam', 'URLParam');
J'utilise le shortcode comme celui-cipour obtenir le
trip_type
àpartir demon URL:[URLParam param='trip_type']
Per the OP's answer within their question:
With your help and some Googling, I put together a shortcode that returns the value of any url parameter. Here it is:
//THIS IS A CUSTOM SHORTCODE TO DISPLAY A PARAMETER FROM THE URL function URLParam( $atts ) { extract( shortcode_atts( array( 'param' => 'param', ), $atts ) ); return $_GET[$param]; } add_shortcode('URLParam', 'URLParam');
I use the shortcode like this to get the
trip_type
from my URL:[URLParam param='trip_type']
-
Celam'a aidé,merci!Comment obtenir des valeurs àpartir des données depublication deformulaire au lieu de la chaîne de requête?This helped me, thanks! How do I get values from form post data instead of query string?
- 0
- 2018-05-22
- Amjad
-
- 2013-08-23
Voici une autreexcellentefaçon d'accomplir cela. Celane nécessiterapas de shortcodeset mettra automatiquement àjour chaquepage que vous créez où leparamètre "trip"estprésent! 1) Accédez à votre dossier dethèmeet ouvrez functions.php (ou créez-le s'ilmanque)
2) Ajoutez le code suivantet enregistrez:<?php add_filter( 'the_content', 'my_trip_filter' ); function my_trip_filter( $content ) { if ( isset($_REQUEST['trip']) && is_single() ) { $content = "<h1>Fill out this form to register for the " . $_REQUEST['trip'] . " trip</h1>" . $content; } return $content; } ?>
Ce code utilise lefiltre the_content pour remplacer chaquefois que vous utilisez lafonction the_content () pourimprimer lesinformations de votreblog. Il détecte si lapage demandéeest ounon une seulepage/publicationet non l'archive. Une logique supplémentaire ou des remplacementspeuvent y être ajoutés. Assurez-vous simplement de renvoyer $ content et lemessage que vous désirez sera renvoyé à l'écran.
Amusez-vousbien!Here's another great way to accomplish this. This won't require shortcodes and will automatically update each page you create where there parameter "trip" is present!
1) Navigate to your theme folder and open functions.php (or create it if it's missing)
2) Add the following code and save:<?php add_filter( 'the_content', 'my_trip_filter' ); function my_trip_filter( $content ) { if ( isset($_REQUEST['trip']) && is_single() ) { $content = "<h1>Fill out this form to register for the " . $_REQUEST['trip'] . " trip</h1>" . $content; } return $content; } ?>
This code uses the_content filter to override each time you use the function the_content() function to print your blog information. It detects whether or not the page requested is a single page/post and not the archive. Additional logic or overrides can be added to it. Just make sure you return $content and whatever message you desire will be returned to the screen.
Enjoy!
J'aimerais dire quelque chose surmapageen fonction de lapage àpartir de laquelle lapersonneest arrivée.Jepeux configurer le lien vers cettepagepour être:
Existe-t-il unmoyen d'accéder à ceparamètre afin depouvoir l'afficher sur lapage,quelquepart dansmon contenu?