Foros del Web » Programando para Internet » PHP »

php no quiere redireccionar

Estas en el tema de php no quiere redireccionar en el foro de PHP en Foros del Web. tengo el siguiente codigo Código PHP: if (isset( $_POST [ rut ])) { mysql_query ( "insert into maestro_personal (dtrabajados,nombres,apellido_paterno,apellido_materno,rut,afp,sds,direccion,ciudaddp,fn,sexo,ecivil,nacionalidad,telefono,celular,cargo,sueldo,sueldob, fni,fc,dc,ds,fs,dshm,fshm,dsht,fsht,carga,movilizacion,colacion,pcaja,anticipo,gratificacionlegal,bonoi,tramo,estado,feriadolegal,usuario) VALUES ('{$_POST[dtrabajados]}','{$_POST[nombres]}', '{$_POST['apellido_paterno']}','{$_POST['apellido_materno']}','{$_POST[rut]}','{$_POST[afps]}','{$_POST[sds]}','{$_POST[direccion]}','{$_POST[ciudaddp]}','{$_POST[fn]}','{$_POST[sexo]}', '{$_POST[ecivil]}','{$_POST[nacionalidad]}','{$_POST[telefono]}','{$_POST[celular]}','{$_POST[cargo]}','{$_POST[sueldo]}','{$_POST[sueldob]}','{$_POST[fni]}','{$_POST[fc]}','{$_POST[dc]}','{$_POST[ds]}','{$_POST[fs]}','{$_POST[dshm]}','{$_POST[fshm]}','{$_POST[dsht]}','{$_POST[fsht]}','{$_POST[carga]}','{$_POST[movilizacion]}','{$_POST[colacion]}','{$_POST[pcaja]}','{$_POST[anticipo]}','{$_POST[gratificacionlegal]}','{$_POST[bonoi]}','{$_POST[tramo]}','{$_POST[estado]}','{$_POST[feriadolegal]}','{$_POST[usuario]}')" ); header ( "Location: inicio.php" ) or die( "no quiero redireccionarte" ); ...
  #1 (permalink)  
Antiguo 19/12/2011, 16:46
Avatar de carlod_39  
Fecha de Ingreso: noviembre-2011
Ubicación: FAfdddsf
Mensajes: 59
Antigüedad: 12 años, 4 meses
Puntos: 1
Pregunta php no quiere redireccionar

tengo el siguiente codigo
Código PHP:
if (isset($_POST[rut]))
{
mysql_query("insert into maestro_personal (dtrabajados,nombres,apellido_paterno,apellido_materno,rut,afp,sds,direccion,ciudaddp,fn,sexo,ecivil,nacionalidad,telefono,celular,cargo,sueldo,sueldob,
fni,fc,dc,ds,fs,dshm,fshm,dsht,fsht,carga,movilizacion,colacion,pcaja,anticipo,gratificacionlegal,bonoi,tramo,estado,feriadolegal,usuario) VALUES ('{$_POST[dtrabajados]}','{$_POST[nombres]}',
'{$_POST['apellido_paterno']}','{$_POST['apellido_materno']}','{$_POST[rut]}','{$_POST[afps]}','{$_POST[sds]}','{$_POST[direccion]}','{$_POST[ciudaddp]}','{$_POST[fn]}','{$_POST[sexo]}',
'{$_POST[ecivil]}','{$_POST[nacionalidad]}','{$_POST[telefono]}','{$_POST[celular]}','{$_POST[cargo]}','{$_POST[sueldo]}','{$_POST[sueldob]}','{$_POST[fni]}','{$_POST[fc]}','{$_POST[dc]}','{$_POST[ds]}','{$_POST[fs]}','{$_POST[dshm]}','{$_POST[fshm]}','{$_POST[dsht]}','{$_POST[fsht]}','{$_POST[carga]}','{$_POST[movilizacion]}','{$_POST[colacion]}','{$_POST[pcaja]}','{$_POST[anticipo]}','{$_POST[gratificacionlegal]}','{$_POST[bonoi]}','{$_POST[tramo]}','{$_POST[estado]}','{$_POST[feriadolegal]}','{$_POST[usuario]}')"
);
header("Location: inicio.php") or die("no quiero redireccionarte");

inserta el usuario pero no redirecciona y muestra "no quiero redireccionarte" idea porque sucede esto (he probado con distintas direcciones)
  #2 (permalink)  
Antiguo 19/12/2011, 16:52
 
Fecha de Ingreso: julio-2010
Mensajes: 393
Antigüedad: 13 años, 8 meses
Puntos: 67
Respuesta: php no quiere redireccionar

tienes alguna salida al navegador antes que este código???
Es decir, hay algún echo, print, header, o algo en html? no debe haber ningún código que muestre algo en pantalla antes que header.
__________________
Páginas web de alta calidad y hechas a la medida.
  #3 (permalink)  
Antiguo 19/12/2011, 16:54
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: php no quiere redireccionar

Revisa el log de errores, es casi seguro que tienes problemas como los que te mencionan.

Debes asegurar siempre tu entorno de trabajo para que te muestre todos los errores, pues ahí se esconden todo tipo de problemas.

Intenta activar temporalmente dicho reporte con esto al inicio de tus scripts:
Código PHP:
error_reporting(-1);
ini_set('display_errors',1); 
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #4 (permalink)  
Antiguo 19/12/2011, 17:54
Avatar de carlod_39  
Fecha de Ingreso: noviembre-2011
Ubicación: FAfdddsf
Mensajes: 59
Antigüedad: 12 años, 4 meses
Puntos: 1
Respuesta: php no quiere redireccionar

me muestra esto, ¿que quiere decir?

Notice: Use of undefined constant rut - assumed 'rut' in /home/web/rem/maestro_personal.php on line 229
  #5 (permalink)  
Antiguo 19/12/2011, 18:00
Avatar de carlod_39  
Fecha de Ingreso: noviembre-2011
Ubicación: FAfdddsf
Mensajes: 59
Antigüedad: 12 años, 4 meses
Puntos: 1
Respuesta: php no quiere redireccionar

Cita:
Iniciado por el_quick Ver Mensaje
tienes alguna salida al navegador antes que este código???
Es decir, hay algún echo, print, header, o algo en html? no debe haber ningún código que muestre algo en pantalla antes que header.
antes del código que puse esta el formulario
  #6 (permalink)  
Antiguo 19/12/2011, 18:01
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: php no quiere redireccionar

Eso significa que estás usando una constante no declarada, por algo así:
Código PHP:
// MAL
echo $foo[bar];

// BIEN
echo $foo['bar']; 
Todos los índices nombrados deben ser cadenas, a menos que explícitamente definas constantes y las uses en su lugar.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #7 (permalink)  
Antiguo 19/12/2011, 18:47
Avatar de carlod_39  
Fecha de Ingreso: noviembre-2011
Ubicación: FAfdddsf
Mensajes: 59
Antigüedad: 12 años, 4 meses
Puntos: 1
Respuesta: php no quiere redireccionar

el error anterior desapareció ahora me aparece este otro
Warning: Cannot modify header information - headers already sent by (output started at /home/web/rem/maestro_personal.php:224) in /home/web/rem/maestro_personal.php on line 235 no quiero redireccionarte

en la linea 224 solo tengo
<?php
y en la 235 tengo
header("Location: ?r=3") or die("no quiero redireccionarte");

que hago con <?php
  #8 (permalink)  
Antiguo 19/12/2011, 18:52
Avatar de Sourcegeek
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: $mex['B.C.'];
Mensajes: 1.816
Antigüedad: 14 años, 11 meses
Puntos: 322
Respuesta: php no quiere redireccionar

Claro, no puede haber ninguna salida HTML (caracter, por ejemplo) antes de una llamada header.
__________________
Buscas desarrollador web? Sourcegeek. Diseño web, Maquetación y Programación
¡Escribe bien! Esto es un foro, no un Facebook para que escribas con los pies
  #9 (permalink)  
Antiguo 19/12/2011, 18:53
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: php no quiere redireccionar

Cita:
Iniciado por carlod_39 Ver Mensaje
el error anterior desapareció ahora me aparece este otro
Warning: Cannot modify header information - headers already sent by (output started at /home/web/rem/maestro_personal.php:224) in /home/web/rem/maestro_personal.php on line 235 no quiero redireccionarte

en la linea 224 solo tengo [...]
Lee la siguiente Wiki:
http://www.forosdelweb.com/wiki/PHP:...n_line_4%22%3F
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #10 (permalink)  
Antiguo 19/12/2011, 19:33
Avatar de carlod_39  
Fecha de Ingreso: noviembre-2011
Ubicación: FAfdddsf
Mensajes: 59
Antigüedad: 12 años, 4 meses
Puntos: 1
Respuesta: php no quiere redireccionar

Cita:
Iniciado por pateketrueke Ver Mensaje
Lee la siguiente Wiki:
[url]http://www.forosdelweb.com/wiki/PHP:%C2%BFPor_qu%C3%A9_me_sale_%22Warning:_Cannot_ modify_header_information_-_headers_already_sent_by_%28output_started_at_1:2% 29_in_3_on_line_4%22%3F[/url]
ya lo leí pero no encuentro ningún error o no lo entiendo
porque tengo
Código HTML:
<input type="hidden" name="usuario" value="<?php echo $_SESSION['nombre'];?>"><!--linea 224 -->
<br><br><br><INPUT TYPE='SUBMIT' value='Ingresar' onclick="return confirmar()"> <INPUT TYPE='reset' value='Limpiar'></FORM> 
Código PHP:
<?php
error_reporting
(-1);
ini_set('display_errors',1);
if (isset(
$_POST["rut"]))
{
mysql_query("insert into maestro_personal (dtrabajados,nombres,apellido_paterno,apellido_materno,rut,afp,sds,direccion,ciudaddp,fn,sexo,ecivil,nacionalidad,telefono,celular,cargo,sueldo,sueldob,fni,fc,dc,ds,fs,dshm,fshm,dsht,fsht,carga,movilizacion,colacion,pcaja,anticipo,gratificacionlegal,bonoi,tramo,estado,feriadolegal,usuario) VALUES ('{$_POST['dtrabajados']}','{$_POST['nombres']}','{$_POST['apellido_paterno']}','{$_POST['apellido_materno']}','{$_POST['rut']}','{$_POST['afps']}','{$_POST['sds']}','{$_POST['direccion']}','{$_POST['ciudaddp']}','{$_POST['fn']}','{$_POST['sexo']}','{$_POST['ecivil']}','{$_POST['nacionalidad']}','{$_POST['telefono']}','{$_POST['celular']}','{$_POST['cargo']}','{$_POST['sueldo']}','{$_POST['sueldob']}','{$_POST['fni']}','{$_POST['fc']}','{$_POST['dc']}','{$_POST['ds']}','{$_POST['fs']}','{$_POST['dshm']}','{$_POST['fshm']}','{$_POST['dsht']}','{$_POST['fsht']}','{$_POST['carga']}','{$_POST['movilizacion']}','{$_POST['colacion']}','{$_POST['pcaja']}','{$_POST['anticipo']}','{$_POST['gratificacionlegal']}','{$_POST['bonoi']}','{$_POST['tramo']}','{$_POST['estado']}','{$_POST['feriadolegal']}','{$_POST['usuario']}')");
header("Location: inicio.php") or die("no quiero redireccionarte");//linea 235
}
y en otro archivo que me funciona tengo


Código PHP:
<?php
if (isset($_POST['nombre']))
{
$nombre=$_POST['nombre'];
$rut=$_POST['rut'];
$actividad_economica=$_POST['actividad_economica'];
$direccion=$_POST['direccion'];
$ciudad=$_POST['ciudad'];
$rlegal=$_POST['rlegal'];
$rutrl=$_POST['rutrl'];
$ciudadeu=$_POST['ciudadeu'];
mysql_query("update datos_empresa Set nombree='$nombre',rute='$rut',actividad_economica='$actividad_economica',direccione='$direccion',ciudade='$ciudad',ciudadeu='$ciudadeu',rlegal='$rlegal',rutrl='$rutrl'");
header("location: datos_empresa.php");
}
y no logro ver la diferencia

Última edición por carlod_39; 19/12/2011 a las 19:40
  #11 (permalink)  
Antiguo 19/12/2011, 19:42
Avatar de truman_truman  
Fecha de Ingreso: febrero-2010
Ubicación: /home/user
Mensajes: 1.341
Antigüedad: 14 años, 2 meses
Puntos: 177
Respuesta: php no quiere redireccionar

No estoy seguro si la sintaxis que estás usando es correcta,

'{$_POST['usuario']}'

podrías probar asi '".$_POST['usuario']."'


Te tira algún error?

Para mi el problema está en la consulta del insert, al no poder insertar, tira error y esto se imprime en pantalla, y entonces no funciona el header("Location")

Probá quitando la consulta del insert, solo para ver si redirecciona o no, si redirecciona el problema está ahí, sino vemos
__________________
la la la
  #12 (permalink)  
Antiguo 19/12/2011, 19:43
 
Fecha de Ingreso: agosto-2011
Ubicación: Viña del Mar, Chile
Mensajes: 311
Antigüedad: 12 años, 7 meses
Puntos: 50
Respuesta: php no quiere redireccionar

prueba esto rodeando tu código php
Código PHP:
Ver original
  1. <?php
  2. //Código
  3. ?>
Saludos
__________________
He aprendido mucho y sigo aprendiendo cada día aquí...así que ayudo cuando puedo para disminuir mi deuda XD..
mi hobby
  #13 (permalink)  
Antiguo 19/12/2011, 19:44
Avatar de carlod_39  
Fecha de Ingreso: noviembre-2011
Ubicación: FAfdddsf
Mensajes: 59
Antigüedad: 12 años, 4 meses
Puntos: 1
Respuesta: php no quiere redireccionar

Cita:
Iniciado por truman_truman Ver Mensaje
No estoy seguro si la sintaxis que estás usando es correcta,

'{$_POST['usuario']}'

podrías probar asi '".$_POST['usuario']."'


Te tira algún error?

Para mi el problema está en la consulta del insert, al no poder insertar, tira error y esto se imprime en pantalla, y entonces no funciona el header("Location")

Probá quitando la consulta del insert, solo para ver si redirecciona o no, si redirecciona el problema está ahí, sino vemos
el insert funciona guarda los datos en la base de datos pero no redirecciona
  #14 (permalink)  
Antiguo 19/12/2011, 19:45
Avatar de truman_truman  
Fecha de Ingreso: febrero-2010
Ubicación: /home/user
Mensajes: 1.341
Antigüedad: 14 años, 2 meses
Puntos: 177
Respuesta: php no quiere redireccionar

Por favor quitalo y probá si redirecciona
__________________
la la la
  #15 (permalink)  
Antiguo 19/12/2011, 19:46
Avatar de Sourcegeek
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: $mex['B.C.'];
Mensajes: 1.816
Antigüedad: 14 años, 11 meses
Puntos: 322
Respuesta: php no quiere redireccionar

En la wiki está y te lo dije también:
No puede haber una salida HTML antes de la llamada header, nunca. Tu formulario es una salida html. Un caracter es una salida html..
__________________
Buscas desarrollador web? Sourcegeek. Diseño web, Maquetación y Programación
¡Escribe bien! Esto es un foro, no un Facebook para que escribas con los pies
  #16 (permalink)  
Antiguo 19/12/2011, 19:49
Avatar de carlod_39  
Fecha de Ingreso: noviembre-2011
Ubicación: FAfdddsf
Mensajes: 59
Antigüedad: 12 años, 4 meses
Puntos: 1
Respuesta: php no quiere redireccionar

Cita:
Iniciado por snowmanchip Ver Mensaje
prueba esto rodeando tu código php
Código PHP:
Ver original
  1. <?php
  2. //Código
  3. ?>
Saludos
lo probé y no funciona ¿que debería hacer?¿para que sirve?
  #17 (permalink)  
Antiguo 19/12/2011, 19:50
Avatar de truman_truman  
Fecha de Ingreso: febrero-2010
Ubicación: /home/user
Mensajes: 1.341
Antigüedad: 14 años, 2 meses
Puntos: 177
Respuesta: php no quiere redireccionar

Por favor quitá la consulta del insert y probá si redirecciona
__________________
la la la
  #18 (permalink)  
Antiguo 19/12/2011, 19:52
Avatar de carlod_39  
Fecha de Ingreso: noviembre-2011
Ubicación: FAfdddsf
Mensajes: 59
Antigüedad: 12 años, 4 meses
Puntos: 1
Respuesta: php no quiere redireccionar

Cita:
Iniciado por truman_truman Ver Mensaje
Por favor quitalo y probá si redirecciona
lo voy a probar y les cuento
  #19 (permalink)  
Antiguo 19/12/2011, 20:00
Avatar de carlod_39  
Fecha de Ingreso: noviembre-2011
Ubicación: FAfdddsf
Mensajes: 59
Antigüedad: 12 años, 4 meses
Puntos: 1
Respuesta: php no quiere redireccionar

Cita:
Iniciado por truman_truman Ver Mensaje
Por favor quitá la consulta del insert y probá si redirecciona
he dejado solo

Código PHP:
if (isset($_POST["rut"]))
{
header("Location: inicio.php");

y sigue apareciendo el mismo error y no redirecciona
  #20 (permalink)  
Antiguo 19/12/2011, 20:01
Avatar de truman_truman  
Fecha de Ingreso: febrero-2010
Ubicación: /home/user
Mensajes: 1.341
Antigüedad: 14 años, 2 meses
Puntos: 177
Respuesta: php no quiere redireccionar

ok copiá y pegá acá el error
__________________
la la la
  #21 (permalink)  
Antiguo 19/12/2011, 20:04
Avatar de truman_truman  
Fecha de Ingreso: febrero-2010
Ubicación: /home/user
Mensajes: 1.341
Antigüedad: 14 años, 2 meses
Puntos: 177
Respuesta: php no quiere redireccionar

ejemplo de lo que no se debe hacer

<table> codigo html </table>
<?php header("Location: inicio.php");?>

En definitiva si hay código html antes del header no funcionará
tendría que ser asi

<?php header("Location: inicio.php");?>
<table> codigo html </table>


Esto quedó entendido?

Yo supuse que lo habías entendido cuando te lo explicaron... no?
__________________
la la la
  #22 (permalink)  
Antiguo 19/12/2011, 20:04
Avatar de carlod_39  
Fecha de Ingreso: noviembre-2011
Ubicación: FAfdddsf
Mensajes: 59
Antigüedad: 12 años, 4 meses
Puntos: 1
Respuesta: php no quiere redireccionar

Cita:
Iniciado por truman_truman Ver Mensaje
ok copiá y pegá acá el error
Warning: Cannot modify header information - headers already sent by (output started at /home/web/rem/maestro_personal.php:224) in /home/web/rem/maestro_personal.php on line 231
  #23 (permalink)  
Antiguo 19/12/2011, 20:05
Avatar de truman_truman  
Fecha de Ingreso: febrero-2010
Ubicación: /home/user
Mensajes: 1.341
Antigüedad: 14 años, 2 meses
Puntos: 177
Respuesta: php no quiere redireccionar

te conteste justo arriba
__________________
la la la
  #24 (permalink)  
Antiguo 19/12/2011, 20:14
Avatar de carlod_39  
Fecha de Ingreso: noviembre-2011
Ubicación: FAfdddsf
Mensajes: 59
Antigüedad: 12 años, 4 meses
Puntos: 1
Respuesta: php no quiere redireccionar

Cita:
Iniciado por truman_truman Ver Mensaje
ejemplo de lo que no se debe hacer

<table> codigo html </table>
<?php header("Location: inicio.php");?>

En definitiva si hay código html antes del header no funcionará
tendría que ser asi

<?php header("Location: inicio.php");?>
<table> codigo html </table>


Esto quedó entendido?

Yo supuse que lo habías entendido cuando te lo explicaron... no?
Gracias a todos ya lo solucione
supongo que era lo del código html lo puse arriba de todo y funciono pero este ejemplo

<table> codigo html </table>
<?php header("Location: inicio.php");?>

que pusieron no sirve porque lo probé pero igual redirecciona

Gracias por su ayuda

Última edición por carlod_39; 19/12/2011 a las 20:38

Etiquetas: alguna, funcionar, idea, redireccionar
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 15:50.