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 29/03/2011, 10h25   #1
Invité de passage
 
Femme oueslati amani
Développeur informatique
Inscription : mars 2011
Messages : 10
Détails du profil
Informations personnelles :
Nom : Femme oueslati amani
Localisation : Tunisie

Informations professionnelles :
Activité : Développeur informatique
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : mars 2011
Messages : 10
Points : 0
Points : 0
Par défaut changer une page php en smarty

salem,
je suis débutant en smarty et php.j'ai un code ajouter une personne dans une seul page ajouter.php et je veux diviser en deux page php et tpl
svp comment modifier cette code

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
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
------
Ajouter.php
------
 
<code type="php">
<html >
<head>
<title>Ajouter des personnes</title>
</head>
 
<body bgcolor=pink>
 
<form name="ajout" method="post" action="Ajouter.php" onSubmit="return verif()" >
 
<table width="440" align="center" >
<caption align="center" >
<strong> <h2>Ajouter des personnes : </h2></strong><strong></strong>
</caption>
 
<?
if (isset($_POST['Ajout']))
{
$n1 = $_POST['Nom'];
$p1 = $_POST['Prenom'];
$e1 = $_POST['Email'];
$t1 = $_POST['tel'];
$d1 = date('Y-m-d');
$pos2 = strpos($e1, '@');
$pos3 = strpos($e1, '.');
if($n1=="")
echo'<tr><b><td align="left"><script language="javascript"> document.write("tapez votre nom"); </script></td> </b></tr>';
elseif($p1=="")
echo'<tr><b><td align="left"><script language="javascript"> document.write("tapez votre penom"); </script></td> </b></tr>';
 
elseif(empty($t1) || (strlen($t)<8))
echo'<tr ><b><td align="left"><script language="javascript"> document.write("tapez votre tel"); </script></td> </b></tr>';
elseif (strpos($e1, '@') <> false || strpos($e1, '.') <> false )
echo'<tr ><b><td align="left"><script language="javascript"> document.write("adresse email nom valide:Votre email doit comporter un "@" et un ".""); </script></td> </b></tr>';
$pos = strpos($e1, '@');
$pos1 = strpos($e1, '.');
if(!empty($n1) && !empty($p1) && !empty($t1) && $t1>=8 && !empty($e1) && $pos <> false && $pos1 <> false)
{
// Connexion au serveur
mysql_connect('localhost','root','') or die("erreur de connexion au serveur");
// Connexion à la base
mysql_select_db('formation') or die("erreur de connexion a la base de données");
// Creation et envoi de la requete
$requet_sql='INSERT INTO user (nom,prenom,tel,email,date_ajout) VALUES ("'.$n1.'","'.$p1.'","'.$t1.'","'.$e1.'","'.$d1.'")';
$res=mysql_query($requet_sql) or die ('Erreur SQL ! '.mysql_error());
 
echo'<tr align=center "><b><td align="left"><script language="javascript"> document.write("Insertion accepter"); </script></td> </b></tr>';
// Deconnexion de la base de donnees
mysql_close();
}
}
?>
 
<tr width="84" align="left">
<td height="43" align="left"><strong><em> Nom :</em></strong></td>
<td><em>
<input type="text" name="Nom" size=30 />
</em></td></tr>
<tr> <td width="126" height="39" align="left"><strong><em> Prenom :</em></strong></td>
<td width="302" align="left"><input type="text" name="Prenom" size=30 /></td></tr>
<tr> <td width="126" height="39" align="left"><strong><em> Telephone :</em></strong></td>
<td width="302" align="left"><input type="text" name="tel" size=30 /></td></tr>
<tr width="76" align="left">
<td width="126" height="39" align="left"><strong><em> Email :</em></strong></td>
<td><input type="text" name="Email" size=30 />
</td></tr>
</table>
<br/>
 
<table width="195" align="center" >
 
