Hola Jam,
Saque el form del bucle como me dijiste pero sigo sin obtener resultados, siempre muestra la ultima referencia de la tabla.Quizas no se pueda hacer con foreach y tenga mas que ver con los arrays bidemencionales (de los que no tengo ni idea).
lo de las comillas no lo entiendo ¿Que hago mal?
Código PHP:
<form method="post" action="<?=$_SERVER['PHP_SELF'] ?>">
<? require ("../php/conexion2.php");
$query = "SELECT * FROM referen ORDER BY nombre";
$result=mysql_db_query($dbdat,$query,$link);
while ($row = mysql_fetch_array($result)){
print("
<p>
<input type='text' name='referen' value=\"".$row[codigo]."\" />
<input type='text' name='nombre' value=\"".$row[nombre]."\" />
<input type='text' name='cantidad' value='0' />
</p>
<br />
");
}
mysql_close();
?>
<input type="submit" name="Submit" value="Enviar">
</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)";
}
?>