scusami in effetti non sono molto pratica, ma mi sto impegnando a studiare...
ottengo quasi sempre l'id più vicino solo che il mio database è
strutturato cosi
id valore
1 - 20
2 - 25
3 - 30
4 - 35
5 - 40
6 - 45
7 - 50
8 - 60
9 - 70
10 - 80
11 - 90
12 - 100
13 - 120
14 - 140
15 - 160
16 - 180
17 - 200
18 - 225
19 - 250
20 - 275
21 - 300
22 - 350
23 - 400
24 - 450
25 - 500
26 - 750
27 - 1000
28 - 2000
29 - 3500
30 - 7000
quindi ad esempio quando il valore è 5000 lui mi segnala l'ID 29 mentre dovrebbe andare per eccesso al l'id 30 è possibile?
e poi se il numero è con la virgola ad esempio 527.575
non fà nulla...
come posso migliorare il codice.... Grazie mille
codice:
<?php
function calcolaprezzo($x, $y, $pezzi, $colori, $quadr, $perc) {
$area = $x * $y; // calcolo l'area della superficie
$r = mysql_query("SELECT MIN(ABS(cmq - $area)) FROM serigrafia");
$mindiff = mysql_result($r, 0, 0);
$r = mysql_query("SELECT id, cmq FROM serigrafia WHERE (ABS(cmq - $area)) = $mindiff");
$row = mysql_fetch_array($r);
if ($quadr == "SI"){
$totale = "Questo è l'id $row[id] - AREA DELLA SUPERFICIE: $area CMQ, NUMERO DI PEZZI: $pezzi, N. COLORI: $colori, QUADRICROMIA: $quadr";
echo $totale;
}else {
$totale = "Questo è l'id $row[id] - AREA DELLA SUPERFICIE: $area CMQ, NUMERO DI PEZZI: $pezzi, N. COLORI: $colori";
echo $totale;
}
}
?>
Ancora grazie sei gentilissimo