Ver Mensaje Individual
  #5 (permalink)  
Antiguo 07/08/2011, 04:32
Avatar de vgonga1986
vgonga1986
 
Fecha de Ingreso: marzo-2008
Ubicación: País de Pandereta
Mensajes: 1.021
Antigüedad: 16 años, 1 mes
Puntos: 253
Respuesta: alguien ve el error?

Tu problema está aquí:
Código PHP:
Ver original
  1. foreach ($form_general as $input => $output) {
  2.     $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']);
  3.  
  4.     mysql_query("insert into general ($input) value ($output)", $conexion) or die("Problemas en el select".mysql_error());
  5. }

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
  1. $sql = "INSERT INTO General (nombre, apellido, foto, e_mail, provincia, barrio, edad, remuneracion_pretendida, comentario_publico) VALUES ('";
  2. $sql .= $_POST['nombre'] . "', '";
  3. $sql .= $_POST['apellido'] . "', '";
  4. $sql .= $_POST['foto'] . "', '";
  5. $sql .= $_POST['e_mail'] . "', '";
  6. $sql .= $_POST['provincia'] . "', '";
  7. $sql .= $_POST['barrio'] . "', ";
  8. $sql .= $_POST['edad'] . ", '";
  9. $sql .= $_POST['remuneracion_pretendida'] . "', '";
  10. $sql .= $_POST['comentario_publico'] . "')";
  11.  
  12. mysql_query($sql, $conexion) or die("Problemas en el select".mysql_error());

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.
__________________
¿Alguna pregunta, duda, acotación, nota, cuestión, reparo, comentario, demanda, crítica, interpretación, objeción, interrogante, discrepancia, observación, réplica, disquisición, apostilla o exégesis?