gpt4 book ai didi

php - MySQL insert into 在特定字段上失败

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

我相信我的代码中的某些东西正在阻止将 PHP 插入数据库,这很奇怪,因为我在网站上的其他形式中使用相同的设置,所有这些都成功解析。

最让我困惑的是,如果只指定用户名密码,表单将成功通过,但是当我尝试添加电子邮件时(也是一个 varchar)和一个组(一个 1 个字符的整数),表单失败。我在下面添加了我的代码,希望您能帮助我找出我做错了什么。

PHP:

// Connecting, selecting database
$link = mysql_connect('DOMAIN', 'USERNAME', 'PASSWORD');
if (!$link)
{ die('Could not connect: ' . mysql_error());
}

mysql_select_db('DATABASE') or die('Could not select database');

// Convert form values to variables
$name = $_POST['name'];
$pass = md5($_POST['pass']);
$iemail = $_POST['email'];
$email = addslashes($iemail);
$group = $_POST['group'];

$order = "INSERT INTO `users` (name,pass,email,group)
VALUES ('$name','$pass', '$email', '$group')";

$result = mysql_query($result);
if($result)
{
echo
header("Location: manageusers.php?result=success&name=$name");
die();
}
else
{
mysql_error();
}

mysql_close($link);

HTML:

    <div class="panel panel-default">
<div class="panel-heading">
<h3 class="panel-title">Add User</h3>
</div>
<div class="panel-body">
<form role="form" action="adduser.php" method="post">
<div class="form-group">
<label for="name">Username</label>
<input type="name" name="name" class="form-control" id="name" placeholder="e.g: John Smith" required>
</div>
<div class="form-group">
<label for="pass">Password</label>
<input type="password" name="pass" class="form-control" id="pass" required>
</div>
<div class="form-group">
<label for="email">Email</label>
<input type="email" name="email" class="form-control" id="email">
</div>'; ?>
<div class="form-group">
<label for="group">Group</label>
<select class="form-control" name="group" id="group" required>
<option value="1">Student</option>
<option value="2">Teacher</option>
<option value="0">Admin</option>
</select>
</div>
<button type="submit" class="btn btn-primary">Submit</button>
</form>
</div>
</div>

最佳答案

group 是一个保留关键字,您应该避免将这些词作为列名。但是,如果您想使用它,请将它们包裹在反引号中

`group`

在此处查看完整列表 http://dev.mysql.com/doc/refman/5.0/en/reserved-words.html

Most of the words in the table are forbidden by standard SQL as column or table names (for example, GROUP). A few are reserved because MySQL needs them and uses a yacc parser

关于php - MySQL insert into 在特定字段上失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24108213/

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