Gestion de Contenu, de Communauté et de groupes de travail collaboratif - Open Source, français, sécurisé, stable et performant

  • MODULES

    Pour étendre les nombreuses fonctionnalités disponibles de base - modules.npds.org est à votre disposition.

    Des modules complémentaires, une communauté de développeurs active, des forums pour vos questions ... NPDS  est aussi une plateforme de développement !
  • STYLES

    Vous cherchez des thèmes graphiques pour votre portail ou votre communauté : styles.npds.org est à votre disposition.

    Des thèmes du plus simple au plus sophistiqué. Des thèmes facilement modifiables et toujours en Open-Source - Laissez simplement parler votre imagination !
  • BIBLES

    La documentation indispensable pour personnaliser et exploiter toute la puissante de NPDS  est à votre disposition sur bible.npds.org.

    Vous pouvez participer à l'effort de documentation - rien de plus simple : contactez un membre de la Team de développement et nous vous ouvrirons un compte sur le Wiki !
Devenir membre    |    Identifiant : Mot de Passe : -
Au delà de la gestion de contenu 'classique', NPDS met en oeuvre un ensemble de fonctions spécifiquement dédiées à la gestion de Communauté et de groupes de travail collaboratif.
Il s'agit d'un Content & Community Management System (CCMS) robuste, sécurisé, complet, performant et parlant vraiment français.

Gérez votre Communauté d'utilisateurs, vos groupes de travail collaboratif, publiez, gérez et organisez votre contenu grâce aux puissants outils disponibles de base.
  • Multi langues (Français, Anglais, Allemand, Espagnol, Chinois)
  • Respect des standards : UTF8, XHTML, CSS, ...
  • Système de blocs avancés
  • Installation et administration complète et centralisée
  • Editeur HTML intégré
  • Gestionnaire de fichier en ligne
  • Gestion des groupes de membres
  • Ecriture collaborative de documents (PAD)
  • Forums évolués
  • Mini-sites (pour les membres et les groupes de travail)
  • Chat temp réel
  • Système de News et de rubriques complet (édition, révision, publication)
  • ...
Gratuit et libre (Open-Source), développé en PHP, NPDS est personnalisable grâce à de nombreux thèmes et modules et ne requiert que quelques compétences de base.
NPDS Workplace - groupe de travail collaboratif
 NPDS WorkSpace - tous l'univers du travail collaboratif.
Modéré par : developpeur jpb Jireck 
Index du Forum » » Questions » » [Résolu] - Changer de langue en un seul clic
2 pages [ 1 | 2 ]
Auteur[Résolu] - Changer de langue en un seul clic
Sylvain
48    

Sylvain
  Posté : 21-03-2015 15:23

Salut, comme beaucoup j'aimerais changer de langue en un seul clic mais en restant sur la même page.
Dans un bloc je me mets des icônes de drapeau:
"[french]<p><a href="/images/flags/english.png"><img style="float: left;" src="/images/flags/english.png" alt="" /></a></p>[/french][english]<p><a href="/images/flags/french.png"><img style="float: left;" src="/images/flags/french.png" alt="" /></a></p>[/english]

dans le but de renvoyer à l'adresse courante en y ajoutant: "&choice_user_language=english" ou "&choice_user_language=french"

Ma question est, où je trouve la variable contenant l'url de la page actuellement affichée?

Merci.

  Profil  
jpb
2677       
 

jpb
  Posté : 21-03-2015 17:13

oui il y a des solutions le mieux est que tu utilise ceci ...




//==> multilangue
// choix de la langue sans redirection sur  index, dispo que si la requete n'est p as post !
$req= $_SERVER['QUERY_STRING'];
$req1='';
$sep='';
$menlang='';
$user_language = $_COOKIE["user_language"];

if ($req != "")
{
  if (preg_match("#(choice_user_language=([^&]*&))#",$ req,$res))
  {$req1= preg_replace("#(choice_user_language=([^&]*& ))#","",$req);$sep="&amp;";}
  if (preg_match("#(choice_user_language=([^&]*))#",$req,$ res))
  {$req1= preg_replace("#(choice_user_language=([^&]*))#", "",$req);$sep="";}
  else
  { $sep="&amp;";$req1=$req;}
}

switch ($res[0])
{
    case "choice_user_language=french": $user_l anguage ='french';
        break;
    case "choice_user_language=english": $user_ language ='english';
        break;
    case "choice_user_language=chinese": $user_ language ='chinese';
        break;
    default:
        $user_language;
        break;
}

