Rendre visible une div dans une condition if
Résolu
philippe
-
philippe -
philippe -
Bonjour,
Dans un tableau construit avec un query j'ai les colonnes suivantes :
- date début - date fin - prénom nom - modifier - supprimer -
sur chaque ligne du tableau dans la colonne modifier je mets un bouton.
quand on clique sur ce bouton j'affiche une div avec une fonction javascript
la fonction javascript
la div au chargement de la page
le traitement du bouton_modifier
Quand les différentes conditions ne sont pas réalisées, j'affecte la valeur 0 à une variable $control_div.
Avant de sortir de la condition je teste si $control_div == 0
si c'est le cas je veux afficher la div. ET C'EST CE QUE JE N'ARRIVE PAS A FAIRE.
J'espère avoir été clair!!
Merci de votre aide
Dans un tableau construit avec un query j'ai les colonnes suivantes :
- date début - date fin - prénom nom - modifier - supprimer -
sur chaque ligne du tableau dans la colonne modifier je mets un bouton.
quand on clique sur ce bouton j'affiche une div avec une fonction javascript
la fonction javascript
function montrer_cacher(div){ document.getElementById(div).style.display = "inline"; }
la div au chargement de la page
<div id="div_modifier" style="display:none"> blablabla <input type="submit" name="bouton_modifier" value="Valider" style="width:105px;margin-left:340px "> </div>
le traitement du bouton_modifier
if (isset($_POST['bouton_modifier'])){ //vérifier les dates saisies if (!empty($_POST['modif_date_debut'])){ //vérifie la date de début if (preg_match('#^([0-9]{2})([/])([0-9]{2})\2([0-9]{4})$#', $modif_date_debut, $m) == 1 && checkdate($m[3], $m[1], $m[4])) { if (!empty($_POST['modif_date_fin'])){ //vérifie la date de fin if (preg_match('#^([0-9]{2})([/])([0-9]{2})\2([0-9]{4})$#', $modif_date_fin, $m) == 1 && checkdate($m[3], $m[1], $m[4])) { //dates correctes : modifier l'enregistrement echo "enregistré"; $message = "Votre période de disponibilité a bien été modifiée."; } else { $control_div = 0; //montrer_cacher("div_modifier"); $message1 = "format de la date de fin de période non valide."; } } // date fin vide else { $control_div = 0; $message1 = "La date de fin de période n'est pas renseignée."; } } //date début incorrecte else { $control_div = 0; $message1 = "format de la date de début de période non valide."; } } else { $control_div = 0; $message1 = "La date de début de période n'est pas renseignée."; } if ($control_div == 0){ echo "afficher la div"; //je dois rendre la div id="div_modifier" à style="display:inline"; } }
Quand les différentes conditions ne sont pas réalisées, j'affecte la valeur 0 à une variable $control_div.
Avant de sortir de la condition je teste si $control_div == 0
si c'est le cas je veux afficher la div. ET C'EST CE QUE JE N'ARRIVE PAS A FAIRE.
J'espère avoir été clair!!
Merci de votre aide
EDIT : Ajout du LANGAGE dans les balises de code (la coloration syntaxique).
Explications disponibles ici : ICI Merci d'y penser dans tes prochains messages. |
A voir également:
- Div if
- Div c++ - Télécharger - Langages
- Remplacer #div/0 par vide ✓ - Forum Excel
- If exist ✓ - Forum Autoit / batch
- IF EXIST dans un ".bat" - Forum Programmation
- Remplacer #div0 par le chiffre 0 - Forum Bureautique
1 réponse
Salut,
Une solution si la div est affichée dans le même script que le traitement du formulaire est simplement de vérifier la valeur de la variable $control_div à l'affichage :
Si l'affichage du div n'est pas sur le même script, il faut alors transférer cette variable à la page qui affiche le div soit :
- via une redirection avec un paramètre get
- via une variable de session
Bonne journée
Une solution si la div est affichée dans le même script que le traitement du formulaire est simplement de vérifier la valeur de la variable $control_div à l'affichage :
<div id="div_modifier" <?php echo $control_div == 0 ? 'style="display:none"' : ''; ?>>
Si l'affichage du div n'est pas sur le même script, il faut alors transférer cette variable à la page qui affiche le div soit :
- via une redirection avec un paramètre get
- via une variable de session
Bonne journée
J'ai juste adapté un peu et maintenant ça marche
j'ai initialisé une variable $control_div = 1
quand le format des dates est incorrecte j'affecte 0 à $control_div et le code pour la div est devenu :
Merci encore