Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

probleme de bouton dans page tpl et script php

3 views
Skip to first unread message

Punky Brewster

unread,
Sep 16, 2010, 5:33:54 PM9/16/10
to
Bonjour

Je cherche à faire quelque chose de simple à priori :

Quand je clique sur un bouton sur une page tpl, un script dans un autre
fichier php est appelé et ce script fait un "touch /tmp/$toto" ($toto est
récupéré depuis le tpl)

Pouvez-vous m'aider pour la mise en forme du script et du bouton svp

merci

Olivier Miakinen

unread,
Sep 16, 2010, 5:55:05 PM9/16/10
to
Le 16/09/2010 23:33, Punky Brewster a écrit :
>
> Je cherche à faire quelque chose de simple à priori :

;-)

(je souris parce que la plupart du temps, quand je lis ce genre de
remarque préliminaire, c'est suivi de la description d'une usine à
gaz -- je te rassure, ça ne semble pas être le cas ici)

> Quand je clique sur un bouton sur une page tpl,

Pour ma culture personnelle, c'est quoi une page tpl ?

> un script dans un autre fichier php est appelé

<form action="http://example.com/script.php" method=...>
<input type=... name="toto" value=...>
<input type="submit" name="potiron" ...>
</form>

> et ce script fait un "touch /tmp/$toto" ($toto est
> récupéré depuis le tpl)

<?php
$toto = $_REQUEST["toto"];
if (tests draconiens pour vérifier que $toto ne va pas tout casser) {
touch("/tmp/$toto");
} else {
die();
}
?>

> Pouvez-vous m'aider pour la mise en forme du script et du bouton svp


Cordialement,
--
Olivier Miakinen

Punky Brewster

unread,
Sep 16, 2010, 6:30:57 PM9/16/10
to
Le Thu, 16 Sep 2010 23:55:05 +0200, Olivier Miakinen a écrit :

> Le 16/09/2010 23:33, Punky Brewster a écrit :
>>
>> Je cherche à faire quelque chose de simple à priori :
>
> ;-)
>
> (je souris parce que la plupart du temps, quand je lis ce genre de
> remarque préliminaire, c'est suivi de la description d'une usine à gaz
> -- je te rassure, ça ne semble pas être le cas ici)

C'est pas le cas parce que j'ai simplifié :) Derrière tout ça il y a
effectivement une usine à gaz et son gazoduc paris/mouscou.

>
>> Quand je clique sur un bouton sur une page tpl,
>
> Pour ma culture personnelle, c'est quoi une page tpl ?

D'après ce que j'ai compris c'est un fichier template qui permet de
dissocier le code et la mise en page. Mais en gros ça semble être du html
avec des {$variables}.

>
>> un script dans un autre fichier php est appelé
>
> <form action="http://example.com/script.php" method=...>
> <input type=... name="toto" value=...> <input type="submit"
> name="potiron" ...>
> </form>
>
>> et ce script fait un "touch /tmp/$toto" ($toto est récupéré depuis le
>> tpl)
>
> <?php
> $toto = $_REQUEST["toto"];
> if (tests draconiens pour vérifier que $toto ne va pas tout casser) {
> touch("/tmp/$toto");
> } else {
> die();
> }
> ?>
>
>> Pouvez-vous m'aider pour la mise en forme du script et du bouton svp
>

Ça fonctionne, la fonction voulue est appliquée (touch /tmp/$toto) mais
j'arrive sur une page blanche. Mes recherches me disent de m'orienter
vers de l'ajax, une idée ?


>
> Cordialement,

Olivier Miakinen

unread,
Sep 16, 2010, 6:46:23 PM9/16/10
to
Le 17/09/2010 00:30, Punky Brewster a écrit :
>>
>> <?php
>> $toto = $_REQUEST["toto"];
>> if (tests draconiens pour vérifier que $toto ne va pas tout casser) {
>> touch("/tmp/$toto");
>> } else {
>> die();
>> }
>> ?>
>>
>>> Pouvez-vous m'aider pour la mise en forme du script et du bouton svp
>>
>
> Ça fonctionne, la fonction voulue est appliquée (touch /tmp/$toto) mais
> j'arrive sur une page blanche.

