gpt4 book ai didi

php - mysql_query 插入信息的问题

转载 作者:太空宇宙 更新时间:2023-11-03 10:54:50 27 4
gpt4 key购买 nike

目前我的一个查询有问题 - 它似乎没有将任何值插入到我的数据库中。下面是我用于提交表单的代码。

<?php
if (empty($_POST) === false) {
$assignment_data = array(
'title' => $_POST['title'],
'number' => $_POST['number'],
'weighting' => $_POST['weight'],
'handout' => $_POST['handout'],
'handin' => $_POST['handin'],
'feedback' => $_POST['feedback'],
'wordcount' => $_POST['wordcount'],
'brief' => $_POST['brief'],
'sub_details' => $_POST['details'],
'add_note' => $_POST['notes']
);

create_assignment($assignment_data);
//header('Location: modules.php');
//exit();
}
function create_assignment($assignment_data) {
array_walk($assignment_data, 'array_sanitize');

$fields = '`' . implode('`, `', array_keys($assignment_data)) . '`';
$data = '\'' . implode('\', \'', $assignment_data) . '\'';

$query = mysql_query("INSERT INTO `assignments` ($fields) VALUES ($data)");
echo $fields;
echo $data;
$test = mysql_query($query) or die(mysql_error());;

print $test;
}

?>

我在表单中输入信息并提交后得到了这个结果:

`title`, `number`, `weighting`, `handout`, `handin`, `feedback`, `wordcount`, `brief`,
`sub_details`, `add_note`

'Dream Design', '2', '20', '07/01/2014', '08/01/2014', '08/01/2014', '2', 'asd',
'asdasd', 'asdasdasd'

Query was empty.

信息被放置在 $fields 和 $data 变量中,但似乎没有运行查询...没有任何内容被插入到我的数据库中。

非常感谢任何帮助或帮助。

最佳答案

你有:

$query = mysql_query("INSERT INTO `assignments` ($fields) VALUES ($data)");

然后

$test = mysql_query($query) or die(mysql_error());;
^^^^^^--- result of previous query

您不能使用查询句柄来“重新运行”查询。您需要将查询保存到一个变量中,然后重新使用它。例如

$sql = "INSERT ...";

$query = mysql_query($sql) or die(mysql_error());
$test = mysql_query($sql) or die(mysql_error());

您的第一个查询可能失败,返回 bool 值 FALSE。当传递给另一个查询调用时,该错误将被类型转换为空字符串,因此出现“空查询”错误消息。添加 or die(...) 业务会告诉您到底出了什么问题。

关于php - mysql_query 插入信息的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21466847/

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