佳礼资讯网

 找回密码
 注册

ADVERTISEMENT

搜索
查看: 1465|回复: 12

php redirect(Header cannot modify)

[复制链接]
发表于 5-11-2010 07:33 AM | 显示全部楼层 |阅读模式
因為header 前面一定不能空行 . 不然就會出現Warning: Cannot modify header information - headers already sent by 的問題.
= =因為一直以來都是改php.ini得setting (也一直很順利), output_buffering改成On,

可是, 現在換了別家公司的hosting,她的php.ini不能讓我改 , 不知道是不是我寫php的方法不是很formal ,
(ob_start()也try過, 不過沒成功過)





程式本身的意義就是刪除之後redirect去我要的pages
<?php


$sql="DELETE FROM Persons WHERE LastName='Griffin'";
$sql2=mysql_query($sql);


header("Location:main.php");
?>


想請問下大家都是怎樣寫redirect的....

= =a難道是用 javascript 來做redirect ?


希望有人能解答...thx~~
回复

使用道具 举报


ADVERTISEMENT

发表于 5-11-2010 07:40 AM | 显示全部楼层
是不是coding里已经send了一个header.. ?? @_@
回复

使用道具 举报

 楼主| 发表于 5-11-2010 08:04 AM | 显示全部楼层
不知道耶....

可是如果按照header的規定

<?php
header("Location:main.php";
?>
header前面不能空行, 這樣我的sql command要寫在哪 ? orz
回复

使用道具 举报

发表于 5-11-2010 02:28 PM | 显示全部楼层
如果你的是linux hosting的话。。。

可以try看用htacess来做setting咯

  1. php_value output_buffering on
复制代码
回复

使用道具 举报

发表于 5-11-2010 02:31 PM | 显示全部楼层


  1. $sql="DELETE FROM Persons WHERE LastName='Griffin'";
  2. mysql_query($sql);

  3. header("Location:main.php");

复制代码


其实你不需要那个sql2的。。。
也有一个可能是因为你有error msg或有echo到东西。。所以才出那个error
回复

使用道具 举报

 楼主| 发表于 6-11-2010 12:01 AM | 显示全部楼层
回复 4# 小陈陈


   原來還可以這樣做....感謝 Q_Q , 雖然不熟悉htaccess, 不過會去研究看看


不過一般的轉址也是這樣寫嗎 ?
就是處理完sql之後 也是接 header("Location . xxx.php " ) ; ?
回复

使用道具 举报

Follow Us
发表于 6-11-2010 12:23 AM | 显示全部楼层
I normally use header to do redirect also....
回复

使用道具 举报

发表于 6-11-2010 02:30 AM | 显示全部楼层
回复  小陈陈


   原來還可以這樣做....感謝 Q_Q , 雖然不熟悉htaccess, 不過會去研究看看


不過一 ...
雷洛 发表于 6-11-2010 12:01 AM



可以的。。。但是我觉得应该是你的coding那边有output才会这样。。。
如果可以。。
你可以在 remove掉redirect看有没有东西出来咯。
如果有。。就是肯定不能得了
回复

使用道具 举报


ADVERTISEMENT

发表于 6-11-2010 09:05 AM | 显示全部楼层
不是空不空行的问题,你在redirect之前可能echo/output了一些东西。不然就这样echo "<script>location.href='xxx.php'</script>"; 什么setting都不用。
回复

使用道具 举报

 楼主| 发表于 6-11-2010 08:15 PM | 显示全部楼层
回复 8# 小陈陈


   = = 之前還以為不是這樣寫的, 以為是我寫php的觀念有問題....為了看結果, 寫了不少的echo $xx , 也許因為這樣才error,
回复

使用道具 举报

 楼主| 发表于 6-11-2010 08:17 PM | 显示全部楼层
回复 9# Legend


   聽起來是好方法
回复

使用道具 举报

发表于 8-11-2010 07:58 PM | 显示全部楼层
回复  Legend


   聽起來是好方法
雷洛 发表于 6-11-2010 08:17 PM
但是却不是一个很正式的解决方法。
有时候一些文件的header 在你还没 redirect 之前 define了 或收尾的?> 之后多了一个空行也会导致这种情况发生。
回复

使用道具 举报

发表于 12-11-2010 10:31 AM | 显示全部楼层
如果只是要转去另外一页 不一定要用Header的。
尝试用Javascript也是有一样的效果。

<?php echo '<script langugae="javascript">location.href="url here";</script>'; ?>
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

 

ADVERTISEMENT


本周最热论坛帖子本周最热论坛帖子

ADVERTISEMENT



ADVERTISEMENT

ADVERTISEMENT


版权所有 © 1996-2026 Cari Internet Sdn Bhd (483575-W)|IPSERVERONE 提供云主机|广告刊登|关于我们|私隐权|免控|投诉|联络|脸书|佳礼资讯网

GMT+8, 22-5-2026 11:59 AM , Processed in 0.076901 second(s), 12 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表