Coasts Energy D-6ren">
gpt4 book ai didi

php - 无法提交到数据库

转载 作者:行者123 更新时间:2023-11-29 08:04:29 25 4
gpt4 key购买 nike

使用 MVC 框架,我编写了一些旨在向数据库添加信息的代码。

在 Index.php 中( View )

<form method="post" action="<?php echo URL;?>note/updatetopic">
<select>
<option value="1">Coasts</option>
<option value="2">Energy Demand</option>
</select>
<input type="submit" name="topic_selection" value="Choose" />
</form>

上面的代码旨在发布有关用户想要修改的内容的信息。

在 note.php( Controller )中

public function updatetopic()   {

if (isset($_POST['topic_selection'])) {
$note_model = $this->loadModel('Note');
$note_model->updatetopic($_POST['topic_selection']);
}
header('location: ' . URL . 'note');
}

上面的代码旨在从index.php中的代码中获取信息并将其转发到运行函数的note_model上。

在 note_model.php(模型)中

public function updatetopic($topic_selection)
{
$topic_selection = strip_tags($topic_selection);

$sql = "INSERT INTO users (topic_revising) VALUES (:topicselected) WHERE user_id=:user_id";
$query = $this->db->prepare($sql);
$query->execute(array(':topicselected' => $topic_selection, ':user_id' => $_SESSION['user_id']));

$count = $query->rowCount();
if ($count == 1) {
return true;
} else {
$_SESSION["feedback_negative"][] = TOPIC_UPDATE_FAILED;
}
// default return
return false;
}

这旨在验证提交的信息并将其插入数据库,但它输出:

$_SESSION["feedback_negative"][] = TOPIC_UPDATE_FAILED;

有人可以帮助我并告诉我我做错了什么吗?谢谢。

最佳答案

您没有为选择的标签选择任何名称:

尝试这样:

 <select name="topic">
<option value="1">Coasts</option>
<option value="2">Energy Demand</option>
</select>

现在获取您的下拉列表的值:

if (isset($_POST['topic'])) {
$note_model = $this->loadModel('Note');
$note_model->updatetopic($_POST['topic']);
// $_POST['topic'] == 1 or 2 depends upon selection
}

你可以像这样改变它:

 <select name="topic">
<option value="coasts">Coasts</option>
<option value="Energy_Demand">Energy Demand</option>
</select>

现在您将获得所选列表项的实际值并可以进一步移动......

关于php - 无法提交到数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23011251/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com