Foros del Web » Programando para Internet » PHP »

Problema con campos de un form

Estas en el tema de Problema con campos de un form en el foro de PHP en Foros del Web. Tengo un formulario con 3 input, para subir 3 ficheros form.php Código PHP: // ... if (isset( $_GET [ 'error' ]) ==  1 ) {         print  "Error: Todos los campos deben estar llenos<br>" ; } ...
  #1 (permalink)  
Antiguo 02/08/2004, 11:23
 
Fecha de Ingreso: julio-2003
Mensajes: 141
Antigüedad: 21 años, 4 meses
Puntos: 5
Problema con campos de un form

Tengo un formulario con 3 input, para subir 3 ficheros
form.php
Código PHP:
// ...
if (isset($_GET['error']) == 1) {
        print 
"Error: Todos los campos deben estar llenos<br>";
}

<
form method='post' action='tramita.php'>
<
input type='file' name='ficheroe'>
<
input type='file' name='ficherov'>
<
input type='file' name='ficheroi'>

// ... 
y tramita.php
Código PHP:
if ( (empty($_POST['ficheroe']['name'])) or (empty($_POST['ficherov']['name'])) or (empty($_POST['ficheroi']['name'])) ) {
      
header("location: form.php?error=1");
}
else
      
header("location: valido.php"); 
y el problema que tengo es que aunque rellene los 3 inputs, me tramita el error y no la parte valido.php.
¿no estoy consultando bien si los inputs estan rellenos?

gracias !!
  #2 (permalink)  
Antiguo 02/08/2004, 11:42
 
Fecha de Ingreso: mayo-2004
Ubicación: SurOeste de Guayaquil
Mensajes: 241
Antigüedad: 20 años, 6 meses
Puntos: 0
prueba esto

if ( (empty($_POST['ficheroe'])) or (empty($_POST['ficherov'])) or (empty($_POST['ficheroi'])) ) {
header("location: form.php?error=1");
}
else
header("location: valido.php");


mira si te funciona si no para darte otro codigo
__________________
javier
  #3 (permalink)  
Antiguo 02/08/2004, 11:44
 
Fecha de Ingreso: octubre-2003
Mensajes: 153
Antigüedad: 21 años, 1 mes
Puntos: 5
Haz una cosa, quitale los ['name']. Si te sigue dando el error, cambia empty por !isset
  #4 (permalink)  
Antiguo 02/08/2004, 11:46
 
Fecha de Ingreso: julio-2003
Mensajes: 141
Antigüedad: 21 años, 4 meses
Puntos: 5
Cita:
Iniciado por Daca
Tengo un formulario con 3 input, para subir 3 ficheros
form.php
Código PHP:
// ...
if (isset($_GET['error']) == 1) {
        print 
"Error: Todos los campos deben estar llenos<br>";
}

<
form method='post' action='tramita.php'>
<
input type='file' name='ficheroe'>
<
input type='file' name='ficherov'>
<
input type='file' name='ficheroi'>

// ... 
y tramita.php
Código PHP:
if ( (empty($_POST['ficheroe']['name'])) or (empty($_POST['ficherov']['name'])) or (empty($_POST['ficheroi']['name'])) ) {
      
header("location: form.php?error=1");
}
else
      
header("location: valido.php"); 
y el problema que tengo es que aunque rellene los 3 inputs, me tramita el error y no la parte valido.php.
¿no estoy consultando bien si los inputs estan rellenos?

gracias !!
El Primer fallo que he encontrado es que a la hora de subir multiples ficheros se ha de utilizar la siguiente sintaxis:

<input name="userfile[]" type="file"><br>
<input name="userfile[]" type="file"><br>

en modo vector.
$_POST_FILES['userfile']['name'][0]

sigo probando ...
  #5 (permalink)  
Antiguo 02/08/2004, 11:54
 
Fecha de Ingreso: julio-2003
Mensajes: 141
Antigüedad: 21 años, 4 meses
Puntos: 5
Cita:
Iniciado por Jayapata12
prueba esto

if ( (empty($_POST['ficheroe'])) or (empty($_POST['ficherov'])) or (empty($_POST['ficheroi'])) ) {
header("location: form.php?error=1");
}
else
header("location: valido.php");


mira si te funciona si no para darte otro codigo
no funciona despues de los cambios
  #6 (permalink)  
Antiguo 02/08/2004, 11:57
 
Fecha de Ingreso: julio-2003
Mensajes: 141
Antigüedad: 21 años, 4 meses
Puntos: 5
Cita:
Iniciado por malalengua
Haz una cosa, quitale los ['name']. Si te sigue dando el error, cambia empty por !isset
no funciona !!!

ya no se que probar ...
  #7 (permalink)  
Antiguo 02/08/2004, 12:01
 
Fecha de Ingreso: julio-2003
Mensajes: 141
Antigüedad: 21 años, 4 meses
Puntos: 5
aaaah !!
que despiste ...

el error era que yo utilizaba $_POST['userfile']['name'] y debia ser $_FILE['userfile']['name'] , vamos por lo menos ahora si ha funcionado ...

saludos !!!
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:59.