Php 表单未在数据库中插入输入的数据,但不会';没有显示任何错误
伙计们,我希望有人能帮我找到这段代码中的问题,那就是阻止它在数据库中插入输入的数据 我在这里看到过类似的帖子,我纠正了一两件事,但似乎仍然不起作用,这就是我为什么写这篇文章的原因 此外,当这段代码只有三个表单字段/变量时,它工作得非常完美。现在我又创建了一些,它不会向数据库发送任何提交的值 如果有人问,在同一个页面中显示结果的函数工作得很好,因为我已经尝试在数据库中手动插入值,并且它们显示在文件中,是什么让我认为插入函数确实存在问题 有人能帮我找到它为什么不走吗Php 表单未在数据库中插入输入的数据,但不会';没有显示任何错误,php,database,insert,submit,Php,Database,Insert,Submit,伙计们,我希望有人能帮我找到这段代码中的问题,那就是阻止它在数据库中插入输入的数据 我在这里看到过类似的帖子,我纠正了一两件事,但似乎仍然不起作用,这就是我为什么写这篇文章的原因 此外,当这段代码只有三个表单字段/变量时,它工作得非常完美。现在我又创建了一些,它不会向数据库发送任何提交的值 如果有人问,在同一个页面中显示结果的函数工作得很好,因为我已经尝试在数据库中手动插入值,并且它们显示在文件中,是什么让我认为插入函数确实存在问题 有人能帮我找到它为什么不走吗 <?php mys
<?php
mysql_connect("localhost","root","");
mysql_select_db("activitytest1");
if(isset($_POST['type'])) { $type = $_POST['type']; }
if(isset($_POST['description'])){ $description = $_POST['description']; }
if(isset($_POST['author'])) { $author = $_POST['author']; }
if(isset($_POST['pre'])) { $pre = $_POST['pre']; }
if(isset($_POST['while'])) { $while = $_POST['while']; }
if(isset($_POST['postact'])) { $postact = $_POST['postact']; }
if(isset($_POST['outcome'])) { $outcome = $_POST['outcome']; }
if(isset($_POST['path'])) { $path = $_POST['path']; }
if(isset($_POST['books'])) { $books = $_POST['books']; }
if(isset($_POST['grouping'])) { $grouping = $_POST['grouping']; }
if(isset($_POST['time'])) { $time = $_POST['time']; }
if(isset($_POST['submit'])) { $submit = $_POST['submit']; }
$dbLink = mysql_connect("localhost", "root", "");
mysql_query("SET character_set_client=utf8", $dbLink);
mysql_query("SET character_set_connection=utf8", $dbLink);
if (!empty($_POST['submit']))
{
if($type&&$description&&$author&&$pre&&$while&&$postact&&$outcome&&$path&&$books&&$grouping&&$time) {
$insert=mysql_query("INSERT INTO activitytest1 (type, description, author, pre, while, postact, outcome, path, books, grouping, time) VALUES ('".$_POST['type']."','".$_POST['description']."','".$_POST['author']."','".$_POST['pre']."', '".$_POST['while']."','".$_POST['postact']."','".$_POST['outcome']."','".$_POST['path']."', '".$_POST['books']."','".$_POST['grouping']."','".$_POST['time']."',)");
} else {
die ("Failed to connect to mysql: " . mysql_error());
}
}
$dbLink = mysql_connect("localhost", "root", "");
mysql_query("SET character_set_results=utf8", $dbLink);
mb_language('uni');
mb_internal_encoding('UTF-8');
$getquery=mysql_query("SELECT * FROM activitytest1");
while($rows=mysql_fetch_assoc($getquery))
{
$type=$rows['type'];
$description=$rows['description'];
$author=$rows['author'];
$pre=$rows['pre'];
$while=$rows['while'];
$postact=$rows['postact'];
$outcome=$rows['outcome'];
$path=$rows['path'];
$books=$rows['books'];
$grouping=$rows['grouping'];
$time=$rows['time'];
echo '<br/>
<table width="909" border="1" align="center" cellpadding="5" cellspacing="0">
<tr>
<td width="125">' . $type . '</th>
<td width="680">' . $description . '</th>
<td width="120">' . $author . '</th>
</tr></table> <br/>' . $pre . '<br/>' . $while. '<br/>' . $postact . '<br/>' . $outcome . '<br/>' . $path . '<br/>' . $books . '<br/>' . $grouping . '<br/>' . $time . '
<hr size="1"/> ' ;}
?>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Test 1</title>
</head>
<body>
<br>
<table width="909" border="1" align="center" cellpadding="5" cellspacing="0">
<tr>
<th width="125" scope="col">Type</th>
<th width="680" scope="col">Description</th>
<th width="120" scope="col">Author</th>
</tr></table>
<br>
<form action="index.php" method="POST">
<table width="909" border="1" align="center" cellpadding="5" cellspacing="0">
<td width="125"><label>
</label>
<select name="type" id="type" onChange="display(this,'Task','Semi-task','Practice','Exercise','Lead-in');">
<option value="Unselected" selected="selected">Choose one:</option>
<option value="Task">Task</option>
<option value="Semi-task">Semi-task</option>
<option value="Practice">Practice</option>
<option value="Exercise">Exercise</option>
<option value="Lead-in">Lead-in</option>
<option value="Game">Game</option>
<option value="Video">Video</option>
<option value="Song">Song</option>
<option value="Mimio">Mimio</option>
<option value="Other">Other</option>
</select></td>
<td width="680"><div id="Semi-task" style="display: none;">
Pre:<br>
</div>
<div id="Exercise" style="display: none;">While:</div>
<br>
<div id="Practice" style="display: none;">
Post:<br>
<br>
</div>
<div id="Task" style="display: none;"> Outcome: <br />
<textarea name="description" cols="70" rows="2"></textarea>
<br />
</div>
<div id="Lead-in" style="display: none;">
Link/Path:<br>
<br>
</div></td>
<td width="120"><input name="author" type="text" size="12" maxlength="25" /></td>
</tr>
<tr>
<td colspan="3"> <textarea name="pre" id="Pre" cols="45" rows="5"></textarea>
<br /><textarea name="while" id="While" cols="45" rows="5"></textarea>
<br /><textarea name="postact" id="Post" cols="45" rows="5"></textarea>
<br /><textarea name="outcome" id="Outcome" cols="45" rows="5"></textarea>
<br /><input type="text" name="path" id="Path" />
<br /><input type="text" name="books" id="Books" />
<br /><input type="text" name="grouping" id="Grouping" />
<br /><input type="text" name="time" id="Time" />
</td>
</tr>
<tr>
<td colspan="3"><input type="submit" name="submit" value="Comment" /></td>
</tr>
</table>
</form>
</body>
</html>
测试1
类型
描述
作者
选择一个:
任务
半任务
实践
运动
引入
游戏
视频
歌曲
咪咪
其他
预处理:
而:
帖子:
结果:
链接/路径:
请友善点,伙计们,我在这方面完全是新手。:) mySQL代码的末尾有一个额外的逗号
尝试以下操作:
$insert=mysql_query(“插入到activitytest1(类型、描述、作者、前、时、后、结果、路径、书籍、分组、时间)”值(“$$u POST['type']”、“$$u POST['description']”、“$$u POST['author']”、“$$u POST['pre']”、“$$u POST['while']”、“$”POST['while']”、“、“$$u POST['POST['POST']”、“$”、”、“$”、“$”POST['outcourt'.”、路径['.$发布['books']。“,”,“$发布['grouping']。”,“$”发布['time']。”)”代码>首先检查您传递的数据是否有效。您的$\u POST['description']字段为空,因此指针未进入mysql\u query()函数
我在代码中看到的另一个想法是:无;具有$\u POST['description']元素的div。删除该显示:无或删除该元素的验证部分 请不要使用mysql.*
,因为它已经贬值了。相反,您应该使用mysqli.*
或PDO
。谢谢,Asfer。但问题不在于显示器:什么都没有。事实上,我从一个完美的工作表(只有三个字段/变量)改编了这段代码。我真的不明白为什么当我去掉新的变量,只保留三个原始变量时,这段代码就不能工作了。我对这段代码真的很陌生……那么,你能解释一下你的意思吗“首先检查您传递的数据是否有效。您的$\u POST['description']字段为空,因此指针未进入mysql\u query()函数。“,甚至可以举个例子吗?错误的答案有错误的注释…你确定我的答案不起作用吗?是的,aviation978。在我去掉多余的逗号后它仍然不起作用。不过,感谢你的反馈!我已经将代码改编成mysqli,现在它起作用了(它将数据发送到数据库).但现在我打开页面后马上收到“通知:未定义索引”,它会创建一个空行。如果我填写字段并提交,它会工作,它们会保存在数据库中。不过,我想我需要一个代码,告诉“提交”不要将数据发送到空数据库。这是什么代码?