<?php
$toto = $_REQUEST["toto"];
if (tests draconiens pour vérifier que $toto ne va pas tout casser) {
touch("/tmp/$toto");

?>
<!DOCTYPE ...>
<html>
<head>
<title>Ceci n'est pas une page blanche</title>
</head>
<body>
<p>Ceci n'est pas une page blanche</p>
<p>Vous venez de faire un touch de /tmp/<?php echo $toto; ?>.</p>
</body>
</html>
<?php
} else {
die();
}
?>

> Mes recherches me disent de m'orienter vers de l'ajax, une idée ?

Oui, c'est possible aussi : <http://www.google.fr/search?q=ajax>.

Voir également fr.comp.lang.javascript.

Cordialement,
--
Olivier Miakinen

SAM

unread,
Sep 16, 2010, 7:06:02 PM9/16/10
to
Le 16/09/10 23:33, Punky Brewster a écrit :

> Bonjour
>
> Je cherche à faire quelque chose de simple à priori :
>
> Quand je clique sur un bouton sur une page tpl,

Mécékoiça ? Travaux Publics Lillois ?

comment arrive t-on à cliquer sur un fichier template ?

> un script dans un autre fichier php est appelé
> et ce script fait un "touch /tmp/$toto" ($toto est
> récupéré depuis le tpl)

Un truc comme ça :
<http://www.asp-php.net/scripts/asp-php/template.php>
ou (un peu pareil)
<http://www.asp-php.net/ressources/bouts_de_code.aspx?id=792>

> Pouvez-vous m'aider pour la mise en forme du script et du bouton svp

D'après ce que je comprends on se fait :
- un fichier PHP de fonctions ('template.php')
- un fichier html (en fait, tpl : 'truc.tpl' )
dont certains trucs "dynamiques" sont des espèces de variables
- le fichier maître en php, celui qui sera appelé dans l'url
qui include :
- le moteur (fichier de fonctions)
- le canevas ou template (tpl)
et liste les "variables dynamiques" pour les traiter par les fonctions
avant d'enfin envoyer les qques lignes de code html résultantes

Donc, grosso modo,
1) tu te fais un fichier unique de test en php
qui arrive à faire fonctionner ton bouton
2) quand ça fonctionne
tu scindes en 3 fichiers (fonctions, canevas, maître)
3) si tu as d'autres trucs tu les dispatches dans ces fichiers
suivant le même principe

Pour la partie (1) je suppose qu'il faudra un bout de JavaScript
utilisant XMLHttpRequest afin d'aller titiller le fichier php qui va
faire le "touch" et probablement en récupérer le résultat.

il faudra donc prévoir un nième fichier, cette fois de JS ...
qui pourra être appelé dans le head de 'truc.tpl' j'imagine

<script type="text/javascript" src="touch.js"></script>
</head>
<body>
<p><button onclick="touch({toto})">comptage</button>
<span id="compt"></span>

toto à définir dans les fichiers fonctions + maître
le span 'compt' pour afficher le résultat du clic (optionnel)

Pour 'touch.js' et sa fonction touch(fichier) à y créer, voir :
<https://developer.mozilla.org/fr/AJAX/Premiers_pas>

--
Stéphane Moriaux avec/with iMac-intel

SAM

unread,
Sep 16, 2010, 8:53:21 PM9/16/10
to
Le 17/09/10 01:06, SAM a écrit :

>
> <p><button onclick="touch({toto})">comptage</button>

<p><button onclick="touch('{toto}')">comptage</button>

--
Stéphane Moriaux avec/with iMac-intel

Punky Brewster

unread,
Sep 20, 2010, 5:18:36 AM9/20/10
to

Ok j'y vais de ce pas merci pour les réponses.

>
> Cordialement,

0 new messages