Bonjour,
je souhaiterai afficher une information suite à la modification de ma base de données par le biais d'un formulaire.
Pour faire plus simple, j'affiche un bandeau avec un message indiquant "enregistrement terminé" ou "échec de l'enregistrement" après le traitement de ma requête.
Pour ce faire, j'ai créé deux div comme suit :
fichier test.php
avec comme style css :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 echo '<div id="reussi">Enregistrement terminé</div>'; echo '<div id="echec">Echec de l\'enregistrement</div>';
fichier syles.css
Code CSS : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 #reussi{background: #C5E1A5;display: none;} #echec {background: #FFAB91;display: none;}
J'arrive à changer le display: none par le biais d'une fonction javascript appelée suite à clic sur un bouton:
fichier script.js
Code JavaScript : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 function messageErreur() { var div = document.getElementById("echec"); if (div.style.display === "none") { div.style.display = "block"; } else { div.style.display = "none"; } };
fichier test.php
Maintenant, je souhaiterai adapter cet appel au js dans mon fichier php à la suite de ma fonction de modification de base de données sans clic sur un bouton
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 echo'<button onclick="messageErreur()">Bouton</button>'; echo'<button onclick="messageReussi()">Bouton</button>';
fichier test.php
J'arrive à modifier le style par le biais de :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 function modification(){ //traitement sql if(nok){ // ?? appeler la fonction js messageErreur() } else{//si ok // ?? appeler la fonction js messageReussi() } }
fichier test.php
sans passer par le js, mais je trouve que c'est pas très propre...
Code : Sélectionner tout - Visualiser dans une fenêtre à part echo'<style>#echec{display: block;}</style>';
Par la suite, si j'arrive à faire ça, le must serait que le message s'efface après XX secondes... mais on verra après si c'est possible !!
En vous remerciant par avance de votre aide
Cordialement
Lunick







Répondre avec citation
Partager