我有一个表单正在尝试提交到数据库。成功提交后,我希望页面重定向到包含已提交数据的页面。我使用如下查询字符串来执行此操作:
header("location:palette.php?colID=$title");
生成的 URL 如下:palette.php?colID=Funky%20Colours
PHP header 重定向是否可以重定向到如下查询:
palette.php?colID=Funky-Colours
生成如下 URL:palette.php?colID=Funky-Colours
如果是的话,有人可以提供一个例子吗
最佳答案
您只需执行以下操作即可做到这一点:
header('Location: palette.php?colID='.urlencode(str_replace(' ','-',$title)));
但是在您的 palette.php
中,$_GET['colID']
将接收 Funky-Colours
而不是 Funky颜色
。所以你需要使用str_replace()再次将破折号转换为空格。
那么,另一个问题是,您打算如何处理这些带有破折号的列 ID?例如,提交的 $title
是 Something-With-Dashes
,您的脚本会将这些破折号转换为空格。但要回答你的问题,是的,可以使用 str_replace() 来做到这一点.
关于php - 使用查询字符串从 PHP header 重定向中删除 %20,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15463007/