Page 1 sur 1

[Résolu]Selon vous quoi faire?

Publié : 25 oct. 2005, 19:14
par Bacchus
Une question simple: Quel est la meilleur méthode?

Mise en situation:

Vous avez installer un style switcher en php sur votre site, il marche parfaitement bien. Parcontre, vous l'avez mis seulement sur l'index et nul part d'autre.

Vous aimeriez avoir la possibilité de changer de style sur n'importe quel page que vous visionner, mais parresse oblige, vous ne voulez pas retaper tout le formulaire sur chaque page.

Que faites-vous? Y-a-t'il une manière de l'incorporer sur toutes les pages sans réécrire le code partout?

Merci :D

Publié : 25 oct. 2005, 20:26
par SB

Publié : 26 oct. 2005, 02:51
par Bacchus
Merci, je connaissais déjà les include. Mais c'est ma faute, je me suis mal exprimer.

Il y a le fichier switcher.php on appelle via le formulaire:

Code : Tout sélectionner

<!-- Style switcher -->

<fieldset>
<form action="switcher.php" method="post" id="switcher">
<label for="set" id="presentation"></label>
<select name="set" id="set">
<option value="" selected="selected">Choisissez un style</option>
<option value="style">Dark Style</option>
<option value=".....">....</option>
</select><br /><br />

<input type="submit" class="button" value="Zou!" />
<input type="hidden" name="adresse" value="<?php echo $_SERVER['PHP_SELF'] ; ?>" />
</form>
</fieldset>
<!-- End Style switcher -->
Ce formulaire est seulement sur l'index (c'étais pour les tests) et maintenant je veux qu'il soit sur toutes les pages. Mais j'ai pas envie de réécrire le formulaire sur toutes les pages.

Croyez-vous que si je le met dans un fichier appart et que je l'appelle avec un include cela marchera quand même?

Publié : 26 oct. 2005, 09:50
par SB
Oui, à condition que toutes tes pages soient dans le même dossier. Si tu as des pages dans des dossiers différents, lorsque le formulaire incorporé cherchera "switcher.php" il ne le trouvera pas. Dans ce cas j'utilise dans la page d'inclusion une syntaxe du genre :

Code : Tout sélectionner

<?php
$racine = "";
include $racine."formulaire.php";
?>
et dans le fichier à inclure (par exemple formulaire.php)

Code : Tout sélectionner

<!-- Style switcher -->

<fieldset>
<form action="<?php echo $racine; ?>switcher.php" method="post" id="switcher">
<label for="set" id="presentation"></label>
<select name="set" id="set">
<option value="" selected="selected">Choisissez un style</option>
<option value="style">Dark Style</option>
<option value=".....">....</option>
</select><br /><br />

<input type="submit" class="button" value="Zou!" />
<input type="hidden" name="adresse" value="<?php echo $_SERVER['PHP_SELF'] ; ?>" />
</form>
</fieldset>
<!-- End Style switcher -->
Pour toutes les pages se trouvant dans le même dossier que formulaire.php et switcher.php ça fonctionne. Pour les pages situées dans un sous-dossier je change $racine = ""; en $racine = "../"; ou $racine = "../../"; pous les pages dans un sous-dossier de sous-dossier et ainsi de suite selon la profondeur du sous-dossier. Pas hyper élégant mais ça fonctionne.

Publié : 26 oct. 2005, 18:35
par Bacchus
Merci je vais tester ça :wink:

Publié : 27 oct. 2005, 19:46
par Bacchus
Chouette!

Ça marche comme un charme!

Merci.

Publié : 27 oct. 2005, 21:16
par SB
De rien. Quand on peut aider... :wink:

Publié : 08 nov. 2005, 06:59
par Bacchus
Ouais je sais, chuis lent à mort! :oops: :lol:

Ça marchait à demi seulement, l'affichage ce faisait partout mais il ne marche pas. Pas moyen de changer de style dans la liste déroulante!

J'ai du faire une gaffe à quelque part ^^

Publié : 08 nov. 2005, 08:10
par SB
A quoi ressemble ton fichier switcher.php ?

Publié : 08 nov. 2005, 19:26
par Bacchus_non_connecter
switcher.php:

Code : Tout sélectionner

<?php
setcookie ('sitestyle', $set, time()+31536000, '/', 'users.rockweb.org', '0');
header("Location: $adresse");
?>
chgstyle.php:

Code : Tout sélectionner

<!-- Style switcher -->

<form action="<?php echo $root; ?>switcher.php" method="post" id="switcher">
<fieldset>
<!-- <label for="set" id="presentation">Changez de thème</label> -->
<select>
<option value="" selected="selected">Choisissez un style</option>
<option value="style">Dark Style</option>
<option value="litestyle">Lite Style</option>
<option value="naked">Naked Style</option>
<option value="blood">Blood Style</option>
<option value="dotparking">DoTParking</option>
</select>
<input type="submit" class="button" value="Zou!" />
<input type="hidden" name="adresse" value="<?php echo $_SERVER['PHP_SELF'] ; ?>" />
</fieldset>
</form>
<!-- End Style switcher -->
Et dans les fichier html:

Code : Tout sélectionner

<?php 
$root = ""; 
include $root."chgstyle.php"; 
?>
Voila ;)