...diceva qualcuno... chi fa da sč, fa per tre
per ora ho fatto qualche passo avanti, anche se ancora mi va in errore...
questo č un primo pezzo del codice interessato, dove credo anche si trovi uno degli errori principali che ancora non ho capito come risolvere:
premetto che il form senza ciclo, funziona alla perfezione su un singolo prodotto.
il mio problema vi ricordo č che volevo visualizzare questo form N volte quante sono i prodotti.
Codice PHP:
<?
$query_max = "SELECT id_riga from dettagli_preventivi
where `id_preventivo` = '".$_POST["id_prev"]."'";
$risultato_max = mysql_query($query_max) or die ($query_max."
".mysql_error());
while ($row = mysql_fetch_array($risultato_max,MYSQL_ASSOC))
{$riga = "".$row["id_riga"]."";};
$max = $riga;
echo "<input type=\"hidden\" name=\"max\" value=\"$max\">\n";
for ($i = 1; $i <= $max; $i++){
echo "
<tr>
<td>Fornitore:</td>";
$fornitori = "select * from `ana_forn`";
$lista_fornitori = mysql_query($fornitori) or die ("non eseguo la query fornitori");
echo "<td><select name=\"fornitori[$i]\">\n";
echo "<option value=\"0\">- Selezionare Fornitore -</option>\n";
while ($forn = mysql_fetch_array($lista_fornitori,MYSQL_ASSOC))
{
echo "<option value=\"".$forn["id_ana_forn"]."\"";
if (isset($_POST["fornitori"][$i]) and $_POST["fornitori"][$i] ==
$forn["id_ana_forn"])
{
echo " selected";
}
echo ">".$forn["rag_soc"]."</option>\n";
}
echo "</select></td></tr>";
?>
l'errore credo sia proprio nel settaggio della variabile $max, perchč la query in realtą al momento restituisce solo 2 record dal db, ma quando viene generato il form lo ripete ben 5 volte...
suggerimenti?
...andiamo avanti, l'altro errore che ho č questo:
Codice PHP:
<?
$id_prev = ($_POST["id_prev"]);
if (isset($_POST["calcola"][$i])){
$id_prev = ($_POST["id_prev"]);
$costo=$_POST["costo"][$i];
$ricarico=$_POST["ricarico"][$i];
$percentuale=($costo*$ricarico)/100;
$totale=$costo+$percentuale;
$tot = number_format($totale, 2, ",", ".");
}
echo"
<tr><td><input type=\"hidden\" name=\"id_prev[$i]\" value=\"$id_prev\"></td></tr>
<tr><td>Costo:</td>
<td><input name=\"costo[$i]\" type=\"text\" id=\"costo\" value=\"".(isset($_POST["costo"][$i])?$_POST["costo"][$i]:"")."\" size=\"10\" maxlenght=\"10\" />€</td></tr>
<tr>
<td>Ricarico:</td>
<td><input name=\"ricarico[$i]\" type=\"text\" id=\"ricarico\" value=\"".(isset($_POST["ricarico"][$i])?$_POST["ricarico"][$i]:"")."\" size=\"4\" maxlength=\"7\" />
%<input name=\"calcola[$i]\" type=\"submit\" value=\"Calcola prezzo\" OnClick=\"document.forms[0].submit()\" /></td>
</tr>
<tr><td>Prezzo Vendita:</td>
<td><input name=\"prezzo_vendita[$i]\" type=\"text\" id=\"prezzo_vendita\" value=\"$tot\" size=\"10\" maxlenght=\"10\" />€</td></tr>
";
}
?>
in pratica, nella versione senza ciclo, questo pezzo di form non faceva altro che prendere 2 dati, costo e ricarico, calcolare il totale e schiaffarlo nella terza casella di testo del form.
dopo le aggiunte del [$i] ai vari campi, non appena ne clicco uno mi scompare tutto...
suggerimenti?
ciao,
Fabrizio