Actualiser une option sans bouton submit

Fermé
Yuushi_Sato Messages postés 104 Date d'inscription mardi 1 décembre 2009 Statut Membre Dernière intervention 18 février 2021 - Modifié le 28 déc. 2019 à 10:40
jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 - 28 déc. 2019 à 13:31
Bonjour,

Voilà j'ai plusieur design et je les gère de cette facon :

<?php

if (!isset($_POST['titletheme'])) {
?>
<div style="position:fixed;z-index: 99999;text-align: center;bottom:0px;width:100%;height:26px;background:black;"><div>
<form method="post" action="<?= $_SERVER['REQUEST_URI'] ?>"><label style="color:white;">Changer de thème : </label>
<select name="titletheme" onchange="this.form.submit();" style="width:300px;background:white;">
<option value="Design-Hard-Core" <?php if($_COOKIE['titletheme'] == 'Design-Hard-Core'){echo 'selected="selected"';} ?> onchange="history.go(0)">Design Vers. 1.00 - Design-Hard-Core</option>
<option value="Design-Worlds" <?php if($_COOKIE['titletheme'] == 'Design-Worlds'){echo 'selected="selected"';} ?> onchange="history.go(0)">Design Vers. 1.10 - Design-Worlds</option>
<option value="Script-Design" <?php if($_COOKIE['titletheme'] == 'Script-Design'){echo 'selected="selected"';} ?> onchange="history.go(0)">Design Vers. 1.20 - Script-Design</option>
<option value="Lister-Site" <?php if($_COOKIE['titletheme'] == 'Lister-Site'){echo 'selected="selected"';} ?> onchange="history.go(0)">Design Vers. 2.00 - Lister-Site</option>
<option value="Side-Design" <?php if($_COOKIE['titletheme'] == 'Side-Design'){echo 'selected="selected"';} ?> onchange="history.go(0)">Design Vers. 2.20 - Side-Design</option>
<option value="Soft-Light-Design" <?php if($_COOKIE['titletheme'] == 'Soft-Light-Design'){echo 'selected="selected"';} ?> onchange="history.go(0)">Design Vers. 3.00 - Soft-Light-Design</option>
<option value="Script-Light-Design" <?php if($_COOKIE['titletheme'] == 'Script-Light-Design'){echo 'selected="selected"';} ?> onchange="history.go(0)" onchange="location.reload()">Design Vers. 4.00 - Script-Light-Design</option>
<option value="Classix-Modern" <?php if($_COOKIE['titletheme'] == 'Classix-Modern'){echo 'selected="selected"';} ?> onchange="history.go(0)">Design Vers. 5.00 - Classix-Modern</option>
<option value="VideoStories" <?php if($_COOKIE['titletheme'] == 'VideoStories'){echo 'selected="selected"';} ?> onchange="location.reload()">Design Vers. 6.00 - VideoStories</option>
</select>


</form><br><br><br></div></div>
<?php

$titletheme = $_COOKIE['titletheme'];
} else {
$titletheme = $_POST['titletheme'];
?>
<div style="position:fixed;z-index: 99999;text-align: center;bottom:0px;width:100%;height:26px;background:black;"><div>
<form method="post" action="<?= $_SERVER['REQUEST_URI'] ?>"><label style="color:white;">Changer de thème : </label>
<select name="titletheme" onchange="this.form.submit();" style="width:300px;background:white;">
<option value="Design-Hard-Core" <?php if($_COOKIE['titletheme'] == 'Design-Hard-Core'){echo 'selected="selected"';} ?> onchange="history.go(0)">Design Vers. 1.00 - Design-Hard-Core</option>
<option value="Design-Worlds" <?php if($_COOKIE['titletheme'] == 'Design-Worlds'){echo 'selected="selected"';} ?> onchange="history.go(0)">Design Vers. 1.10 - Design-Worlds</option>
<option value="Script-Design" <?php if($_COOKIE['titletheme'] == 'Script-Design'){echo 'selected="selected"';} ?> onchange="history.go(0)">Design Vers. 1.20 - Script-Design</option>
<option value="Lister-Site" <?php if($_COOKIE['titletheme'] == 'Lister-Site'){echo 'selected="selected"';} ?> onchange="history.go(0)">Design Vers. 2.00 - Lister-Site</option>
<option value="Side-Design" <?php if($_COOKIE['titletheme'] == 'Side-Design'){echo 'selected="selected"';} ?> onchange="history.go(0)">Design Vers. 2.20 - Side-Design</option>
<option value="Soft-Light-Design" <?php if($_COOKIE['titletheme'] == 'Soft-Light-Design'){echo 'selected="selected"';} ?> onchange="history.go(0)">Design Vers. 3.00 - Soft-Light-Design</option>
<option value="Script-Light-Design" <?php if($_COOKIE['titletheme'] == 'Script-Light-Design'){echo 'selected="selected"';} ?> onchange="history.go(0)" onchange="location.reload()">Design Vers. 4.00 - Script-Light-Design</option>
<option value="Classix-Modern" <?php if($_COOKIE['titletheme'] == 'Classix-Modern'){echo 'selected="selected"';} ?> onchange="history.go(0)">Design Vers. 5.00 - Classix-Modern</option>
<option value="VideoStories" <?php if($_COOKIE['titletheme'] == 'VideoStories'){echo 'selected="selected"';} ?> onchange="history.go(0)" onchange="location.reload()">Design Vers. 6.00 - VideoStories</option>
</select>


</form></div></div>
<?php
//On met dans un cookie d'une durée de vie d'un an
$timestamp_expire=time()+365*24*3600;
setcookie('titletheme',$titletheme,$timestamp_expire);
}
switch($titletheme) {

case 'Design-Hard-Core' :
// Titre du Thème
$titletheme = 'Design-Hard-Core';
// Version du Site
$version = '1.00 <small>[ Local Edition ]</small>';
// Titre du site
$titlesite = 'XTREM-SAGAS';
// Slogan du site
$slogan = gethostname().' - Un site regroupant toutes les Fiches & Sagas MP3';
break;

case 'Design-Worlds' :
// Titre du Thème
$titletheme = 'Design-Worlds';
// Version du Site
$version = '1.10 <small>[ Local Edition ]</small>';
// Titre du site
$titlesite = 'SAGA-PHONIX';
// Slogan du site
$slogan = gethostname().' - Un site regroupant toutes les Fiches & Sagas MP3';
break;

case 'Script-Design' :
// Titre du Thème
$titletheme = 'Script-Design';
// Version du Site
$version = '1.20 <small>[ Local Edition ]</small>';
// Titre du site
$titlesite = 'XTREM-SAGAS';
// Slogan du site
$slogan = gethostname().' - Un site regroupant toutes les Fiches & Sagas MP3';
break;

case 'Lister-Site' :
// Titre du Thème
$titletheme = 'Lister-Site';
// Version du Site
$version = '2.00 <small>[ Local Edition ]</small>';
// Titre du site
$titlesite = 'ZONE HDD or SSD';
// Slogan du site
$slogan = gethostname().' - Fiches à Consulter & Ecoute de Sagas MP3';
break;

case 'Side-Design' :
// Titre du Thème
$titletheme = 'Side-Design';
// Version du Site
$version = '2.20 <small>[ Local Edition ]</small>';
// Titre du site
$titlesite = 'ZONE HDD';
// Slogan du site
$slogan = gethostname().' - Fiches à Consulter & Ecoute de Sagas MP3';
break;

case 'Soft-Light-Design' :
// Titre du Thème
$titletheme = 'Soft-Light-Design';
// Version du Site
$version = '3.00 <small>[ Local Edition ]</small>';
// Titre du site
$titlesite = 'DATA BASE';
// Slogan du site
$slogan = gethostname().' - Base de Données & Descriptions';
break;

case 'Script-Light-Design' :
// Titre du Thème
$titletheme = 'Script-Light-Design';
// Version du Site
$version = '4.00 <small>[ Local Edition ]</small>';
// Titre du site
$titlesite = 'DATA BASE';
// Slogan du site
$slogan = gethostname().' - Base de Données & Descriptions';
break;

case 'Classix-Modern' :
// Titre du Thème
$titletheme = 'Classix-Modern';
// Version du Site
$version = '5.00 <small>[ Local Edition ]</small>';
// Titre du site
$titlesite = 'DATA BASE';
// Slogan du site
$slogan = gethostname().' - Base de Données & Descriptions';
break;

case 'VideoStories' :
// Titre du Thème
$titletheme = 'VideoStories';
// Version du Site
$version = '6.00 <small>[ Local Edition ]</small>';
// Titre du site
$titlesite = 'DATA BASE';
// Slogan du site
$slogan = gethostname().' - Base de Données & Descriptions';
break;

}
//expiration du cookie
$timestamp_expire = time() + 365*24*3600;
setcookie('titletheme', $titletheme, $timestamp_expire);





