Bonjour,
après exécution du code ci après, les valeurs que j'ai dans la BD sont pas exactement celles lues dans le fchier. par exemple, dans le fichier je lis -1.5789 mais dans la BD je retouve -1.
comment faire pour stocker exactement les valeurs lues dans le fichier???
Merci à tous
PS. les champs rl1 et d1 sont de tyepes "float"
//la connexion à la BD est déja établie!!
$fp = fopen($fichier,"r+"); //$fichier=test.txt
while($ligne=fgets($fp,255))
{
list ($data1, $data2) = split (";", $ligne);
$query="INSERT INTO mesure1 (rl1,d1) VALUES ($data1,$data2)";
$result = mysql_query($query) or die (mysql_error());
}
A voir également:
PHP: lecture dans un fichier et stockage dans une base de données
NHenry
Messages postés15113Date d'inscriptionvendredi 14 mars 2003StatutModérateurDernière intervention22 avril 2024159 2 août 2012 à 15:43
Bonjour,
Serait-ce un problème de séparateur décimal ? (entre . et , )
---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, celui-ci pour bien poser votre question ou encore celui-ci pour les PFE et autres exercices.[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : ).[*]En VB.NET pensez à activer Option Explicit et Option Strict (propriété du projet) et à retirer l'import automatique de l'espace de nom Microsoft.VisualBasic (onglet Références dans les propriétés du projet).[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés/list ---
Mon site
NHenry
Messages postés15113Date d'inscriptionvendredi 14 mars 2003StatutModérateurDernière intervention22 avril 2024159 2 août 2012 à 16:20
Bonjour,
Il faut juste faire un remplacement de "," vers "." .
Genre avec un ... str_replace ou un truc du genre.
---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, celui-ci pour bien poser votre question ou encore celui-ci pour les PFE et autres exercices.[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : ).[*]En VB.NET pensez à activer Option Explicit et Option Strict (propriété du projet) et à retirer l'import automatique de l'espace de nom Microsoft.VisualBasic (onglet Références dans les propriétés du projet).[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés/list ---
Mon site
ça coince car ma table contient exactement deux champs rl1 et d1 (dans cet ordre) et j'essaye d'enrégistrer deux valeurs.
ce pendant, quand je fait la manoeuvre:
$data1=(float)$data1;
$data2=(float)$data2;
juste avant l'insertion dans la table, je n'ai plus d'erreur mais les données ne correspondent pas!!!
NHenry
Messages postés15113Date d'inscriptionvendredi 14 mars 2003StatutModérateurDernière intervention22 avril 2024159 2 août 2012 à 16:44
Bonjour,
Tu l'as fait en mettant "Réponse acceptée" :)
---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, celui-ci pour bien poser votre question ou encore celui-ci pour les PFE et autres exercices.[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : ).[*]En VB.NET pensez à activer Option Explicit et Option Strict (propriété du projet) et à retirer l'import automatique de l'espace de nom Microsoft.VisualBasic (onglet Références dans les propriétés du projet).[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés/list ---
Mon site