von coder |
Morgen,
Hier die DB:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23: |
--
-- Tabellenstruktur für Tabelle `db1`
--
CREATE TABLE `db1` (
`datid` int(11) NOT NULL auto_increment,
`dat1` varchar(10) collate latin1_general_ci NOT NULL,
`dat2` varchar(10) collate latin1_general_ci NOT NULL,
PRIMARY KEY (`datid`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci AUTO_INCREMENT=6 ;
--
-- Daten für Tabelle `db1`
--
INSERT INTO `db1` (`datid`, `dat1`, `dat2`) VALUES
(1, '4.13', '19.31'),
(2, '2.76 ', '18.40 '),
(3, '8.00', '16.00'),
(4, '11.40', '15.20'),
(5, '14.40', '18.00');
|
Hier das Script:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40: | <?php
$mysql_host='localhost';
$mysql_user='root';
$mysql_password='yxycyv';
$mysql_db='mysql_in_farbe';
$link = mysql_connect($mysql_host, $mysql_user, $mysql_password);
if (!$link) {
die('Not connected : ' . mysql_error());
}
// make foo the current db
$db_selected = mysql_select_db($mysql_db, $link);
if (!$db_selected) {
die ('Can\'t use foo : ' . mysql_error());
}
$sql_select="SELECT * FROM `db1` ;";
$mysql_query=mysql_query($sql_select) or die ( mysql_error());
if(mysql_num_rows($mysql_query)==0){
echo 'Keine Daten in der Tabelle `db1` vorhanden!';
exit;
} else {
echo 'datid | dat1 | dat2 | farbquadrat | prozent <br>';
while ($daten=mysql_fetch_array($mysql_query)) {
echo $daten['datid'].', ';
echo $daten['dat1'].', ';
echo $daten['dat2'].', ';
$prozent=0;
$prozent=(($daten['dat1']/$daten['dat2'])*100);
if($prozent<=30) $farbe="green";
else if(70>$prozent AND $prozent>30) $farbe="yellow";
else if($prozent>=70) $farbe="red";
else $farbe="black";
echo '<span style="background-color:'.$farbe.'; text-align: center;"> </span>';
echo $prozent.'<br>';
}
}
mysql_close($link);
?> |
Grüße Nico |
von Klumpi |
Ich fürchte Sie haben mich von Anfang an mißverstanden. 4,13 war für mich dat1 und 19,31 dat2. Wenn Ihre Annahme richtig gewesen wäre, d.h. dat1=4 und dat2=13 was wäre dann
19 und 31 gewesen, etwa dat3 und dat4 die nirgendwo erwähnt wurden ?
|
von coder |
ich hatte 4 / 13 gerechnet, aber auch wenn es 4,13 / 19,31 dann schreibt man das man dies noch mal 100% nehmen muss, das kann man sich ja nicht aus den fingern saugen
|
von Klumpi |
Wenn ich aber 4,13 durch 19,31 dividiere, dann erhalte ich 0,213878819 also 21,3878819 %
und nicht 0,3079. Wie Sind Sie auf die 0,3079 gekommen ?
|
von coder |
Hallo,
wenn ich in der Zeile 1 dat1/dat2 teile habe ich 0.3079.. und nicht 30%
Also bitte überprüfen das noch mal.
Grüße Nico |
|