Php Post 方法不在空格字符后传递字符串

标签 php html forms post form-submit

提交表单后,我在使用 POST 方法时遇到问题。提交表单后,它没有传递完整的字符串,但它在“select”和“option”html中正确显示。

在数据库中,我有一个名为“administradores”的表,其中有一列名为“id”,其他列名为“administrador”: 编号:1 管理员:“亚历杭德罗·萨尔加多”

这是 php 代码:

function listAdministradores(){
global $conn;
$result = $conn->query("SELECT * FROM administradores");
while($row = $result->fetch_assoc()){
    echo '<option value='.$row["administrador"].'>'.$row["administrador"].'</option>';
}

}

这是html代码:

    <form action="./includes/crearpropuesta.inc.php" method="post">
    <label for="administrador" class="form-label pt-3">Administrador:</label>
    <select name="administrador" id="administrador" class="form-select">
        <?php listAdministradores() ?>
    </select>

它正确显示了名字“Alejandro Salgado”:

html result

但是当我提交表单和 var_dump($_POST["administrador"]) 时,它仅返回名字“Alejandro”:

string(9) "Alejandro"

这是怎么回事?

最佳答案

要包含由空格分隔的字符,您需要用引号将数据括起来(在您的情况下为双引号)

因此,请更改

echo '<option value='.$row["administrador"].'>'.$row["administrador"].'</option>';

echo '<option value="'.$row["administrador"].'">'.$row["administrador"].'</option>';

关于Php Post 方法不在空格字符后传递字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73676470/

相关文章:

php - 提交表单(jquery)并在 colorbox 中显示结果

php - 在将数据保存到数据库之前如何检查重复项?

php - Javascript 滚动到 PHP 变量 通过链接传递的滚动点

javascript - 如何让我的 content2 边框进入 content1 边框半径内以及如何在 content2 元素之间放置一条垂直线?

html - slider 图像和背景重复?

javascript - 使用 jQuery 更改文本输入值

javascript - 多维表单数组到 JavaScript 对象

php - 在 laravel 5.5 中,此集合实例上不存在属性 [id]

javascript - jQuery 动态添加表单字段、删除表单字段

javascript - 将填充顶部添加到 Cordova 状态栏