Ahora que leo lo que apunta @HackmanC ... veo tienes un mini-PROBLEMA...y es como son esos NAMEs ya que no son arrays precisamente
Esta CONFIRMADO como son los NAMEs ? o sea.. van agregando un prefijo a nombre, descripcion, etc ? ese _numero ? si es asi... lo resolvemos con variables-variables como TU me explicastes a mi @neocortex ;)
Código PHP:
Ver original<?php
// datos de prueba
$_POST = []; // no va en programa real
$_POST[0]["nombre_1"]= "alverjas";
$_POST[0]["descripcion_1"] = "verdes, ricas";
$_POST[0]["precio_1"] = 500;
$_POST[1]["nombre_2"]= "papas";
$_POST[1]["descripcion_2"] = "de boyaca";
$_POST[1]["precio_2"] = 600;
// Fin de datos de prueba
$tabla = 'verduras';
foreach ($_POST as $key => $reg)
{
$ix = $key +1;
$nombre = 'nombre_'.$ix;
$descripcion = 'descripcion_'.$ix;
$precio = 'precio_'.$ix;
$sql_query = "INSERT INTO $tabla (producto,descripcion,precio) VALUES ('{$_POST[$key][$nombre]}','{$_POST[$key][$descripcion]}',{$_POST[$key][$precio]}";
// mysql_query($sql_query ) o similar ...
var_dump ($sql_query); // ves que SI esta bien }
// Salida:
string 'INSERT INTO verduras (producto,descripcion,precio) VALUES ('alverjas','verdes, ricas',500' (length=89)
string 'INSERT INTO verduras (producto,descripcion,precio) VALUES ('papas','de boyaca',600' (length=82)