PHP GET方法空间错误

标签 php html get

<?php

$current_subject = $_GET['subject_id'];
$current_content = $_GET['note_id'];

echo "<form method=\"post\" action=mainpage.php?subject_id=".$current_subject."&note_id=".$current_content.">";

?> 
  <input type='text' name='list_item' value=''>
  <input type='submit' name="new_item" value="New Item">   
</form>

问题是,当 GET 变量之一是两个单词时,链接不会那样写。例如,如果 $current_subject="Advanced Chemistry"$current_content="Valence Electrons" 链接将显示为:

<form method=​"post" action=​"mainpage.php?subject_id=Advanced" chemistry&note_id=​"Valence" electrons>​

最佳答案

您需要urlencode()像这样的变量:

<?php

$current_subject = $_GET['subject_id'];
$current_content = $_GET['note_id'];

$subject = urlencode($current_subject);
$content = urlencode($current_content);

$action = "mainpage.php?subject_id=" . $subject . "&note_id=" . $content;

?>

<form method="post" action="<?php echo $action; ?>">
  <input type="text" name="list_item" value="">
  <input type="submit" name="new_item" value="New Item">   
</form>

此外,您应该养成验证该数据的习惯。您可能想检查它们是否为整数。

关于PHP GET方法空间错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8662414/

相关文章:

php - 将 _DB_Prefix_ 和 $id_manufacturer 放在哪里?

php - 大型 mysql 数据库 Action 缓慢

javascript - 轮播图片位于彼此下方,我希望将它们放在幻灯片中

java - Android 中的 HTTPURL 连接速度慢

php - 如何在 php 中清理从 url 到 mysql 的简单 _GET 输入

php - 是否可以跳过 PHP 代码?

html - FCC 产品着陆页图标问题

javascript - 粘性标题没有完全固定

javascript - 仅当数据来自循环 GET 请求时,JSON stringify 才会失败

php - 使用 PHP 动态添加到 .htaccess 文件?