Tu problema está aquí:
Código PHP:
Ver originalforeach ($form_general as $input => $output) {
$form_general=array('nombre' => $_POST['nombre'], 'apellido' => $_POST['apellido'], 'foto' => $_POST['foto'], 'e_mail' => $_POST['e_mail'], 'provincia' => $_POST['provincia'], 'barrio' => $_POST['barrio'], 'edad' => $_POST['edad'], 'remuneracion_pretendida' => $_POST['remunaracion_pretendida'], 'comentario_publico' => $_POST['comentario_publico']);
}
Está muy mal planteado, en primer lugar, el array $form_general lo montas en la primera ejecución del foreach, pero la primera ejecución no llega nunca, porque la cabecera del foreach utiliza el array $form_general, que todavía no existe.
Aún así, cuando saques la declaración del array fuera, no puedes usar $input y $output para la consulta como lo haces, no tiene ningún sentido, $input y $output son el nombre de un campo y el valor del mismo. Pero la consulta está mal insertada, en caso de que lo arreglaras, te insertaría un registro rellenando sólo el nombre, otro sólo con el apellido y así sucesivamente.
Tienes que montar una consulta conjunta, que inserte todos los datos a la vez. Algo así:
Código PHP:
Ver original$sql = "INSERT INTO General (nombre, apellido, foto, e_mail, provincia, barrio, edad, remuneracion_pretendida, comentario_publico) VALUES ('";
$sql .= $_POST['nombre'] . "', '";
$sql .= $_POST['apellido'] . "', '";
$sql .= $_POST['foto'] . "', '";
$sql .= $_POST['e_mail'] . "', '";
$sql .= $_POST['provincia'] . "', '";
$sql .= $_POST['barrio'] . "', ";
$sql .= $_POST['edad'] . ", '";
$sql .= $_POST['remuneracion_pretendida'] . "', '";
$sql .= $_POST['comentario_publico'] . "')";
De todas formas, aunque arregles eso y lo pongas como te digo, habrá cosas que mejorar. Por ejemplo, es muy optimista pensar que la foto se va a insertar, ya que en $_POST['foto'] va el nombre de la foto, pero tienes que hacer muchas más cosas para rescatar la foto en si e insertarla.
Un saludo.