Bonjour,
Dans le cadre d’un CMS où les pages de styles sont encode dans une base de données, afin de pouvoir les modifiés et (re)-généré le fichier css.
J’ai donc une page php qui m’affiche les données provenant de ma base de données en fonction de l’id de la page css reçu via $_GET page.php?id=1 .
Jusque là tous va bien, les styles généraux comme les styles @media spécifique s’affiche parfaitement !
Le problème que je rencontre c’est lors de la mise à jour des styles (généraux et/ou @media), le résultat de la soumission de mon formulaire, quand je fait un print_r($_POST) ne m’affiche que les styles généraux.
Et il semblerais aussi qu’une seul valeurs transmise, soit prise en compte
Pourriez –vous m’aiguiller sur où se situerais le problème
J'ai des champs de formulaire respectifs pour les styles généraux écrits comme suit :
Code html : Sélectionner tout - Visualiser dans une fenêtre à part <input type="text" name="<?= $item['property_name'] . '_' . $item['styles_id']; ?>" class="form-control form-control-sm" value="<?= htmlspecialchars_decode($item['property_value']); ?>">
Et pour les styles @media comme celui-ci*:
Code html : Sélectionner tout - Visualiser dans une fenêtre à part <input type="text" name="<?= $max_600px_style['property_name'] . '_' . $max_600px_style['styles_id']; ?>" class="form-control form-control-sm" value="<?= htmlspecialchars_decode($max_600px_style['property_sm_value']); ?>">
Itéré par foreach.
HTML du formulaire*:
Code html : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 <form method="post" action="page.php"> <!-- Fields for general styles --> <div class="row pb-1"> <div class="col-xl-3">btn-caption</div> <div class="col-xl-3">color</div> <div class="col-xl-3"><input type="text" name="color_23" class="form-control form-control-sm" value="#808080"></div> <div class="col-xl-1"><input type="text" name="" class="form-control form-control-sm" value="Yes"></div> </div> <!-- Fields for @media styles --> <div class="row pb-1"> <div class="col-xl-3">btn-caption</div> <div class="col-xl-3">font-size</div> <div class="col-xl-3"><input type="text" name="font-size_25" class="form-control form-control-sm" value="9px !important"></div> <div class="col-xl-3"></div> </div> </form>
petite précision sur le code du formulaire il n'est pas complet, mais le résultat $_POST représente bien le fait que en aucun cas les media queries ne sont prise en compte, hors elle s'affiche bien sur ma page
PHP pour le traitement des données du formulaire (page.php)*:
Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 <?php // Display data received via $_POST print_r($_POST); ?>
Résultat de $_POST après la soumission du formulaire*:
Voila en gros ce qui se passe ou se qu'il ne se passe pas je devrais plutôt dire , mais je beau chercher je vois pas où est le soucisArray
(
[color_23] => #80808
[background-color_24] => #f5f5f5
[font-size_25] => 10px !important
[font-family_26] => 'Acme-Regular', sans-serif
[text-transform_27] => uppercase
[background-color_28] => #f5f5f5
[color_29] => #8A2BE2
[right_9] => 15%
[bottom_10] => 0.7rem
[left_11] => 5%
[padding-top_12] => 1.25rem
[padding-bottom_13] => 1.25rem
[text-align_14] => left
[font-size_20] => 1rem
[font-family_21] => 'Dosis-Bold', sans-serif
[color_22] => #fff
[font-size_17] => 1.75rem
[font-family_18] => 'Josefin-Bold', sans-serif
[color_19] => #242424
[maj] =>
)
Partager