PHP输出单引号和双引号作为输入元素的值

dih*_*akz 6 php mysql forms input

我有一个值($ title)存储在MySQL中,并使用PHP调用它来插入输入元素的值.问题是当使用单引号或双引号时,输入字段的值在该点终止.

应该发生的行为是输入字段应该与$ title变量中的数据完全填充,这样当表单更新时,引号保持不变.

这是PHP:

<?php
    echo '<input type=text size=91 name=title value="'.stripslashes($title).'">';
?>
Run Code Online (Sandbox Code Playgroud)

现在,这是一个典型的问题:如果$ title的值

this is a test " of what occurs with a quote
Run Code Online (Sandbox Code Playgroud)

我回应变量,它回应正确

this is a test " of what occurs with a quote
Run Code Online (Sandbox Code Playgroud)

但是,在输入字段中使用时,它呈现为:

<input value="this is a test " of what occurs with a quote">
Run Code Online (Sandbox Code Playgroud)

第一个"终止字段的值,导致新值为:

this is a test 
Run Code Online (Sandbox Code Playgroud)

当显示和更新该变量时,我很困惑如何获得显示的正确值并与表单一起提交.

cb0*_*cb0 8

尝试使用htmlspecialchars.这将逃脱"在你的头衔.

value="'.htmlspecialchars($title).'">
Run Code Online (Sandbox Code Playgroud)