[RESOLU] Opérations chaine de caractère

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : [RESOLU] Opérations chaine de caractère

Re: Opérations chaine de caractère

par sirakawa » 13 janv. 2014, 22:05

Dans la première page, tu donnes le choix de la langue
<?PHP
session_start();
$langue_choisi = "fr"; //pour s'assurer qu'on a une valeur
on supppose la langue choisie par un select ou autre
$_SESSION['langue'] = $langue_choisie;
et tu construis ton url par concaténation
$suite = "http://lycee_papillon.fr/chanson?langue= $langue_choisie& ce que tuveux
Dans les autres pages
<?PHP
session_start();
$langue_choisi = $_SESSION['langue_choisie'];

Note fondamentale :
session_start() doit intervenir avant tout affichege
mais tu peux écrire
<?PHP
session_start();
$langue_choisi = $_SESSION['langue_choisie'];
?>


et reprendre le php plus loins

Re: Opérations chaine de caractère

par yoarf » 13 janv. 2014, 20:38

Ça marche avec cela :
			$adresse_courante = "http://".$_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI'];
			echo '<a href="?langue=fr'.substr($adresse_courante,stripos($adresse_courante,'langue')+9).'">Lien</a>';
Mais je pense qu'il y a peut être plus simple ...

Re: Opérations chaine de caractère

par yoarf » 13 janv. 2014, 20:30

Hello,

Oui mais en faisant cela :
<a href="?langue=fr" title="passer en français"><img src="drapalFr.png" /></a>

j'arrive sur : http://127.0.0.1/Site/index.php?langue=fr
alors que je voudrais arriver sur : http://127.0.0.1/Site/index.php?langue= ... ique&cat=2

c'est pour cela je voudrais récupérer l'adresse courante et remplacer juste la variable langue

Re: Opérations chaine de caractère

par sirakawa » 13 janv. 2014, 10:41

ou une variable de session...

Re: Opérations chaine de caractère

par moogli » 12 janv. 2014, 23:06

salut,

substr est ton amie :)


Je pense que ton système est bancale, tu peux simplement ajouter un bout script pour la gestion de la langue que tu inclus sur toute les pages (si tu as un système de template mutualisé sur toute les pages c'est super simple.

par exemple
<?php
if(!empty($_GET['langue'])) {
// traitement du changement de langue
}
ensuite les liens <a href="?langue=fr" title="passer en français"><img src="drapalFr.png" /></a>

@+

Opérations chaine de caractère

par yoarf » 12 janv. 2014, 20:00

Bonjour,

Je souhaiterai faire un lien pour passer mon site de anglais à français et inversement qui fonctionne sur n'importe quelle page et redirige vers la page courante.

Disons je suis sur la page : http://127.0.0.1/Site/index.php?langue= ... ique&cat=2
La variable $langue indique la langue.

Nous avons :
$adresse_courante = "http://".$_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI'];
puis sur cette adresse courante, je souhaterais remplacer le "fr" par "en".

Je peux utiliser la fonction suivante pour retourner la position de langue (qui varie) : stripos($adresse_courante,'langue')+1;
mais comment fais-je pour remplacer une sous chaine dans une chaine commençant à la position N de longueur L par une autre sous-chaine (afin de remplacer de "fr" par "en" et inversement).

Merci d'avance.

Yoann