Concretamente qué no sabes hacer, qué tienes hecho y por qué no sirve?
.. lo primero parece que tienes la idea... ... pero con errores de comillas:
Código PHP:
echo "<input type=\"text\" name=\"referencia\" value=\"".row['referencia']"\">";
Para recojer cantidades sabrás como se hace....
... no estoy 100% seguro pero leí por ahí que si ingresar un valor de 0 en un campo empty() lo reconoce como vacio... tons, por ahí está la cosa:
www.php.net/empty
Por el foreach... quizá te refieras a algo como:
Código PHP:
<form method="post" action="<?=$_SERVER['PHP_SELF'] ?>">
<p>
<input type="text" name="campo1">
<input type="text" name="campo2">
<input type="text" name="campo3">
<input type="text" name="campo4">
<input type="submit" name="Submit" value="Enviar">
</p>
</form>
<br>
<?php
if(isset($_POST['Submit'])) {
foreach($_POST as $indice => $valor) {
if(!empty($valor) && $indice!='Submit') {
$campos[]= $indice;
$values[]= "'$valor'";
}
}
$campos= implode(", ", $campos);
$values= implode(", ", $values);
echo "INSERT INTO ($campos) VALUES ($values)";
}
?>