Partage
  • Partager sur Facebook
  • Partager sur Twitter

Site dynamique, $_GET PHP...

    22 avril 2017 à 16:14:55

    Bonjour à tous.

    Je suis en train de développé un site sur une seule page contenant des load() etc pour le rendre dynamique... enfin vous l'aurez compris un site où on ne navigue pas sur 50 page différentes.

    Par ce fait j'aimerai savoir si sans actualiser la page, il est possible d'envoyer un paramètre $_GET et le récupérer en PHP également sans actualiser.

    J'aimerai en gros sur un modal, intégré les pages de profil, et récupérer le $_GET['profile'] qui contiendrait un id afin de faire mon select en PHP

    Le lien serait : index?profile=1

    quand je ferais un $_GET['profile'] sur le modal directement après cela m'afficherai 1 sans que j'ai actualiser la page.

    Auriez-vous des solutions ?

    PS: j'ai essayé un window.history.pushState pour changer l'url, mais comme la page n'est pas chargé directement, c'est comme si le paramètres GET n'existait pas :(

    -
    Edité par xNeed_PHP 22 avril 2017 à 16:16:42

    • Partager sur Facebook
    • Partager sur Twitter
      22 avril 2017 à 18:46:18

      Changer l'url je ne sais pas mais pour récupérer du php dynamiquement il faudrait utiliser ajax, je te laisse faire les recherches :p
      • Partager sur Facebook
      • Partager sur Twitter
        22 avril 2017 à 21:27:43

        Beignet a écrit:

        Changer l'url je ne sais pas mais pour récupérer du php dynamiquement il faudrait utiliser ajax, je te laisse faire les recherches :p


        Plus d'infos ?
        • Partager sur Facebook
        • Partager sur Twitter
          23 avril 2017 à 13:58:32

          https://openclassrooms.com/courses/un-site-web-dynamique-avec-jquery/le-fonctionnement-de-ajax

          ;)

          Pour utiliser $.ajax il te faut jQuery.

          Ensuite par exemple, tu veux envoyer un message en PHP via un formulaire mais sans actualisation:

          <form id="monformulaire" action="tonfichier.php" method="POST" enctype="multipart/form-data">
          	<input type="text" name="text" value="Texte" />
          	<br /><br />
          	<input type="submit" name="submit" value="Envoyer" />
          </form>
          <script type="text/javascript">
          	$(document).on('submit', '#monformulaire', function(e) {
          		e.preventDefault(); // Empêche l'envoi du formulaire
          
          		var $form = $(this); // Récupération des données du formulaire
          		var formdata = (window.FormData) ? new FormData($form[0]) : null;
          		var data = (formdata !== null) ? formdata : $form.serialize();
          
          		$.ajax({
          			url: $form.attr('action'),
          			method: $form.attr('method'),
          			contentType: false, // Si tu envoie une image dans ton formulaire
          			processData: false, // laisse ces deux lignes
          			dataType: 'html',
          			data: data,
          			success: function(code_html, statut) {
          				alert(code_html);
          				// Si tu fais un echo en php dans ton fichier traitement alors
          				// si la requête arrive a success, dans ton alert il y aura la valeur
          				// de ton echo
          			},
          			error: function(resultat, statut, erreur) {
          				alert("Erreur durant l'envoi");
          				alert([resultat, statut, erreur]);
          			}
          		});
          	});
          </script>

          Ensuite dans ton fichier de traitement tu met le PHP "habituel"

          -
          Edité par Beignet 23 avril 2017 à 13:59:50

          • Partager sur Facebook
          • Partager sur Twitter

          Site dynamique, $_GET PHP...

          × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
          × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
          • Editeur
          • Markdown