<tr >
<td width="98" height="36" align="center"><input type="submit" name="Ajout" value="Ajouter" /></td>
<td width="97" height="36" align="center"><input type="reset" name="annuler" value="annuler"></td>
</tr>
</table>
 
</form>
<FORM action="liste.php" >
<table width="498" align="center" >
<tr><td width="512" align="center">
<INPUT type="submit" value="Liste des personnes" align="absmiddle">
</td></tr></table>
</FORM>
 
</body>
</html> 
</code>
------------------
svp aide moi
merci tout le monde
AMANI1987 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/03/2011, 10h44   #2
Nouveau Membre du Club
 
Avatar de sibelmoch
 
Homme Matthieu
Lycéen
Inscription : mars 2011
Messages : 40
Détails du profil
Informations personnelles :
Nom : Homme Matthieu
Localisation : France

Informations professionnelles :
Activité : Lycéen
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : mars 2011
Messages : 40
Points : 36
Points : 36
Si j'ai bien compris tu veux savoir comment séparer le fonctionnel de l'affichage. Pour cela d'après moi tu devrais utiliser le modèle mvc si tu connais pas réfère toi à ça.
En gros ton code php doit être dans un fichier .php et ton formulaire doit se trouver dans un fichier .tpl ne contenant que de l'html et des balises smarty et ton contrôleur est le lien entre les deux c'est lui qui se charge de récupérer les données issues de ton formulaire et c'est également lui qui envoie les résultats à tes vues.
sibelmoch est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/03/2011, 10h58   #3
Invité de passage
 
Femme oueslati amani
Développeur informatique
Inscription : mars 2011
Messages : 10
Détails du profil
Informations personnelles :
Nom : Femme oueslati amani
Localisation : Tunisie

Informations professionnelles :
Activité : Développeur informatique
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : mars 2011
Messages : 10
Points : 0
Points : 0
merci pour ton attention
je ne travail pas avec MVC .j'ai commancé à travailler dans une boite de developpement site web et je suis en formation et j'ai pas encore travaillé avec MVC.Mon responsable demande à moi de modifier un simple exercice de formation avec smarty.l'exercice contient pages: ajouter, modifier, supprimer,afficher un liste.donc je peut pas travailler avec MVC
AMANI1987 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/03/2011, 11h08   #4
Nouveau Membre du Club
 
Avatar de sibelmoch
 
Homme Matthieu
Lycéen
Inscription : mars 2011
Messages : 40
Détails du profil
Informations personnelles :
Nom : Homme Matthieu
Localisation : France

Informations professionnelles :
Activité : Lycéen
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : mars 2011
Messages : 40
Points : 36
Points : 36
Je suis désolé mais sans MVC je ne vois pas comment faire car en utilisant smarty tu es obligé de séparer tes vues de tes traitements donc je ne suis pas sûr que tu puisses faire autrement. Pour ce qui est de l'utilisation de smarty je te conseil d'aller voir sur smarty, celui ci est pas mal pour ceux qui débute avec les templates : http://eric-pommereau.developpez.com...iation-smarty/
sibelmoch est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/03/2011, 11h20   #5
Invité de passage
 
Femme oueslati amani
Développeur informatique
Inscription : mars 2011
Messages : 10
Détails du profil
Informations personnelles :
Nom : Femme oueslati amani
Localisation : Tunisie

Informations professionnelles :
Activité : Développeur informatique
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : mars 2011
Messages : 10
Points : 0
Points : 0
merci pour ton aide.mon responsable donne un fichier qui contient le dossier smarty, view,config,cashe.es ce que je peut travailler avec MVC
et faut il mettre les page tpl dans le dossier view?et les page php ou?
Mon problem c que la pge php contient le code smarty->display(ajouter.tpl)
si je compris bien c'ést à dire que la page ajouter.php appélle la page ajout.tpl
et je veux que la pgage ajout.tpl contient les information de nouveau personne.donc cette page appelle la page php pour ajouter lesd données à la bd?
comment ca marche!!
AMANI1987 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/03/2011, 11h29   #6
Nouveau Membre du Club
 
