Opération sql

Résolu/Fermé
malhek69 Messages postés 79 Date d'inscription mardi 6 décembre 2011 Statut Membre Dernière intervention 11 avril 2018 - 19 avril 2016 à 09:29
malhek69 Messages postés 79 Date d'inscription mardi 6 décembre 2011 Statut Membre Dernière intervention 11 avril 2018 - 19 avril 2016 à 22:01
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 38350 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 26 décembre 2024 4 719
19 avril 2016 à 16:33
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 mardi 6 décembre 2011 Statut Membre Dernière intervention 11 avril 2018 3
19 avril 2016 à 22:01
Bon pour info c'était juste le type dans ma BDD qui était en int et pas en float ou décimal....
0