Probleme php combiné a mysql

carraps -  
 carraps -
Bonjour a tous,

je travail avec du php combiné a mysql et j ai un petit soucis:
je récupère des données de mysql et elles apparaissent dans ma table php mais
je dois récupérer les données qui apparaissent sur cette table php pour faire des opérations mathématiques (je dois trouver le min des températures, des tensions....et le faire apparaitre sur cette page) et je n y parviens pas :(
pourriez-vous m aider svp, ce serait vraiment sympa:
merci bcp

voici mon code php:


<table border='5'>
<tr><th>Nom du client</th><th>Température</th><th>Tension</th><th>Poids</th><th>Date de visite</th></tr>


<?php
$item[1]=$_POST['item1'];
$item[2]=$_POST['item2'];
$item[3]=$_POST['item3'];
$item[4]=$_POST['item4'];
$item[5]=$_POST['item5'];

$conn = mysql_connect('localhost', $_SERVER['DB_USER'], $_SERVER['DB_PASS']);
if (!$conn) {
echo "Impossible de se connecter à la base de données : " . mysql_error();
exit;
}
if (!mysql_select_db("mschyns_".$_SERVER['DB_USER'])) {
echo "Impossible de sélectionner la base mydbname : " . mysql_error();
exit;
}
for ($i=1;$i<=5;$i++) {
$sql = "SELECT nom, temperature, tension, poids, date FROM patient, details_visite WHERE nom='$item[$i]' AND idvisite=idpatient";
$result = mysql_query($sql);
if (!$result) {
echo "Impossible d'exécuter la requête ($sql) dans la base : " . mysql_error();
exit;
}
if (mysql_num_rows($result) == 0) {
echo "Aucune ligne trouvée.";
} else {
while ($row = mysql_fetch_assoc($result)) {
echo "<tr><td>".$row["nom"]."</td>";
echo "<td>".$row["temperature"]."</td>";
echo "<td>".$row["tension"]."</td>";
echo "<td>".$row["poids"]."</td>";
echo "<td>".$row["date"]."</td></tr>";
}
}
}
mysql_close($conn);
?>
</table>
A voir également:

1 réponse

Neliel Messages postés 7012 Statut Contributeur 1 695
 
Bonjour,

La requête est incorrect:

$sql = "SELECT nom, temperature, tension, poids, date FROM patient, details_visite WHERE nom='$item[$i]' AND idvisite=idpatient";

Tu ne peux pas insérer une variable dans une chaîne de caractères de cette manière... tu dois utiliser la concaténation.

echo "$variable" est différent de : echo $variable.

Ainsi, tu dois taper ta requête comme ceci:

$sql = "SELECT nom, temperature, tension, poids, date FROM patient, details_visite WHERE nom='".$item[$i]."' AND idvisite=idpatient";
0
jeangilles Messages postés 816 Date d'inscription   Statut Membre Dernière intervention   186
 
Tu ne peux pas insérer une variable dans une chaîne de caractères de cette manière... tu dois utiliser la concaténation.  

echo "$variable" est différent de : echo $variable. 


tout ce qui est entre " est interprété, à l'inverse des ' qui est traité comme chaîne de cacractères


C'est faux, $variable donne exactement la même chose que "$variable"
En revanche, ton erreur vient du fait qu'on ne puisse pas mettre de tableau dans un echo sans passer par la concaténation
0
Neliel Messages postés 7012 Statut Contributeur 1 695
 
La correction que je donne est juste tout de même...

De plus, j'ai déja eu des erreurs PHP en faisant:

$a=3;
$req="select * from table where id='$a'";

au lieu de

$req="select * from table where id='".$a."'" ;
0
carraps
 
merci pour vos reponses, sympa
j ai finalment réussi a reprendre les données du tableau pour faire mes calculs mais j ai un autre probleme pour trouver le minimum, (a mon avis toutes les données ne sont pas prises en comptes pour faire le calcul), ce serait gentil de m aider

voila mon code:
<?php
$item[1]=$_POST['item1'];
$item[2]=$_POST['item2'];
$item[3]=$_POST['item3'];
$item[4]=$_POST['item4'];
$item[5]=$_POST['item5'];

$conn = mysql_connect('localhost', $_SERVER['DB_USER'], $_SERVER['DB_PASS']);
if (!$conn) {
echo "Impossible de se connecter à la base de données : " . mysql_error();
exit;
}
if (!mysql_select_db("mschyns_".$_SERVER['DB_USER'])) {
echo "Impossible de sélectionner la base mydbname : " . mysql_error();
exit;
}
for ($i=1;$i<=5;$i++) {
$sql = "SELECT nom, temperature, tension, poids, date FROM patient, details_visite WHERE nom='$item[$i]' AND idvisite=idpatient";
$result = mysql_query($sql);
if (!$result) {
echo "Impossible d'exécuter la requête ($sql) dans la base : " . mysql_error();
exit;
}
if (mysql_num_rows($result) == 0) {
echo "Aucune ligne trouvée.";
} else {
while ($row = mysql_fetch_assoc($result)) {
echo "<tr><td><b>$item[$i]</b></td>";
echo "<td>".$row["temperature"]."</td>";
$temp[$i]=$row["temperature"];
echo "<td>".$row["tension"]."</td>";
$tens[$i]=$row["tension"];
echo "<td>".$row["poids"]."</td>";
$poid[$i]=$row["poids"];
echo "<td>".$row["date"]."</td></tr>";
}
}


}
?>
<tr><th>Minimum</th><th>
<?php
for($i=1;$i<=10000;$i++){
if($temp[$i]<$temp[$i+1])
{
$a=$temp[$i];
}

}echo"$a";
?>
</th><th>
<?php
for($i=1;$i<=10000;$i++){
if($tens[$i]<$tens[$i+1])
{
$b=$tens[$i];
}

}echo"$b";
?></th><th>
<?php
for($i=1;$i<=10000;$i++){
if($poid[$i]<$poid[$i+1])
{
$c=$poid[$i];
}

}echo"$c";
?></th><th>.....</th></tr>
0