如何在PHP的文本框中显示带有空格的整个变量


how to display the entire variable with space in textbox in php

我想在文本框中显示带有空格的值。数据库值是"usman road"。但在文本框中,它只显示"usman"。

            $value="select * from employee where e_id=$ses";
            $value1=mysql_query($value);
            $vfet=mysql_fetch_assoc($value1);
   echo '<p>First Name<input type="text" name="f" size=18 maxlength=50 style="background-color:transparent;border:0px solid white;" readonly value='.$vfet['e_first_name'].'></p>';

在值两边加上引号

... value="'.$vfet['e_first_name'].'"...

您拥有的是无效的html并破坏了空间上的值

... value='.$vfet['e_first_name'].' ...  // value = john doe
                                                 ^

进行更改后,它将变为

value = "john doe"

要对属性使用不带引号的值,您必须遵循以下 HTML 规范

通过提供以下内容来指定不带引号的属性值零件完全按以下顺序排列:

1.属性名称

2.零个或多个空格字符

3.单个"="字符

4.零个或多个空格字符

5.属性值

除了对属性值的一般要求外,还不带引号的属性值具有以下限制:

• 不得>包含任何文字空格字符

• 不得包含任何"、""、>="、">"、"<"或""字符

不得为空字符串

由于您的值有一个空格,因此它违反了规则:)

参考

使用 preg_match

 <?php
$a = "usman road";
$b = "SamSpade";
$c = "usman't't'troad";
var_dump(preg_match('/'s/',$a));
var_dump(preg_match('/'s/',$b));
var_dump(preg_match('/'s/',$c));

输出:

int(1)
int(0)
int(1)