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

Requêtes MySQL Discussion :

Requête Mysql Envollée


Sujet :

Requêtes MySQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 9
    Par défaut Requête Mysql Envollée
    Bonjour,
    j'ai un souci avec une solution Xampp sous windows 2000.
    J'ai mis en place un site de paiement en ligne pour une association d'intérêt générale.

    L'utilisateur entre les données dans un formulaire et après une page de vérification valide en cliquant sur un type de carte bancaire.

    Tout es ok, mais pour une raison que j'ignore, la plupart du temps l'enregistrement des données du formulaire se fait bien dans notre base mysql et parfois non! Pourtant, sur notre tableau de bord de notre compte en banque, nous voyons que le paiement est effectué et que le code de transaction généré par ma page en php est bien transmis vers la banque mais rien dans la base mysql.

    Pourriez-vous m'aider?

    Merci

  2. #2
    Membre émérite Avatar de Hervé Saladin
    Homme Profil pro
    Ingénieur d'études en développement et déploiement d'applications
    Inscrit en
    Décembre 2004
    Messages
    647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur d'études en développement et déploiement d'applications
    Secteur : Service public

    Informations forums :
    Inscription : Décembre 2004
    Messages : 647
    Par défaut
    le code de transaction généré par ma page en php est bien transmis vers la banque
    oui, mais ce code est-il correct ?
    Il faudrait avoir le retour du serveur de données, et en cas de problème afficher le message d'erreur ou mieux : le mettre dans un fichier de log.
    En tout cas on ne peut pas deviner d'ou vient le problème sans code ni message d'erreur ...

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 9
    Par défaut
    oui c'est vrai c'est flou mais bon pour info le code pour la page est le suivant :

    $serveur = mysql_connect("127.0.0.1","***","***");
    $seletbd = mysql_select_db("***", $serveur);

    $requete = "INSERT INTO `paiements` (`id`, `civilite`, `nom`, `prenom`, `entreprise`, `adresse`, `adresse2`, `cp`, `ville`, `tel`, `email`, `montant`, `projet`, `date`, `heure`, `code`, `error`, `merchant_id`, `merchant_country`, `amount`, `transaction_id`, `payment_means`, `transmission_date`, `payment_time`, `payment_date`, `response_code`, `payment_certificate`, `authorisation_id`, `currency_code`, `card_number`, `cvv_flag`, `cvv_response_code`, `bank_response_code`, `complementary_code`, `complementary_info`, `return_context`, `caddie`, `receipt_complement`, `merchant_language`, `language`, `customer_id`, `order_id`, `customer_email`, `customer_ip_address`, `capture_day`, `capture_mode`, `data`) VALUES (NULL, '$civilite', '$nom', '$prenom', '$entreprise', '$adresse', '$adresse2', '$cp', '$ville', '$tel', '$email', '$montant', '$projet', '$date', '$heure', NULL, NULL, NULL, NULL, '$montant', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, '$id_paiement', NULL, '$ip', NULL, NULL, NULL);";

    //echo $requete;
    $result = mysql_query($requete);

    mysql_close();

    La requête fonctionne tout le temps sauf quelque rare fois où comme je le disais, l'insertion dans la base ne se fait pas.

    Tu pourrais me dire justement comment générer un log à chaque requête effectué?
    J'y avais pensé mais je m'étais contenté de regarder les logs mysql.

    Merci

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 9
    Par défaut
    SO???
    Personne ne peut m'aider sur un tel souci?
    Il y a forcément une solution!?

    A l'aide

  5. #5
    Membre émérite Avatar de Hervé Saladin
    Homme Profil pro
    Ingénieur d'études en développement et déploiement d'applications
    Inscrit en
    Décembre 2004
    Messages
    647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur d'études en développement et déploiement d'applications
    Secteur : Service public

    Informations forums :
    Inscription : Décembre 2004
    Messages : 647
    Par défaut
    essayes de remplacer la ligne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $result = mysql_query($requete);
    par le code suivant :
    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
    if(!($result = mysql_query($requete)))
    {
         /* si cette condition renvoie true, c'est que la requete a buggé */
         /* donc on loggue le problème */
         if($fichierLog = fopen("/chemin/vers/fichierdelog.log", "a+"))
         {
              /* on construit la description du probleme à ajouter dans le fichier de log */
              $description = '----------'."\n";
              $description .= 'Erreur SQL survenue à la date : '.date('Y-m-d H:i:s')."\n";
              $description .= 'Requete ayant posé problème : '.$requete."\n";
              $description .= 'Erreur renvoyée par le serveur de données : '.mysql_error($serveur)."\n";
              $description .= '----------'."\n";
     
              /* on ajoute la description dans le fichier de log */
              fwrite($fichierLog, $description);
     
              /* fermeture du fichier */
              fclose($fichierLog);
         }
    }
    Petite précision :
    • je n'ai pas testé ce code, il est possible qu'il y ait une petite erreur ou deux qui trainent
    • penses à remplacer le "/chemin/vers/fichierdelog.log" (qui est un exemple) par un vrai chemin vers un vrai fichier accessible en écriture

    Les erreurs seront logguées à la suite les unes des autres dans ton fichier de log, tu n'as plus qu'a attendre que ce fichier se remplisse un peu, et il pourra t'être d'une grande utilité pour le déboguage

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 9
    Par défaut
    Ok merci beaucoup
    j'ai modifié et testé le code
    à présent il faut attendre la prochaine panne...j'espère jamais
    en tout ca merci pour tout, je te tiens au courant.

    Au passage c'est pour l'association Goodplanet.org

    bye

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

Discussions similaires

  1. Requète MySQL >> Postgresql
    Par genova dans le forum PostgreSQL
    Réponses: 3
    Dernier message: 19/08/2005, 10h05
  2. Requête MYSQL LIKE particulière
    Par TheDarkLewis dans le forum Requêtes
    Réponses: 9
    Dernier message: 05/12/2004, 16h50
  3. Arrêt de l'exécution d'une requête MySQL dans DELPHI.
    Par joelmarc dans le forum Bases de données
    Réponses: 9
    Dernier message: 11/10/2004, 17h11
  4. surcharge de requête MySQL
    Par simoryl dans le forum Requêtes
    Réponses: 4
    Dernier message: 15/06/2004, 11h43
  5. requête mysql sous php
    Par remi59 dans le forum Débuter
    Réponses: 9
    Dernier message: 03/07/2003, 11h39

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