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

Langage PHP Discussion :

$_POST & insert = rien !?


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2006
    Messages
    188
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2006
    Messages : 188
    Par défaut $_POST & insert = rien !?
    bonsoir ,

    je desire faire une sorte de banque , afin que mes users peuvent s'echanger de l'argent virtuel

    voici mon code qui fonctionne en local mais pas sur le serveur.

    Il y a une case pour l'identifiant de la personne et une pour le nombre de credit

    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
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
     
    <?php
    if ( isset($_POST['credit']) )
    {
    $nom = $_POST['credit']   ;
    $lko = $_POST['id'] ;
    $mlo = $_SESSION['id_user'];
    $id_user=$_SESSION['id_user'];
    $hote = *;
    $base = *;
    $user = *;
    $pass = *;
    $cnx = mysql_connect ($hote, $user, $pass) or die (mysql_error ());
    $redt = mysql_select_db ($base) or die (mysql_error ());
         $req = "SELECT id_user , credit ".
    "FROM utilisateur WHERE id_user='".$id_user."' ";
    $ret = mysql_query ($req) or die (mysql_error ());
    if ( $col = mysql_fetch_array($ret) ) {
    if($col['credit']< $nom){ echo"pas assez de credits!"; exit();} else {
     
    $hote = *;
    $base = *;
    $user = *;
    $pass = *;
    $cnx = mysql_connect ($hote, $user, $pass) or die (mysql_error ());
    $redt = mysql_select_db ($base) or die (mysql_error ());
    $req = "UPDATE utilisateur SET credit = credit + '".$nom."' WHERE id_user ='".$lko."' ";
    $retd = mysql_query ($req) or die (mysql_error ());
    $redd = "UPDATE utilisateur SET credit = credit - '".$nom."' WHERE id_user = '".$mlo."' ";
    $ref = mysql_query ($redd) or die (mysql_error ());
    $oi=$_SESSION['id_user'];
    $reddd = "INSERT INTO action_cred ( id_user , id_donneur , montant , id_receveur , date ) VALUES ( '".$oi."' , '".$oi."' , '".$nom."' , '".$lko."' ) ";
    $refx = mysql_query ($reddd) or die (mysql_error ());
                                                        exit();
     }          }
    }
    ?>
    Message d'erreur: aucun , fonctionne mais pas d'echange des credits

  2. #2
    Inactif  
    Avatar de Kerod
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    11 672
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 11 672
    Par défaut
    Ton $_post contient bien une valeur différente de 0 ?? As tu vérifié ?

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2006
    Messages
    188
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2006
    Messages : 188
    Par défaut
    oui , si je mets 9999 credit et l'identifiant 5 , ca ne va pas

    pas d'insertion en db aussi

  4. #4
    Membre éprouvé
    Avatar de Anduriel
    Homme Profil pro
    Ingénieur intégration
    Inscrit en
    Février 2004
    Messages
    2 290
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur intégration

    Informations forums :
    Inscription : Février 2004
    Messages : 2 290
    Par défaut
    Ca veut dire quoi pas d'échange de crédit?

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2006
    Messages
    188
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2006
    Messages : 188
    Par défaut
    au niveau des updates certainement

    si toi tu veux mettre 500credits a une personnes du forum (virtuel hein) , ton compte dois etre diminuer de 500 et celui du receveur augmenter de 500

    ceci ne se fait pas

  6. #6
    Membre éclairé Avatar de riesseg
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    415
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 415
    Par défaut
    1. Il va dans ton if ?
    2. Il y'a des variables dans tous tes POST ?
    3. if($col['credit']< $nom){ echo"pas assez de credits!";hum... comparer un nom a un taux de credit ??
    Edit:
    Oh, aussi $col[credit] etant le nb de credit de l'utilisateur, et $nom le nombre a transferer, il faut que $col[credit] > a $nom
    4. UPDATE utilisateur SET credit = credit + '".$nom."' j'ai un serieux doute sur cette syntaxe... Fait tes calculs avant et mets les dans des variables.
    5. "INSERT INTO action_cred ( id_user , id_donneur , montant , id_receveur , date ) manque pas des $ a tour de bras ?

    Apres je pense que tes variables sont pas tres explicites...
    En relisant le code, je trouve que:
    $nom = $_POST['credit'] ;
    Alors que $credit = $_POST['credit']; est plus explicite...
    Pareil pour:
    $mlo = $_SESSION['id_user'];
    $id_user=$_SESSION['id_user'];Pkoi 2 variables pour 1 valeur

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2006
    Messages
    188
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2006
    Messages : 188
    Par défaut
    bonsoir , le probleme n'est toujours pas reglé.

    Citation Envoyé par riesseg
    1. Il va dans ton if ?
    2. Il y'a des variables dans tous tes POST ?
    3. if($col['credit']< $nom){ echo"pas assez de credits!";hum... comparer un nom a un taux de credit ??
    Edit:
    Oh, aussi $col[credit] etant le nb de credit de l'utilisateur, et $nom le nombre a transferer, il faut que $col[credit] > a $nom
    4. UPDATE utilisateur SET credit = credit + '".$nom."' j'ai un serieux doute sur cette syntaxe... Fait tes calculs avant et mets les dans des variables.
    5. "INSERT INTO action_cred ( id_user , id_donneur , montant , id_receveur , date ) manque pas des $ a tour de bras ?

    Apres je pense que tes variables sont pas tres explicites...
    En relisant le code, je trouve que:
    $nom = $_POST['credit'] ;
    Alors que $credit = $_POST['credit']; est plus explicite...
    Pareil pour:
    $mlo = $_SESSION['id_user'];
    $id_user=$_SESSION['id_user'];Pkoi 2 variables pour 1 valeur

    Alors :

    il va dans ton if???
    Post? je ne sais pas
    point3: non , effectivement en lisant le code il est juste , tu donne juste le contraire qui pourrai etre bon aussi , de plus $nom n'est pas un nom mais bien un nombre.
    point 4: je pense que la synthaxe est bonne , elle fonctionnait en local et meme si j'update set credit = 1 , ca ne fait rien
    point 5 : je penses qu'elle est juste ma requete non??
    Pour l'explicite : effectivement je pourrai me trompe , d'ailleur avec ton conseil j'ai changer un peu.


    mais le bug persiste , avez vous des idees?
    je repostes le code actuel
    merci
    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
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
     <?php
     
    if ( isset($_POST['credit']) )
    {
    $credit = $_POST['credit']   ;
     
        $id_user = $_SESSION['id_user'];
     
                                       $hote = *;
    $base = *;
    $user = *;
    $pass = *;
    $cnx = mysql_connect ($hote, $user, $pass) or die (mysql_error ());
    $redt = mysql_select_db ($base) or die (mysql_error ());
         $req = "SELECT id_user , credit ".
    "FROM utilisateur WHERE id_user='".$id_user."' ";
    $ret = mysql_query ($req) or die (mysql_error ());
     
    if ( $col = mysql_fetch_array($ret) ) {
    if($col['credit']< $credit){ echo"pas assez de credits!"; exit();} else {
     
     
    $hote = *;
    $base = *;
    $user = *;
    $pass = *;
    $cnx = mysql_connect ($hote, $user, $pass) or die (mysql_error ());
    $redt = mysql_select_db ($base) or die (mysql_error ());
     
    $req = "UPDATE utilisateur SET credit = credit + '".$credit."' WHERE id_user ='".$id."' ";
    $retd = mysql_query ($req) or die (mysql_error ());
    $redd = "UPDATE utilisateur SET credit = credit - '".$credit."' WHERE id_user = '".$id_user."' ";
    $ref = mysql_query ($redd) or die (mysql_error ());
    $oi=$_SESSION['id_user'];
    $reddd = "INSERT INTO action_cred ( id_user , id_donneur , montant , id_receveur , date ) VALUES ( '".$oi."' , '".$oi."' , '".$credit."' , '".$id."' ) ";
    $refx = mysql_query ($reddd) or die (mysql_error ());
     
                                                        exit();
     }         }
    }
    ?>
     
    <form enctype="multipart/form-data" action="#" method="post">
    <br>montant : <input type="text" name="credit"  />
    <br>id receveur : <input type="text" name="id" />
    <br><input type="submit" value="Envoyer" />
     
    <br />

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

Discussions similaires

  1. Ma requete insert n'insert rien
    Par Tommy57 dans le forum Windows Forms
    Réponses: 0
    Dernier message: 08/07/2011, 17h02
  2. [PHP 5.0] $_POST ne récupère rien
    Par bob633 dans le forum Langage
    Réponses: 16
    Dernier message: 15/02/2010, 22h59
  3. [MySQL] Récupérer $_POST et insertion MySql
    Par hugo69 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 03/12/2006, 21h23
  4. Ma procédure n'insert rien dans ma table
    Par bennbenn dans le forum Oracle
    Réponses: 5
    Dernier message: 05/10/2006, 18h53
  5. [MySQL] insert or rien
    Par manshoon dans le forum Langage SQL
    Réponses: 2
    Dernier message: 26/06/2006, 16h47

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