IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

jQuery Discussion :

Envoi d'une variable objet vers une autre page


Sujet :

jQuery

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2013
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2013
    Messages : 10
    Points : 5
    Points
    5
    Par défaut Envoi d'une variable objet vers une autre page
    Bonjour à tous, je viens vous expliquer mon modeste problème, je développe actuellement un site mobile sous jquery mobile, ce site contient un formulaire d'inscription, lesquelles données de ce formulaire, sont stockées en localhost, afin d'être envoyées plus tard. (l'idée est que le site tournera en local sur des salons, où l'on ne dispose pas de l'acces internet, les infos seront donc stockées et ensuite synchronisées à une bdd).

    Le problème est que je n'arrive pas comprendre précisément comment envoyer mes variables récupérées du localhost vers un autre page, je sais qu'il y a plein de moyens... J'ai par exemple essayé la méthode fournie avec jquery jQuery.post... sans succès...

    Merci de votre aide, j'ai commencé Javascript il y a moins d'une semaine, donc soyez indulgents si je semble vous étaler des énormités.

    Merci beaucoup !

  2. #2
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 663
    Points
    66 663
    Billets dans le blog
    1
    Par défaut
    Montre nous une tentative de $.post ....

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2013
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2013
    Messages : 10
    Points : 5
    Points
    5
    Par défaut
    Code : 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
    17
    18
    <html><title>post fom java</title>
     
    <head>
    <script src="jquery-2.0.0.js"></script>
    </head>
     
    <body>
     
    <a href="test.php" id="target"  data-role="button"> poster </a>
     
    <script>
    var test="Teach";
    $("#target").click(function() 
    {
      $.post("test.php", {"test":test});
    });
    </script>
    </body>
    Voici ma page html avec le petit bout de javascript (ce n'est pas mon site c'est juste pour tester la fonction d'envoi).



    et voici le php:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <?php ;
    $recup=$_POST['test'];
    echo $recup;
    ?>
    A l'affichage de la page test.php il me donne une erreur ligne 3 et n'affiche rien d'autre.

  4. #4
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 663
    Points
    66 663
    Billets dans le blog
    1
    Par défaut
    pour commencer le title c'est DANS le head ...
    ensuite il faut inhiber ton href avec un preventDefault()

    et eventuellement une fonction de callback ...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    var test="Teach";
    $("#target").click(function(e) 
    {
    e.preventDefault();
      $.post("test.php", {"test":test},function(data){alert(data)});
    });

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2013
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2013
    Messages : 10
    Points : 5
    Points
    5
    Par défaut
    Merci de ta réponse rapide, je n'ai pas exactement compris ce que tu entends par inhiber mon href ? j'ai ajouté le preventdefault, mais ne suis pas sur d'avoir compris ce que fait la fonction ... Si j'ai bien compris, le preventdefault rend mon lien inclicable, mais quel est l'intérêt ?

  6. #6
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 663
    Points
    66 663
    Billets dans le blog
    1
    Par défaut
    l'interet est MAJEUR

    javascript ne survit pas à un changement de page (ni rechargement)

    un lien href envoie sur une autre page...

    Il semble alors evident que les deux ne font pas bon menage, il ne faut pas esperer que le code javascript de la page s'execute si tu quittes la page ...
    il faut donc empecher que le href envoie sur une autre page ...

    Sinon il faut revoir ta conception

  7. #7
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2013
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2013
    Messages : 10
    Points : 5
    Points
    5
    Par défaut
    Je ne comprends pas... comment vérifier que le post marche bien si je ne peux pas quitter la page ? moi ce que je veux pour le moment c'est juste envoyer une valeur à une autre page par JS et voir si elle le recoit :S

  8. #8
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2013
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2013
    Messages : 10
    Points : 5
    Points
    5
    Par défaut
    Pour ne pas quitter la page et quand même ouvrir la page php pour vérifier, j'ai mis le href dans un nouvel onglet, mais ça ne marche toujours pas :S

    Code : 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
    17
    18
    19
    <html>
     
    <head>
    <title>post fom java</title>
    <script src="jquery-2.0.0.js"></script>
    </head>
     
    <body>
     
    <a href="test.php" target="_blank" id="target"  data-role="button"> poster </a>
     
    <script>
    var name="Teach";
    $("#target").click(function() 
    {
     $.post("test.php", {test:name},function(){alert("Paramètre envoyé")});
    });
    </script>
    </body>

  9. #9
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 663
    Points
    66 663
    Billets dans le blog
    1
    Par défaut
    Je pense que tu n'as pas saisi les mecanismes d'ajax ...
    Dis nous plutot ce que tu cherches à faire exactement ...

  10. #10
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2013
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2013
    Messages : 10
    Points : 5
    Points
    5
    Par défaut
    En effet je n'ai surement pas saisi les mécanisme d'ajax, du moins pas encore.

    Mon programme stocke des informations sous forme d'objets stringifiés avec json dans le localstorage.

    Ce que je veux faire, c'est faire un script JS, qui permet lorsque j'ai une connexion internet, de récupérer les infos du locastorage, de les reconvertir en objet, et de les envoyer à une BDD 4D.


    Bien sur, ça c'est l'idée finale, là je cherchais juste à tester une fonction jquery qui me semblait correspondre à mes attentes...

  11. #11
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    j'ai commencé Javascript il y a moins d'une semaine
    Je ne suis pas sûr que vouloir faire ce genre de choses est la meilleure façon de débuter en JavaScript...
    Il y a quand même, comme dans tous les domaines, des bases incontournables à connaitre avant de se lancer dans des projets ambitieux.

  12. #12
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2013
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2013
    Messages : 10
    Points : 5
    Points
    5
    Par défaut
    Ma foi tu diras ça à mon maître de stage, c'est le boulot qu'on m'a donné, c'est mon stage de fin d'année, et je n'en ai pas trouvé d'autre...

  13. #13
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 663
    Points
    66 663
    Billets dans le blog
    1
    Par défaut
    c'est vrai que javascript est à la portée de tous ...

  14. #14
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2013
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2013
    Messages : 10
    Points : 5
    Points
    5
    Par défaut
    Ok c'est bon, j'ai compris comment marchaient les fonctions, j'ai utilisé le preventdefault pour bloquer la redirection, et j'ai vérifié la bonne réception des données par un console.log().

    J'aurais aimé moins de sarcasmes et plus d'enthousiasme, ce n'est pas toujours facile de débuter la programmation, merci de votre aide quand même !


    Je poste le code pour d'éventuelles personnes dans le besoin
    Code : 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
    17
    18
    19
    20
    21
    22
    23
    <html>
     
    <head>
    <title>post fom java</title>
    <script src="JS/jquery-2.0.0.js"></script>
     
     
    </head>
     
    <body>
     
    <a href="test.php" target="_blank" id="target"  data-role="button"> poster </a>
     <p id="result"></p>
     
    <script>
    var name="Teach";
    $("#target").click(function(e) 
    {
     e.preventDefault();
     $.post("test.php", {test:name},function(rep){console.log(rep)}); /*La valeur transmise à la page test.php est récupérée par la donction function(rep) qui l'affiche dans la console*/
    });
    </script>
    </body>
    Quant à la page php:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    <?php 
    header('Content-type: application/json');
     
    echo json_encode($_POST);
     
    ?>

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Toutes versions] Copie objet d'une base externe vers une autre base externe
    Par guen dans le forum VBA Access
    Réponses: 1
    Dernier message: 09/10/2009, 10h35
  2. [XL-2003] extraction de la totalité d'une listbox multicolonne vers une variable de type range
    Par Umaro137 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 07/08/2009, 15h02
  3. Réponses: 3
    Dernier message: 17/06/2008, 17h05
  4. Réponses: 5
    Dernier message: 22/05/2008, 14h42
  5. copie d'une table Y d'une base A vers une table X d'une base
    Par moneyboss dans le forum PostgreSQL
    Réponses: 1
    Dernier message: 30/08/2005, 21h24

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo