【问题标题】:Text after space character cut off in input text field when reloading php script重新加载php脚本时输入文本字段中空格字符后的文本被切断
【发布时间】:2019-02-21 04:51:28
【问题描述】:

在输入类型文本中,我只得到一个字符串。例如,如果数据库名称字段中有“abc xyz”。所以它只显示 abc 而不是全名这发生在所有字段中。也请检查我的代码。

        while($row = mysqli_fetch_array($result))  
        {
            //print_r($row['name']);
            echo "<tr>";
            echo "<td> ". $row['id'] . "</td>";
            echo "<td> <input type=text placeholder = name onchange= nameValidation(this) value = ".$row["name"]." disabled> </td>";

            echo "<td> <input type='email' placeholder = 'email' value = ". $row['email'] ." onchange= nameValidation(this) disabled> </td>";

            echo '<td> <input type="button" value="edit" onclick="edit(this)">
                <input type="button" value="update" onclick="update(this)" style="display:none;">
                <input type="button" value="Delete" onclick="delete1(this)" style="display:none;">
            </td>';

            echo "</tr>";
        }
        echo "</table>";

【问题讨论】:

    标签: php html mysql


    【解决方案1】:

    HTML 规范says:

    属性放置在开始标记内,由名称和值组成,由“=”字符分隔。如果属性值不包含 ASCII 空格或任何 " ' ` = ,则该属性值可以保持不带引号。否则,必须使用单引号或双引号将其引用。该值以及“=”字符,如果值为空字符串,则可以完全省略。

    在这种情况下,文本“abc xyz”确实包含空格并且必须被引用。但它不在您的代码中。 PHP 完成解析后,您的input 标签将是:

    <input type=text placeholder = name onchange= nameValidation(this) value = abc xyz disabled>
    

    其中,“abc”将被解释为值,“xyz”将被解释为另一个未知属性。

    要纠正这个问题,您需要用\" 引用该值,如下所示:

    echo "<td> <input type=text placeholder=name onchange=nameValidation(this) value=\"" . $row["name"] . "\" disabled> </td>";
    

    或者你可以切换到单引号:

    echo '<td>';
    echo '<input type="text" placeholder="Enter your name" onchange="nameValidation(this)" value="' . $row['name'] . '" disabled>';
    echo '</td>';
    

    【讨论】:

    • 这么简单的解决方案,但我从来没有意识到。直到现在我一直认为 $row['name'];等于“'.$row['name'].' " 并且这只是根据引号以不同方式编写它的约定。感谢您解释差异。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-28
    • 2012-03-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多