Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 空格将自动替换为下划线_Php_Html_Forms - Fatal编程技术网

Php 空格将自动替换为下划线

Php 空格将自动替换为下划线,php,html,forms,Php,Html,Forms,我的输入字段中有以下php代码: <input type="submit" name='<?php echo $row["date"];?>' value="send"> 为什么,当我张贴这个表单时,空白空间会被一个下划线自动替换,我如何避免它? var\u dump($\u POST): 我怎样才能避免呢 您可以使用str\u replace获得所需的行为: <?php $send = '2015-10-03_19:01:47'; echo str_replac

我的输入字段中有以下php代码:

<input type="submit" name='<?php echo $row["date"];?>' value="send">

为什么,当我张贴这个表单时,空白空间会被一个下划线自动替换,我如何避免它?

var\u dump($\u POST)

我怎样才能避免呢

您可以使用
str\u replace
获得所需的行为:

<?php
$send = '2015-10-03_19:01:47';
echo str_replace("_"," ",$send);
?>

正如@arkascha在评论中解释的那样

ID和名称标记必须以字母([a-Za-z])开头,后面可以是任意数量的字母、数字([0-9])、连字符(“-”)、下划线(“)、冒号(:”)和句点(“.”)

因此,不可能将空格作为名称。你问过如何避免这个?很简单,就是不要使用日期作为输入的名称。可以使用隐藏的输入字段来保存日期值

<input type="hidden" name='date' value='<?php echo $row["date"];?>'>
<input type="submit" name='submit' value="send">

这是您的浏览器正在修复(无效)代码。输入字段名不能有任意名称。例如,名称中不能有空白。您的浏览器试图为您解决此问题。如果输入的
日期是
205-10-03 19:01:47
,该怎么办?也许你应该意识到这一点。我认为值是日期而不是名称对吗?是的,我也在考虑使用str_替换作为解决方法。然而,由于我要替换一个特定的字符(即下划线),我一开始并没有特别放在那里,我担心的是,在不同的情况下,不同的浏览器可能会用“u”以外的东西替换不重要的空格,这会使str_替换无效。@user5355646 ah,我正在替换一个特定的字符(即下划线),我并没有把它放在第一位,这是一个有效的问题。我在两个不同的浏览器上测试了它,它运行正常。但谁知道它最终会出现在任何其他浏览器上,使用
隐藏的
字段会更好<代码>:-)
谢谢!但是您建议使用隐藏字段会带来另一个问题,那就是我想发布所选(=提交)行的日期,但是如果我使用的隐藏字段都具有相同的名称“date”,那么我就得不到所选的值。感谢您的解释,我不知道这一点,奇怪的是,即使你只把数字作为名字(不过,显然不包括空格),它也能起作用。无论如何,您使用隐藏字段的建议带来了一个不同的问题,即我想发布所选(=提交)行的日期,但如果我使用所有具有相同名称“日期”的隐藏字段,则无法获取所选值。
<?php
$send = '2015-10-03_19:01:47';
echo str_replace("_"," ",$send);
?>
2015-10-03 19:01:47
<input type="hidden" name='date' value='<?php echo $row["date"];?>'>
<input type="submit" name='submit' value="send">
<button type="submit" name="submit" value="<?php echo $row["date"]; ?>">Submit</button>