繁体   English   中英

标头(“位置:http://google.com”); 不工作

[英]header('Location: http://google.com'); not working

我现在在* Gestion / config / forms / school_main / school_main.php *。 当我提交此处包含的表单时,标头不会按照我的设置将我重定向到http://google.com ,而是将我重定向到* Gestion / school_main.php *,由于该目录没有该目录而导致错误文献。

标头不起作用的原因是什么? 有什么帮助吗? 我在localhost上,直到今天我对代码进行了清理,ant仍能正常工作...谢谢。

哦,我补充说:它既不插入也不更新BBDD上的任何信息

您在此处拥有完整的表单代码: http : //www.snipplr.com/view/73556/problem-header2/

标题代码:

    if (mysql_num_rows($consultaCampos)==0) {
    $nuevoRegistro = mysql_query("INSERT INTO school_main(sc_id,sc_name,sc_cif,sc_web,sc_headmstr,sc_studDirector,sc_dir1,sc_dir2,sc_dir3,sc_dir4,sc_postcode,sc_pobl,sc_city,sc_country,sc_tel1sec,sc_tel1,sc_tel2sec,sc_tel2,sc_fax,sc_mail1sec,sc_mail1,sc_mail2sec,sc_mail2,sc_mail3sec,sc_mail3,sc_img) VALUE ('','$nombre','$cif','$web','$director','$jefeEstudios','$direccion1','$direccion2','$direccion3','$direccion4','$codigopostal','$poblacion','$ciudad','$pais','$seccionTelefono1','$telefonol','$seccionTelefono2','$telefono2','$fax','$seccionEmail1','$email1','$seccionEmail2','$email2','$seccionEmail3','$email3','$rutaFinal')") or exit("No se pudo introducir contenido en la base de datos");

        header('Location: http://google.com');
exit;
}

else{
    $idCentro=$registroBbdd['sc_id'];
    $actualizaRegistro = mysql_query("UPDATE school_main SET sc_name='$nombre',sc_cif='$cif',sc_web='$web',sc_headmstr='$director',sc_studDirector='$jefeEstudios',sc_dir1='$direccion1',sc_dir2='$direccion2',sc_dir3='$direccion3',sc_dir4='$direccion4',sc_postcode='$codigopostal',sc_pobl='$poblacion',sc_city='$ciudad',sc_country='$pais',sc_tel1sec='$seccionTelefono1',sc_tel1='$telefonol',sc_tel2sec='$seccionTelefono2',sc_tel2='$telefono2',sc_fax='$fax',sc_mail1sec='$seccionEmail1',sc_mail1='$email1',sc_mail2sec='$seccionEmail2',sc_mail2='$email2',sc_mail3sec='$seccionEmail3',sc_mail3='$email3',sc_img='$rutaFinal' WHERE sc_id='$idCentro'") or exit("No se pudo actualizar el contenido de la base de datos");


    header('Location: http://google.com');
exit;

}

应该

 ) VALUES (

代替

) VALUE (

在您的插入查询中

尝试这个,

 $nuevoRegistro = mysql_query("INSERT INTO school_main (...) VALUES (...)") or die("No se pudo introducir contenido en la base de datos".mysql_error());

可能的问题是,您在脚本的第一行中执行ob_start() ,但使用exit() 之前不执行ob_end_flush() exit()

我相信您的问题是您如何处理变量。

如果您缺少任何变量,您将得到

Notice: Undefined index: sc_tel1sec in page.php on line 26

为了使标头起作用,必须定义所有变量。 即使未定义一个变量,标头函数也将不起作用。 尝试打开php.ini中的错误进行检查。

尝试if ( !empty( $_POST['sc_var'] ) ) { $var = $_POST['sc_var']; } if ( !empty( $_POST['sc_var'] ) ) { $var = $_POST['sc_var']; }

在所有相关变量上。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM