Bonjour,
Voila j'ai fait un site en deux langues (français et anglais). J'aimerai trouver un script qui me permette de changer de langue tout en restant sur la même page.
Par exemple mon site en français pointe sur https://adressedusite.com/fr et en anglais sur https://adressedusite.com/en

Si un visiteur est sur la page (par exemple) :
https://adressedusite.com/fr/page3.php et qu'il souhaite voir la même page mais en version anglaise, qu'il tombe au clic sur le drapeau anglais sur https://adressedusite.com/en/page3.php

Si vous avez un tuyau sur un script me le permettant ce serait cool.
Merci d'avance
Bon ma difficulté c'est que le request_uri extrait la langue de la page sur laquelle le script se trouve donc il reste sur la langue de la page.

Par exemple je prends le meme script que j'installe sur la version française ET sur la version anglaise .

Pour tester le code et voir ce qu'il me retourne, j'ai fait

<?php
$french_link = str_replace("/$current_lang/",  '/fr/', $_SERVER['REQUEST_URI']);
echo $french_link;
?>

quand je suis sur la version française il m'affiche un /fr/pagexx.php (donc il garde la page en version française) et quand je suis sur la version anglaise il m'affiche /en/pagexx.php (alors que j'aimerai que ce soit l'inverse) .

Je pense que mon problème vient du faire que ma version française se trouve dans un dossier fr et ma version anglaise dans un dossier en (le REQUEST_URI me retourne le dossier avec, et ne prend pas en compte celui qui est mentionné dans le script)
Modifié par newbyfr (16 Dec 2022 - 17:12)
Hum, mais que vaut ta variable $current_lang ?

Quand tu es sur une page /en/pagexx.php $current_lang doit valloir 'en' et ensuite cela remplacera "/en/" par "/fr/" dans ton adresse

C'est normal que $_SERVER['REQUEST_URI'] contiennent le fr et le en, l'idée c'est de le remplacer avec la fonction str_replace
Modifié par Mathieuu (16 Dec 2022 - 17:32)
J'ai oublié de créer ma variable $current_lang je suppose
la variable ne se trouve nulle pas, le script ne peut pas la trouver
Modifié par newbyfr (16 Dec 2022 - 18:17)
C'était effectivement ça.
Dans ma page anglaise j'ai ajouté un
$current_lang="en";
dans le script
Maintenant ça fonctionne nickel.
Merci de ton aide