【发布时间】:2014-02-13 22:24:29
【问题描述】:
我正在为我的网站创建一个 cms,但此表单未提交。我知道这是一个查询问题,但我不知道出了什么问题。有什么帮助吗?此外,$db 在我的配置中,我确实将它包含在页面顶部。问题是它没有提交,它所做的一切都是刷新,没有别的。我也想稍后在表格中显示表单提交,但我不知道该怎么做,如果有人能帮助我完成那部分,那也很棒。
php:
<?php
if(isset($_POST['submit']))
{
$c_name = $_POST['channel_username'];
$v_link = $_POST['video_link'];
$v_title = $_POST['video_title'];
$v_desc = $_POST['vido_description'];
$v_tags = $_POST['video_tags'];
$m_sources = $_POST['music_sources'];
$s_requests = $_POST['special_requests'];
if(empty($c_name) or empty($v_link) or empty($v_title) or empty($v_title) or empty($v_desc) or empty($v_tags))
{
echo 'You must fill in the first 5 fields.';
}
else
{
$getRank = $db->query("SELECT * FROM users WHERE username = '".$_SESSION['username']."'");
while ($row = $getRank->fetch_assoc())
{
$usename = $row['username'];
$rank = $row['rank'];
}
$db->query("INSERT INTO submitted_forms (username, rank, channel_username, video_link, video_title, video_description, video_tags, music_sources, special_requests) VALUES ('$username', '$rank', '$c_name', '$v_link', '$v_title', '$v_desc', '$v_tags', '$m_sources', '$s_requests')");
echo 'Form submitted successfully.';
}
}
?>
HTML:
<form method="POST">
<p>Channel name <input type="text" name="channel_name" required>*</p>
<p>Video Link <input type="text" name="video_link" required>*</p>
<p>Video Title <input type="text" name="video_title" required>*</p>
<p>Video Description <input type="text" name="video_description" required>*</p>
<p>Video Tags <input type="text" name="video_tags" required>*</p>
<p>Music Sources <input type="text" name="music_sources"></p>
<p>Special Requests <input type="text" name="special_requests"></p>
<br></br>
<p><input type="submit" name="submit" value="Submit"></p>
</form>
【问题讨论】:
-
抱歉,HTML 和 PHP 中的字段名称有点不匹配。因此,这个问题是没有用的。
-
除了表单字段/帖子键不匹配(
c_name!=channel_username等),您的查询有不匹配的单引号/双引号 ->"INSERT INTO submitted_forms ... VALUES (''.$username.'',应该是"INSERT INTO submitted_forms ... VALUES ('".$username."',或者干脆"INSERT INTO submitted_forms ... VALUES ('$username', -
另外,您正在检查
if(isset($_POST['submit'])),但您的提交按钮没有名称submit-><input type="submit" value="Submit">应该是<input type="submit" name="submit" value="Submit">。看起来您需要检查 html 和 php,并确保每个表单元素与每个 php post 变量相同。 -
我匹配了 html 和 php 并将查询更改为下面的人发布的内容,但仍然没有工作。我现在要做提交按钮,看看是否有效
-
是啊,我改了按钮,还是不行,我改了查询,还是不行,我把所有的html都匹配了,还是不行。
标签: php html mysql forms submission