Précédent   Forum des professionnels en informatique > PHP > Bibliothèques et frameworks > Templates > Smarty
Smarty Forum d'entraide sur le moteur de templates Smarty. Avant de poster -> FAQ Smarty et Cours Smarty
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 13/03/2011, 18h56   #1
Invité de passage
 
Inscription : juin 2009
Messages : 16
Détails du profil
Informations forums :
Inscription : juin 2009
Messages : 16
Points : 0
Points : 0
Par défaut Gestion site multilangue

Bonjour

Voila j'essaie d'utiliser smarty j'ai suivi plein de tuto, mais la je sèche

Voila je voudrais que mon site utilise plusieurs langages et dans mon fichier tpl il ne veulent pas s'afficher.

En faites le probleme est que je voulais utiliser mon fichier de langue dans les fichiers php et tpl.

Dans mon php a cette partie $error_message = Bad_password; ça marche mais dans mon template {$Username} sa ne fonctionne pas. j'ai regardé dans plein de script qui utilise smarty mais je n'ai rien trouvé

Si quelqu'un pouvait m'aider se serais sympa

voici mon tpl
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
{include file="header.tpl"}
 
 
    	<div id="corpshaut"></div>
        	<div id="corps">
    		<p>
			{if $error == '1'}<center><span style="color:red;">{$error_message}</span></center>{/if}
<form method="post" action="{$url->url_base}/login.php">
	<div align="center">
	<table border="0" cellpadding=5>
		<tr><td><label for="username"><b>{$Username} :</b></label></td><td align=left><input type="text" size=40 name="username" id="username" /></td></tr>
		<tr><td><label for="password"><b>{$Password}:</b></label></td><td align=left><input type="password" size=40 name="password" id="password" /></td></tr>
		<tr><td colspan="2" align="center"><input name="login" value="" type="submit" /><BR><BR><i></i></td></tr>
	</table>
	</div>
 
</form>
<p align="center"><a href="{$url->url_base}/login.php"></a> | <a href="account-recover.php"></a></p> 
</p>   
          <div style="clear: both"></div>
 
    		</div> 
    	<div id="corpsbas"></div>
Mon fichier php
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
<?php
 
 
 
/** include header **/
include("header.php");
loadLanguage('lang-login');
/** set page name **/
$page = 'login';
 
/** reset error vars **/
$error = 0;
$error_message = '';
 
/** do login **/
if(isset($_POST['login']))
{
   /** get username and password **/
   $username = mysql_real_escape_string($_POST['username']);
   $password = mysql_real_escape_string($_POST['password']);
 
   /** check if all required fields are filled **/
   if(empty($username) || empty($password))
   {
      $error = 1;
	  $error_message = Require_field;//info langage dans le fichier de langue
   }else
 
 
   /** check login details **/
   $query = mysql_query("SELECT id, password, secret, status, enabled  FROM users WHERE username = '".$username."' AND password = '".sha1($password)."' LIMIT 1");
   if(mysql_num_rows($query) == 0)
   {
      $error = 1;
	  $error_message = Bad_password;//info langage dans le fichier de langue
   }else
 
   /** no error? **/
   if($error == 0)
   {
      /** get users info **/
	  $query = "SELECT users FROM members WHERE username = '".$username."' AND password = '".sha1($password)."' LIMIT 1";
	  $row = mysql_fetch_array(mysql_query($query));
 
      /** set sessions **/
	  $_SESSION['username'] = $row['username'];
	  $_SESSION['userid'] = $row['id'];
	  $_SESSION['logged_in'] = true;
	  //if($row['is_admin'] == '1'){ $_SESSION['is_admin'] = true; }
 
	  /** redirect **/
	  redirect($url->url_base . '/index.php');
 
	  /** exit **/
	  exit;
   }
}
 
/** include footer **/
include("footer.php");
 
?>
et mon fichier de langue
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php
define('Username', 'Pseudo');
define('Password', 'Mot de passe');
define('Connect', 'Connexion');
define('Cockies', 'Vous devez accepter les coockies');
define('Connects', 'Connexion au site');
define('Register', 'S\'enregistrer');
define('Recover', 'Mot de passe perdu');
define('Sorry_user', 'Désolé cette page est réservée aux membres');
define('Bad_user', 'Nom d\'utilisateur incorrecte');
define('Account_pending', 'Votre compte est actuellement en cours veuillez consulter votre courrier électronique');
define('Bad_password', 'Mot de passe incorrecte');
define('Account_disable', 'Ce compte a été désactivé par un administrateur.');
define('Require_field', 'Vous ne devez laisser aucun champ vide');
?>
McGyver59280 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/03/2011, 21h48   #2
Expert Confirmé
 
Avatar de krachik
 
Inscription : décembre 2004
Messages : 1 957
Détails du profil
Informations forums :
Inscription : décembre 2004
Messages : 1 957
Points : 2 646
Points : 2 646
Bonjour

Tu as juste manqué de lire l'essentiel de smarty pour afficher une variable php dans le template

Il faudrait juste que dans ton fichier php tu assignes les variables au template, par exemple
Code :
1
2
3
$smarty->assign("Username", Username);
$smarty->assign("error_message", $error_message);
...
A moins que ça se trouve dans ton footer.php, on ne voit pas non plus de display de ton template
__________________
Je suis ce que je suis grâce à ce que nous sommes tous Humanité aux Humains!! !

Entre ce que je pense, ce que je veux dire, ce que je crois dire, ce que je dis ce que vous avez envie d'entendre, ce que vous croyez entendre, ce que vous entendez, ce que vous avez envie de comprendre, ce que vous comprenez ... Il y a dix possibilités que nous ayons des difficultés à communiquer. Mais essayons quand meme ....... E. Wells
krachik est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/03/2011, 11h22   #3
Invité de passage
 
Inscription : juin 2009
Messages : 16
Détails du profil
Informations forums :
Inscription : juin 2009
Messages : 16
Points : 0
Points : 0
Merci beaucoup de ta réponse. Mais je vais me retourner sur le moteur de phpbb2, et ensuite on verra. De toute façon je fais des essai pour apprendre le fonctionnement
McGyver59280 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 19h52.


 
 
 
 
Partenaires

Hébergement Web