Afficher un tableau sans recharger la page
Résolu/Fermé
wapette21
Messages postés
66
Date d'inscription
lundi 21 juillet 2008
Statut
Membre
Dernière intervention
7 octobre 2010
-
1 oct. 2009 à 11:29
wapette21 Messages postés 66 Date d'inscription lundi 21 juillet 2008 Statut Membre Dernière intervention 7 octobre 2010 - 1 oct. 2009 à 15:43
wapette21 Messages postés 66 Date d'inscription lundi 21 juillet 2008 Statut Membre Dernière intervention 7 octobre 2010 - 1 oct. 2009 à 15:43
A voir également:
- Afficher un tableau sans recharger la page
- Tableau croisé dynamique - Guide
- Supprimer une page word - Guide
- Comment imprimer un tableau excel sur une seule page - Guide
- Tableau ascii - Guide
- Comment faire un tableau - Guide
10 réponses
kij_82
Messages postés
4089
Date d'inscription
jeudi 7 avril 2005
Statut
Contributeur
Dernière intervention
30 septembre 2013
857
1 oct. 2009 à 15:20
1 oct. 2009 à 15:20
Deux solutions donc :
- soit tu charges déjà toutes tes données dans ta page sous forme de javascript, auquel cas les donnes seront visible dans le navigateur
- soit tu utilise de l'ajax, ce qui te permettra de requête un script PHP de manière transparente pour l'utilisateur, afin d'exécuter du code javascript en retour du script PHP afin de rafraichir ta page.
C'est peut etre un peu complexe comme ça l'ajax, mais c'est relativement facile quand tu as compris le principe.
Mais pour ça, encore faut-il que tu lise les liens qu'on donne...
Nous ne sommes pas là pour faire le travail à ta place, juste pour t'aiguiller, voir réellement t'aider si tu coince sur quelque chose de technique.
- soit tu charges déjà toutes tes données dans ta page sous forme de javascript, auquel cas les donnes seront visible dans le navigateur
- soit tu utilise de l'ajax, ce qui te permettra de requête un script PHP de manière transparente pour l'utilisateur, afin d'exécuter du code javascript en retour du script PHP afin de rafraichir ta page.
C'est peut etre un peu complexe comme ça l'ajax, mais c'est relativement facile quand tu as compris le principe.
Mais pour ça, encore faut-il que tu lise les liens qu'on donne...
Nous ne sommes pas là pour faire le travail à ta place, juste pour t'aiguiller, voir réellement t'aider si tu coince sur quelque chose de technique.
Alain_42
Messages postés
5361
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
894
1 oct. 2009 à 15:18
1 oct. 2009 à 15:18
Voilà avec rechargement de la page, mais la valeur selectionnée dans la liste est conservée lors de l'affichage deuxième fois
attention il faut absolument une ligne choisissez pour avoir un changement de selection dans tous les cas
<?php //le script s'appelle lui même, on recupere les valeurs postées lorsqu'il y a changement dans la liste if(isset($_POST['liste1']){ $choix=$_POST['liste1']; }else{ $choix=""; } ?> <html> <form name="form1" method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>"> <select name="liste1" onChange="submit();"> <option value="-1" <?php if($choix=="-1") echo "selected"; ?>>Choisissez</option> <!-- la condition if permet de conserver le choix lors du deuxieme affichage --> <option value="4-3-3" <?php if($choix=="4-3-3") echo "selected"; ?> >4-3-3</option> <option value="4-4-2" <?php if($choix=="4-4-2") echo "selected"; ?>>4-4-2</option> </select> </form> <?php //la on va inclure tes tableaux en fonction des choix if(isset($_POST['liste1']){ switch ($choix){ case "4-3-3": include "tableau1.jpg"; //ce que tu veux break; case "4-4-2": include "tableau2.jpg"; //ce que tu veux break; case "-1": echo "Vous devez choisir une valeur !"; break; } } ?> </html>
attention il faut absolument une ligne choisissez pour avoir un changement de selection dans tous les cas
Alain_42
Messages postés
5361
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
894
1 oct. 2009 à 11:58
1 oct. 2009 à 11:58
sans recharger la page, la solution c'est Ajax
ç'est une fonction javascript/ajax qui sur le onChange appelle un script php sur le serveur, en lui passant en argument le choix liste1 , ce script va lire dans une BDD et renvoie la réponse.
cette réponse lorsqu'elle est reçue par le script Ajax est "écrite" ou tu veux dans un <div id="reponse"></div> dans ta page par
document.getElementById("reponse").innerHTML=la_reponse_a_la_requette
et tout ça sans recharger la page
ç'est une fonction javascript/ajax qui sur le onChange appelle un script php sur le serveur, en lui passant en argument le choix liste1 , ce script va lire dans une BDD et renvoie la réponse.
cette réponse lorsqu'elle est reçue par le script Ajax est "écrite" ou tu veux dans un <div id="reponse"></div> dans ta page par
document.getElementById("reponse").innerHTML=la_reponse_a_la_requette
et tout ça sans recharger la page
kij_82
Messages postés
4089
Date d'inscription
jeudi 7 avril 2005
Statut
Contributeur
Dernière intervention
30 septembre 2013
857
1 oct. 2009 à 11:58
1 oct. 2009 à 11:58
Bonjour,
Bien sur, c'est tout à fait réalisable avec javascript et PHP.
Je vois que tu souhaites affichés différemment ta table selon ce qui est sélectionnée. Ce qui veut donc dire que tu devra faire appel à du PHP qui ira chercher les informations de ta table en fonction de la sélection pour ensuite modifié sans rechargement ta table dans ta page.
Une solution est d'utiliser Ajax et les objets XHR. Pour comprendre leur fonctionnement, je t'invite à parcourrir cette astuce et appliquer le système à ton cas :
https://www.commentcamarche.net/faq/18745-utilisation-de-l-objet-xmlhttprequest
Ensuite, une fois que tu as commencé, si tu as le moindre problème (après un minimum de réflexion si possible ^^), tu peux toujours poser tes questions techniques ici pour qu'on y réponde.
Edit: Alain plus rapide :p, ce que dit Alain est détaillé dans l'astuce si tu veux y jeter un coup d'oeil, avec un exemple normalement.
Bien sur, c'est tout à fait réalisable avec javascript et PHP.
Je vois que tu souhaites affichés différemment ta table selon ce qui est sélectionnée. Ce qui veut donc dire que tu devra faire appel à du PHP qui ira chercher les informations de ta table en fonction de la sélection pour ensuite modifié sans rechargement ta table dans ta page.
Une solution est d'utiliser Ajax et les objets XHR. Pour comprendre leur fonctionnement, je t'invite à parcourrir cette astuce et appliquer le système à ton cas :
https://www.commentcamarche.net/faq/18745-utilisation-de-l-objet-xmlhttprequest
Ensuite, une fois que tu as commencé, si tu as le moindre problème (après un minimum de réflexion si possible ^^), tu peux toujours poser tes questions techniques ici pour qu'on y réponde.
Edit: Alain plus rapide :p, ce que dit Alain est détaillé dans l'astuce si tu veux y jeter un coup d'oeil, avec un exemple normalement.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
watou
Messages postés
199
Date d'inscription
vendredi 27 juin 2008
Statut
Membre
Dernière intervention
19 avril 2013
28
1 oct. 2009 à 12:05
1 oct. 2009 à 12:05
<select name='table' onChange='affichetable()'> <option>table1</option> <option>table2</option> </select> <div id='champ'><div> // tu va ecrire dynamiquement à cet endroit !!
la fonction affichetable() !!
function affichetable()
{
var code='<table>';
code += <tr><td>.....</td>...............</tr>
.......
code += '</table>';
// j'espere que tu as compris !!
//tu ecris le code html de ta table sous forme d'une chaine de caractères !
// puis tu l'inseres dans l'emplacement de la balise <div> !!
document.getElementById("champ").innerHTML = code;
}
wapette21
Messages postés
66
Date d'inscription
lundi 21 juillet 2008
Statut
Membre
Dernière intervention
7 octobre 2010
5
1 oct. 2009 à 14:12
1 oct. 2009 à 14:12
Merci a vous deux, je vais regarder cette astuce.
wapette21
Messages postés
66
Date d'inscription
lundi 21 juillet 2008
Statut
Membre
Dernière intervention
7 octobre 2010
5
1 oct. 2009 à 14:17
1 oct. 2009 à 14:17
Re Bonjour,
Je viens de finir la doc, le seul problème c'est que les donnée sont stocker en base si je souhaite selon la valeur du select faire un include ("toto.php") c'est toujours possible ?
Merci
Je viens de finir la doc, le seul problème c'est que les donnée sont stocker en base si je souhaite selon la valeur du select faire un include ("toto.php") c'est toujours possible ?
Merci
Alain_42
Messages postés
5361
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
894
1 oct. 2009 à 14:26
1 oct. 2009 à 14:26
si je souhaite selon la valeur du select faire un include ("toto.php") c'est toujours possible ?
sans ajax non car un include c'est du php et php = rechargement page
par contre en Ajax, le script php appelé peut très facilement lire les données dans ta base correspondant à la valeur sélectionnée et renvoyer le résultat qui sera affiché dans ta page par Ajax/reponse
sans ajax non car un include c'est du php et php = rechargement page
par contre en Ajax, le script php appelé peut très facilement lire les données dans ta base correspondant à la valeur sélectionnée et renvoyer le résultat qui sera affiché dans ta page par Ajax/reponse
wapette21
Messages postés
66
Date d'inscription
lundi 21 juillet 2008
Statut
Membre
Dernière intervention
7 octobre 2010
5
1 oct. 2009 à 15:00
1 oct. 2009 à 15:00
Il est peut etre possible de recharger la page sur un onclick du selecte avec un variable pour affiche un tableau deja définit dans une condition ?
exemple : http://assfootnco.free.fr/exemple.JPG
Je voudrais changer le tableau en fonction de la valeur du select.
Merci
exemple : http://assfootnco.free.fr/exemple.JPG
Je voudrais changer le tableau en fonction de la valeur du select.
Merci
wapette21
Messages postés
66
Date d'inscription
lundi 21 juillet 2008
Statut
Membre
Dernière intervention
7 octobre 2010
5
1 oct. 2009 à 15:43
1 oct. 2009 à 15:43
Super la méthode d'alain me vas bien, en ce qui concerne l'utilisation de ajax j'ai pas tout a fait compris mais ca reste un peu complique pour une première expérience cependant je vais mis mettre pour optimisé certain partie de mon dev par la suite.
Merci a vous
A+
Merci a vous
A+