Avatar de sibelmoch
 
Homme Matthieu
Lycéen
Inscription : mars 2011
Messages : 40
Détails du profil
Informations personnelles :
Nom : Homme Matthieu
Localisation : France

Informations professionnelles :
Activité : Lycéen
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : mars 2011
Messages : 40
Points : 36
Points : 36
Si je peut te conseiller une arborescence ce serait celle ci :

monProjet
index.php
controleur.php

+Vues
++templates => ici tu met tes fichier .tpl
++templates_c => ce dossier contiendra tes templates compilés c'est à dire au format php, ces fichiers sont automatiquement créé par smarty
++config
++cache

+Modèles => ce dossier regroupe tout ton code php
++conteneur => ici tu met tes conteneur php
++métier => et là tes classes

Après je ne sais pas si tu vas utiliser ou nom de la programmation objet mais si tu l'utilises pas dans ce cas tu met tout tes fichiers php dans modèles et tu ne te soucis pas de conteneur et métier.

Pour tes displays, ils doivent s'effectuer au niveau de ton controleur avec ton objet smarty tu fait quelque chose du genre :

Code :
1
2
$smarty = new Smarty();
$smarty->display("ajout.tpl");
Par la suite c'est ton index.php qui va transmettre les données à ton controleur et dans ton contrôleur tu appelle ta page php en lui transmettant les données.
sibelmoch est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/03/2011, 11h37   #7
Invité de passage
 
Femme oueslati amani
Développeur informatique
Inscription : mars 2011
Messages : 10
Détails du profil
Informations personnelles :
Nom : Femme oueslati amani
Localisation : Tunisie

Informations professionnelles :
Activité : Développeur informatique
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : mars 2011
Messages : 10
Points : 0
Points : 0
quel est la différence entre
+Modèles => ce dossier regroupe tout ton code php
et
++conteneur => ici tu met tes conteneur php
et c'est quoi conteneur!!
merci beaucoup pour ton aide
si tu peux m'aider par des cours de php et smarty... qui peux m'avancé et amélioré mes connaissance informatique parce que je suis trés debutant et j'ai pas personne qui m'aide.mon responsable ne veux pas m'aider il dis toujours: tu peux chercher sur internet.et il faut etre plus rapide amani :'(
AMANI1987 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/03/2011, 11h53   #8
Nouveau Membre du Club
 
Avatar de sibelmoch
 
Homme Matthieu
Lycéen
Inscription : mars 2011
Messages : 40
Détails du profil
Informations personnelles :
Nom : Homme Matthieu
Localisation : France

Informations professionnelles :
Activité : Lycéen
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : mars 2011
Messages : 40
Points : 36
Points : 36
Les conteneurs en fait ça correspond à une classe en gros en programmation objet on a parfois besoin de les utiliser par exemple dans une maison de retraite on va avoir plusieurs chambres on utilise donc un conteneur lesChambres.php qui contient une collection d'objets chambre et ces objets chambre sont définis dans une classe Chambre.php.

Je t'ai joint un dossier comprenant une petite application mvc, programmation objet et smarty ainsi qu'un sujet de tp qui explique l'arborescence que je t'ai mis plus haut et également un pdf qui explique quelques trucs sur smarty.
Fichiers attachés
Type de fichier : gz tp smarty livres.tar.gz (4,7 Ko, 42 affichages)
sibelmoch est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/03/2011, 12h00   #9
Invité de passage
 
Femme oueslati amani
Développeur informatique
Inscription : mars 2011
Messages : 10
Détails du profil
Informations personnelles :
Nom : Femme oueslati amani
Localisation : Tunisie

Informations professionnelles :
Activité : Développeur informatique
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : mars 2011
Messages : 10
Points : 0
Points : 0
merci beaaaaaaaaaaaaacoup
AMANI1987 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 20h36.


 
 
 
 
Partenaires

Hébergement Web