ajout argument dans requete = mysql error

Eléphant du PHP | 450 Messages

29 sept. 2005, 23:22

Bonsoir tout le monde j'ais un petit probleme

je vous explique :

lors de cette requete :
$query2="INSERT INTO carac (pseudo,race,id) VALUES ('".$pseudo."', '".$race."',  '".$ids."');";
mysql_query($query2) or die (mysql_error);
 echo $query2;
je n'ais aucun probleme , tout marche tré bien , par contre lors de cette requete si :
$query2="INSERT INTO carac (pseudo,race,id,force) VALUES ('".$pseudo."', '".$race."',  '".$ids."',  '".$force."');";
mysql_query($query2) or die (mysql_error);
 echo $query2;
J'ais un joli mysql error qui s'affiche..

En gros je crois qu'il y a un probleme dans ce qu'il essaille d'entrer comme donné dans la bdd

je vous affiche une plus grande partie du code :

if ($race== 'orc')
                                                                                  {
                    $force==15;
                    $agilite==6 ;
                    $pv==17;
                    $intell==6;
                    $charisme==6;
                                                                                   }
                                                                                   
if ($race== 'elfe noir')
                                                                                  {
                    $force==6;
                    $agilite==12 ;
                    $pv==10;
                    $intell==13;
                    $charisme==9;
                                                                                   }

$query2="INSERT INTO carac (pseudo,race,id,force) VALUES ('".$pseudo."', '".$race."',  '".$ids."',  '".$force."');";
mysql_query($query2) or die (mysql_error);
 echo $query2;
Avez vous une idée d'ou cela peut il provenir ??
Alone in the dark , I smile :D

Mammouth du PHP | 19672 Messages

29 sept. 2005, 23:26

Oui, tu essayes d'affecter des valeurs avec un opérateur de comparaison et non un opérateur d'affectation.
<?
if ($race== 'orc')
{
    $force    = 15;
    $agilite  = 6 ;
    $pv       = 17;
    $intell   = 6;
    $charisme = 6;
}

if ($race == 'elfe noir')
{
    $force    = 6;
    $agilite  = 12 ;
    $pv       = 10;
    $intell   = 13;
    $charisme = 9;
}

$query2="INSERT INTO carac (pseudo,race,id,force) VALUES ('".$pseudo."', '".$race."',  '".$ids."',  '".$force."');";
mysql_query($query2) or die (mysql_error);
echo $query2;
?>
ça devrait aller mieux comme ça.

Et s'il te plait, quand tu présentes du code, arrange le qu'il ne soit pas éparpillé au 4 vents, c'est particulièrement pénible à suivre (sinon je me change en Homme-arbre ou en momie, y a des elfes noirs qui vont tomber :langue:) )
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Eléphant du PHP | 450 Messages

29 sept. 2005, 23:39

Désolé pour la presentation je ferais plus attention :)
M'en fous meme pas mal et tocc :p
sinon mon erreur subsiste toujours ...

Peut etre est ce a cause du champ "force" il est en int (3) ?? ou bien sa n'a pas de rapport ?

je met un morceau de code plsu important au cas ou ..
if ($code != $code2)                 {
                                     }
else                                 {
                                       if ($existant >0){

                                                         }
                                                    else {
$query="INSERT INTO util (pseudo,code,email) VALUES ('".$pseudo."', '".$code."',  '".$email."');";
mysql_query($query) or die (mysql_error);
 $ids= mysql_insert_id();



                                                                                    
if ($race== 'orc')
                                                                                  {
                    $force=15;
                    $agilite=6 ;
                    $pv=17;
                    $intell=6;
                    $charisme=6;
                                                                                   }
                                                                                   
if ($race== 'elfe noir')
                                                                                  {
                    $force=6;
                    $agilite=12 ;
                    $pv=10;
                    $intell=13;
                    $charisme=9;
                                                                                   }

$query2="INSERT INTO carac (pseudo,race,id,force) VALUES ('".$pseudo."', '".$race."',  '".$ids."',  '".$force."');";
mysql_query($query2) or die (mysql_error);
 echo $query2;




                                                             }
                                     }
Alone in the dark , I smile :D

Mammouth du PHP | 19672 Messages

29 sept. 2005, 23:44

Possible :
<?
if ($code != $code2)
{
}
else
{
    if ($existant >0)
    {

    }
    else
    {
        $query="INSERT INTO util (pseudo,code,email) VALUES ('".$pseudo."', '".$code."',  '".$email."');";
        mysql_query($query) or die (mysql_error);
        $ids= mysql_insert_id();

        if ($race == 'orc')
        {
            $force    = 15;
            $agilite  = 6 ;
            $pv       = 17;
            $intell   = 6;
            $charisme = 6;
        }
        elseif ($race == 'elfe noir')
        {
            $force    = 6;
            $agilite  = 12 ;
            $pv       = 10;
            $intell   = 13;
            $charisme = 9;
        }
        $query2="INSERT INTO carac (pseudo,race,id,force) VALUES ('".$pseudo."', '".$race."',  '".$ids."',  ".$force.");";
        mysql_query($query2) or die (mysql_error);
        echo $query2;
    }
}
?>
Regarde bien un détail: j'ai enlevé les apostrophes autour de '". $force ."' dans la requête : c'est un entier, donc pas de caractère d'encadrement.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Eléphant du PHP | 450 Messages

30 sept. 2005, 00:27

C bon j'ai reussit a reparer :) , je ne sait pas pourquoi mais dans phpmyadmin" force" ne passait pas jai renomer en "fc" et sa marche nickel...
me demander pas pourquoi lol

par contre j'ais une erreur du meme genre je poste donc dans le meme forum

En gros si je ne met pas de condition if concernant la race (ou je decrit la force , les pv etc...) dans la requete est incerer la bonne race . Par contre si je laisse les condition , la race de la requete sera obligatoirement humain ...

Je comprend pas trop pourquoi..
 if ($race= 'humain')
                                                                                  {
                    $force=10;
                    $agilite=10 ;
                    $pv=10;
                    $intell==10;
                    $charisme==10;
                                                                                   }

 if ($race== 'orc')
                                                                                  {
                    $force=15;
                    $agilite=6 ;
                    $pv=17;
                    $intell=6;
                    $charisme=6;
                                                                                   }
                                                                                   
if ($race== 'elfe noir')
                                                                                  {
                    $force=6;
                    $agilite=12 ;
                    $pv=10;
                    $intell=13;
                    $charisme=9;
                                                                                   }

$query2="INSERT INTO carac (pseudo,race,id,fc) VALUES ('".$pseudo."', '".$race."',  '".$ids."','".$force."');";
mysql_query($query2) or die (mysql_error);
 echo $query2;

J'ai essaillez avec elseif pour la deuxieme et troisieme condition et sa marche pas mieu : /
Alone in the dark , I smile :D

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

30 sept. 2005, 00:30

meme erreur qu'au début
if ($race= 'humain')
la comparaison se fait avec " == "

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

Eléphant du PHP | 450 Messages

30 sept. 2005, 00:32

Arghh je suis desolé je suis un boulet ..!!

:lol: :lol: :lol: C'etait tellement bete :)
hihihi
merci encore a vous :)
Alone in the dark , I smile :D