Opération sql

Résolu
malhek69 Messages postés 79 Date d'inscription   Statut Membre Dernière intervention   -  
malhek69 Messages postés 79 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour à tous,

Alors je bosse avec une base de données mysql et je mixe entre php et sql.

J'ai récupéré des variable. Lorsque je fais ma première requête sans opération à l'intérieur ça fonctionne, mes variables sont alimentées et tout va bien.
Direct ensuite, dans la même boucle, je fais une requête sql avec une opération, avec les même variable, et là le résultat est de "0".

Voici mes deux requêtes:

$sql =  "INSERT INTO LEONIX_MAJ (LEONIX_MAJ.prefixe, LEONIX_MAJ.destination_name, LEONIX_MAJ.prix_minute, LEONIX_MAJ.connection)".
" VALUES ('$prefix','$nomdestination','$tarifminute','$miseenrelation')";

$req = mysql_query($sql) or die ('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
echo 'requete ok'. "\n";

$sql= "INSERT INTO tarifs (tarifs.prefixe, tarifs.nom_destination, tarifs.forfait, tarifs.connection, tarifs.prix_minute)".
" VALUES ('$prefix', '$nomdestination', 'prix_de_vente',('$miseenrelation' * 1.3),('$tarifminute' * 1.3))";


$req = mysql_query($sql) or die ('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
echo 'requete ok'. "\n";


Qu'est-ce-qui ne fonctionne pas? Si quelqu'un peut me mettre sur la piste ça serait au top... Merci d'avance


2 réponses

jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
Bonjour,

Bonjour,

1 - Tu utilises l'ancienne extension Mysql ... je t'invite à lire ceci https://www.commentcamarche.net/faq/43261-php-l-extension-mysql-est-obsolete#top
puis à migrer en mysqli ou en PDO.

2 - Tu fais des opérations mathématiques ... sur des variables encapsulées entre des quotes... et donc comprises comme des 'string'

3 - Il est préférable de manipuler les variables EN DEHORS de la requête .... comme ceci par exemple :
$miseRelation13 = (float)$miseenrelation * 1.3;
$tarifminute13 = (float)$tarifminute *1.3;
$sql=   "INSERT INTO tarifs (tarifs.prefixe, tarifs.nom_destination, tarifs.forfait, tarifs.connection, tarifs.prix_minute)
                     VALUES ('$prefix', '$nomdestination', 'prix_de_vente','$miseRelation13','$tarifminute13')";




NB: Ta question concerne le php et MYSQL (et non pas SQL SERVER...)
Je déplace donc ta question dans la bonne section du forum.

1
malhek69 Messages postés 79 Date d'inscription   Statut Membre Dernière intervention   3
 
Bon pour info c'était juste le type dans ma BDD qui était en int et pas en float ou décimal....
0