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

Discussion :

Comment appeler une page PHP avec des paramètres ?

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    508
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Haute Vienne (Limousin)

    Informations forums :
    Inscription : Avril 2008
    Messages : 508
    Points : 100
    Points
    100
    Par défaut Comment appeler une page PHP avec des paramètres ?
    Bonjour,

    Dans mon application, j'utilise QNetworkAccessManager pour faire des requêtes HTTP sur des pages web et je n'ai pas eu de problèmes jusque là.
    Maintenant, j'ai une page web test.php où je voudrai faire la même chose mais avec une requête sur cette page du type : http://localhost/test/test.php?p=tata&n=toto.
    Mon application compile, mais la requête me renvoi une erreur !
    Comment puis je réussir à la faire fonctionner ?
    Ou peut être utiliser un simple "ping" ?

    Merci d'avance pour vos réponses, à bientôt !

  2. #2
    Responsable Qt & Livres


    Avatar de dourouc05
    Homme Profil pro
    Ingénieur de recherche
    Inscrit en
    Août 2008
    Messages
    26 618
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur de recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2008
    Messages : 26 618
    Points : 188 591
    Points
    188 591
    Par défaut


    Tu dis qu'elle te renvoie une erreur... mais j'éprouve quelque difficulté à regardé par-dessus ton épaule pour la contempler dans toute sa splendeur. Je n'ai d'ailleurs rien à ma disposition pour tenter de la recréer (déjà que je n'aime pas les faux...).

    Pourrais-tu donc apporter quelques éléments plus précis ?
    Vous souhaitez participer aux rubriques Qt (tutoriels, FAQ, traductions) ou HPC ? Contactez-moi par MP.

    Créer des applications graphiques en Python avec PyQt5
    Créer des applications avec Qt 5.

    Pas de question d'ordre technique par MP !

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    508
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Haute Vienne (Limousin)

    Informations forums :
    Inscription : Avril 2008
    Messages : 508
    Points : 100
    Points
    100
    Par défaut
    Salut dourouc05,

    Et bien mon erreur est que le reply->error() renvoi 202.

    mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    QUrl url("http://localhost/test/test.php?p=tata&n=toto");
    QNetworkRequest request(url);
    Reply = manager->get(request);
    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
     
    void AccessManager::replyFinished(QNetworkReply* reply)
    {
     
        if (reply->error() == QNetworkReply::NoError)
        {
            qDebug() << "OK !";
     
            Data = Reply->readAll();
     
        }
        else
        {
            qDebug() << reply->error();
            qDebug() << "NOK !";
     
        }
    }

  4. #4
    Responsable Qt & Livres


    Avatar de dourouc05
    Homme Profil pro
    Ingénieur de recherche
    Inscrit en
    Août 2008
    Messages
    26 618
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur de recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2008
    Messages : 26 618
    Points : 188 591
    Points
    188 591
    Par défaut
    La doc traduit ça en ContentOperationNotPermittedError (http://qt-project.org/doc/qt-4.8/qne...workError-enum), soit du 403/405 (la dernière étant extrêmement rare) en codes HTTP standard. Tu peux effectuer ta requête dans un navigateur ? Tu fais des trucs bizarres avec tes en-têtes ? Ça change quelque chose si tu ne mets pas de paramètre côté Qt (toujours en local) ?
    Vous souhaitez participer aux rubriques Qt (tutoriels, FAQ, traductions) ou HPC ? Contactez-moi par MP.

    Créer des applications graphiques en Python avec PyQt5
    Créer des applications avec Qt 5.

    Pas de question d'ordre technique par MP !

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    508
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Haute Vienne (Limousin)

    Informations forums :
    Inscription : Avril 2008
    Messages : 508
    Points : 100
    Points
    100
    Par défaut
    J'ai testé via le navigateur et ça fonctionne !

    Ça change quelque chose si tu ne mets pas de paramètre côté Qt (toujours en local) ?
    Oui, la page php attend ces paramètres !

  6. #6
    Responsable Qt & Livres


    Avatar de dourouc05
    Homme Profil pro
    Ingénieur de recherche
    Inscrit en
    Août 2008
    Messages
    26 618
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur de recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2008
    Messages : 26 618
    Points : 188 591
    Points
    188 591
    Par défaut
    Citation Envoyé par petitclem Voir le message
    Oui, la page php attend ces paramètres !
    Je me doute que tu ne les as pas mis pour faire joli. Si tu mets des valeurs par défaut dans ton script (ou si tu fais un autre script bidon sans paramètre, genre un <?php var_dump(42); ?>, juste pour voir si ça ne peut pas être une source - m'est avis que non, mais c'est la seule piste que je vois encore ).
    Vous souhaitez participer aux rubriques Qt (tutoriels, FAQ, traductions) ou HPC ? Contactez-moi par MP.

    Créer des applications graphiques en Python avec PyQt5
    Créer des applications avec Qt 5.

    Pas de question d'ordre technique par MP !

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    508
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Haute Vienne (Limousin)

    Informations forums :
    Inscription : Avril 2008
    Messages : 508
    Points : 100
    Points
    100
    Par défaut
    J'ai un script où je fais la même chose : http://localhost/test/test2.php.
    Et sans les paramètres ça fonctionne !

  8. #8
    Responsable Qt & Livres


    Avatar de dourouc05
    Homme Profil pro
    Ingénieur de recherche
    Inscrit en
    Août 2008
    Messages
    26 618
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur de recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2008
    Messages : 26 618
    Points : 188 591
    Points
    188 591
    Par défaut
    Maintenant reste à voir pourquoi ça ne passe pas avec les paramètres . Peut-être un caractère à échapper, mais je ne vois pas lequel ni pourquoi il faudrait le faire . Et si tu les passes en POST ?
    Vous souhaitez participer aux rubriques Qt (tutoriels, FAQ, traductions) ou HPC ? Contactez-moi par MP.

    Créer des applications graphiques en Python avec PyQt5
    Créer des applications avec Qt 5.

    Pas de question d'ordre technique par MP !

  9. #9
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    508
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Haute Vienne (Limousin)

    Informations forums :
    Inscription : Avril 2008
    Messages : 508
    Points : 100
    Points
    100
    Par défaut
    Re-bonjour à tous,

    j'ai trouvé la solution, si il y a une requete vers une page avec des paramètres du type http://localhost/test/test.php?p=tata&n=toto, il faut faire comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    QUrl url("http://localhost/test/test.php");
    url.addQueryItem("p", "tata");
    url.addQueryItem("n", "toto");
    QNetworkRequest request(url);
    AccessManager->get(request);
    Voila, merci encore à tous, à bientôt !

  10. #10
    Responsable Qt & Livres


    Avatar de dourouc05
    Homme Profil pro
    Ingénieur de recherche
    Inscrit en
    Août 2008
    Messages
    26 618
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur de recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2008
    Messages : 26 618
    Points : 188 591
    Points
    188 591
    Par défaut
    , c'est pas mal intéressant pour la FAQ, ça !
    Vous souhaitez participer aux rubriques Qt (tutoriels, FAQ, traductions) ou HPC ? Contactez-moi par MP.

    Créer des applications graphiques en Python avec PyQt5
    Créer des applications avec Qt 5.

    Pas de question d'ordre technique par MP !

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

Discussions similaires

  1. Comment appeler une page PHP ?
    Par Ehjoe dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 29/08/2009, 17h21
  2. Comment appeler une page excel avec JSF
    Par rabebIF5 dans le forum JSF
    Réponses: 3
    Dernier message: 02/06/2009, 08h12
  3. [POO] Comment appeler une page PHP sans iframe ?
    Par Stegue dans le forum Langage
    Réponses: 3
    Dernier message: 08/05/2007, 21h14
  4. [JQUERY] Comment appeler une fonction php avec jquery
    Par popogendarme dans le forum jQuery
    Réponses: 1
    Dernier message: 20/03/2007, 16h07
  5. Réponses: 13
    Dernier message: 01/10/2006, 15h52

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