// Propulsé par
$powered = 'Administrateur';

// Conçu par
$conceived = 'Etnix';

//Lien du Design
$template = 'public/themes/'.$_COOKIE['titletheme'].'/index.php';

// Liens de pointage
$coverlink = 'http://'.$_SERVER['SERVER_NAME'].'/WebSite/Project/public/covers';

// Liens de pointage
$covericon = 'http://'.$_SERVER['SERVER_NAME'].'/WebSite/Project/public/themes/'.$titletheme.'/icones';

// Liens de pointage
$imgvote = 'http://'.$_SERVER['SERVER_NAME'].'/WebSite/Project/public/images/vote/etoile.jpg';

?>


Mon problème est le suivant, lorsque je clique sur la page le bouton option affiche bien le design voulu mais ma page ne change pas de design alors que quand je re-clique dessus il s'affiche.

Donc j'aimerais savoir comment rendre cela automatique, dés le premier clique (avec javascript
ou AJAX mais je connais pas).

Mon code est un peu brouillon, désolé.

Configuration: Macintosh / Opera Next 65.0.3467.78

3 réponses

jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 4 650
28 déc. 2019 à 11:21
Bonjour,

Sûrement un souci de cache
Il faut donc le désactiver
https://developer.mozilla.org/fr/docs/Web/HTTP/Headers/Cache-Control
1
Yuushi_Sato Messages postés 104 Date d'inscription mardi 1 décembre 2009 Statut Membre Dernière intervention 18 février 2021 1
28 déc. 2019 à 11:43
Bonjour jordane45

N'a t'on pas la possibilité de faire la redirection automatique grace à la sélection d'une des balise option, à l'aide de javascript ou autre si possible.
0
jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 4 650
28 déc. 2019 à 13:31
Une redirection en JS ?
Si... https://www.google.com/search?q=javascript+redirect
Et pour déclencher l'évènement sur le choix dans une balises <select>.. il suffit d'utiliser l'event ONCHANGE
0