switch ($user_language)
{
    case "french":
        $menlang ='<a hr ef="'.$_SERVER['PHP_SELF'].'?choice_user_language=chinese'.$sep.$req1.'" t itle="&#x9009;&#x62E9;&#x8BED;&#x8A00;"><sub><font& nbsp;size="5" face="STFangsong">&#x4E2D;&#x6587;</font>&l t;/sub></a>&nbsp;<a href="'.$_SERVER['PHP_SELF'].'?choice_ user_language=english'.$sep.$req1.'" title="Choose your language ">English</a>';
        break;
    case "english":
        $menlang ='<a hr ef="'.$_SERVER['PHP_SELF'].'?choice_user_language=french'.$sep.$req1.'" ti tle="Choisissez votre langue">Fran&#xE7;ais</a>&nbsp ;<a href="'.$_SERVER['PHP_SELF'].'?choice_user_language=chinese'.$sep.$ req1.'" title="&#x9009;&#x62E9;&#x8BED;&#x8A00;"><su b><font size="5" face="STFangsong">&#x4E2D;&#x6587;& lt;/font></sub></a>';
        break;
    case "chinese":
        $menlang ='<a hr ef="'.$_SERVER['PHP_SELF'].'?choice_user_language=french'.$sep.$req1.'" ti tle="Choisissez votre langue">Fran&#xE7;ais</a>&nbsp ;<a href="'.$_SERVER['PHP_SELF'].'?choice_user_language=english'.$sep.$ req1.'" title="Choose your language">English</a>';
        break;     ;    
    default:
        $menlang ='';
        break;
}

if ($_SERVER['REQUEST_METHOD'] == "POST") $menlang = '';
//<== mutltilangue








moi j'utilise cela dans mon header html mais tu pourra l'adapter pour le mettre dans un bloc ...( en respectant bien sur le contexte spécifique de codage pour les blocs) ...
et l'adapter ce code à tes drapeaux ... et dans ton flux html tu écris la variable menlang

  Profil  www  
Sylvain
48    

Sylvain
  Posté : 21-03-2015 18:00

Merci pour ta réponse rapide.
Je vais bûcher ton code pour le comprendre avant de l'utiliser.
Je te tiens au courrant.

sylvain.

  Profil  
jpb
2677       
 

jpb
  Posté : 21-03-2015 18:12

pas de prob .. suis en ligne encore un moment

  Profil  www  
Sylvain
48    

Sylvain
  Posté : 21-03-2015 19:55

Bon, Je suis nouveau ici alors je ne comprends pas tout. En plus je n'ai jamais fait de PHP.
Je ne comprends pas tout à ton code mais je l'ai débarrassé de la partie chinoise.
Ce que je ne vois pas c'est où je mets le code et comment j'utilise menlang.

Donc il n'y a pas de moyen simple pour avoir l'adresse de la page actuelle?

Si tu veux voir le premier balbutiement de mon site:
http://busmuli.chez.com

  Profil  
jpb
2677       
 

jpb
  Posté : 21-03-2015 20:19

si tu veux faire un essai alors fait le dans le header.html de ton theme ...

tu ouvre une balise php colle le code et ferme la balise ...
ensuite la ou tu veux ecrire ton micro menu lang tu ouvre une autre balise php comme ceci


<?php echo $menlang?>



bon si tu n'a jamais codé avec php ca va être un peu laborieux ...




  Profil  www  
Sylvain
48    

Sylvain
  Posté : 21-03-2015 21:02

Non, pas de problème. J'ai pratiqué le fortan, des basics, python, html, le bash et même le dos. et d'autre langages que j'ai oublié.

  Profil  
jpb
2677       
 

jpb
  Posté : 21-03-2015 21:34

bo ok tu as vu le principe du code ?? apres tu n'a qu'a remplacer le texte par tes images de drapeaux..

  Profil  www  
jpb
2677       
 

jpb
  Posté : 21-03-2015 21:36

j'ai été voir ton site

  Profil  www  
Sylvain
48    

Sylvain
  Posté : 21-03-2015 22:09

> J'ai été voir ton site
Ce n'est qu'une parcelle.

Bon j'ai tout fait mais l'éditeur de source me change le <?php echo $menlang; ?>
en commentaire ''
Il va falloir que je règle ça...

Message édité par : Sylvain / 21-03-2015 22:16


  Profil  
jpb
2677       
 

jpb
  Posté : 21-03-2015 22:15

il faut que tu code en dehors de npds ?...

  Profil  www  
jpb
2677       
 

jpb
  Posté : 21-03-2015 22:16

déjà il faut bien que tu relise aussi le code que tu vas coller car ici dans le forum il est détérioré ...

  Profil  www  
jpb
2677       
 

jpb
  Posté : 21-03-2015 22:17

as tu un skype pu autre que je te donne un code propre

  Profil  www  
Sylvain
48    

Sylvain
  Posté : 21-03-2015 22:26

Je t'ai envoyé mon email en MP.

  Profil  
jpb
2677       
 

jpb
  Posté : 21-03-2015 22:45

je t'ai envoyer le code a ton adresse avec les majuscules ????

  Profil  www  
Aller à la page : [ 1 | 2 ]
Sauter à :

Temps : 0.0219 seconde(s)