- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在进行 MySQL INSERT
查询之前,我尝试同时使用 mysqli_real_escape_string
和 trim
。我的代码如下:
<?php
$fname = mysqli_real_escape_string($dbc, trim($_POST['fname']));
$sname = mysqli_real_escape_string($dbc, trim($_POST['sname']));
$occ = mysqli_real_escape_string($dbc, trim($_POST['occ']));
$twitter = mysqli_real_escape_string($dbc, trim($_POST['twitter']));
$email = mysqli_real_escape_string($dbc, trim($_POST['email']));
$skype = mysqli_real_escape_string($dbc, trim($_POST['skype']));
$topic1 = mysqli_real_escape_string($dbc, trim($_POST['topic1']));
$topic2 = mysqli_real_escape_string($dbc, trim($_POST['topic2']));
$topic3 = mysqli_real_escape_string($dbc, trim($_POST['topic3']));
$avoid1 = mysqli_real_escape_string($dbc, trim($_POST['avoid1']));
$avoid2 = mysqli_real_escape_string($dbc, trim($_POST['avoid2']));
$avoid3 = mysqli_real_escape_string($dbc, trim($_POST['avoid3']));
$cr = mysqli_real_escape_string($dbc, trim($_POST['cr']));
if ((!empty($fname)) && (!empty($sname)) && (!empty($email)) && (!empty($topic1))) {
$dbc = mysqli_connect('host', 'user', 'password', 'database') or die('Error connecting to MySQL server');
$query = "INSERT INTO initial_details (fname, sname, occ, twitter, email, skype, topic1, topic2, topic3, avoid1, avoid2, avoid3, cr) VALUES ('$fname', '$sname', '$occ', '$twitter', '$email', '$skype', '$topic1', '$topic2', '$topic3', '$avoid1', '$avoid2', '$avoid3', '$cr')";
$result = mysqli_query($dbc, $query);
if (!$result) {
mysqli_close($dbc);
echo 'Duplicate';
} else {
mysqli_close($dbc);
echo 'Success - entry added';
}
} else {
echo 'Error';
}
?>
使用上面的代码我得到“错误”消息,但是如果我删除 mysqli_real_escape_string()
并只使用 trim
我能够成功插入我的条目。
为什么我不能在这种情况下使用 mysqli_real_escape_string()
?
最佳答案
$dbc = mysqli_connect
必须先于所有 mysqli_real_escape_string
调用才能使其工作。这是因为您需要一个事件的 mysqli 连接才能使用该功能。
关于php - mysqli_real_escape_string 无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9055974/
这个问题在这里已经有了答案: 9年前关闭。 Possible Duplicate: Best way to prevent SQL Injection in PHP 我想知道 sql 注入(injec
我想消除sql注入(inject),我应该使用mysqli_real_escape_string()或者在mysqli中清楚吗? 例如 $nick = mysqli_real_escape_strin
我是 PHP 新手。我试图将一个变量的值插入到 MariaDB 表中,并试图使用 mysqli_real_escape_string 转义“$value”。我的想法来自 here .它向表中插入了一个
我有这个代码: $var = mysqli_real_escape_string($connection,$_POST['var']); $sql = "UPDATE users SET var =
有人有这个解决方案吗?我从今天晚上突然出现蓝屏错误后就遇到了这个问题。我正在使用这个简单的代码在项目中实现 session ,但在那个神秘的重启之后,这个东西表现得很奇怪!!!! 这段代码应该可以工作
我有以下 PHP 函数: public function signup() { $mysql = mysqli_connect(HOSTNAME, USERNAME, PASSWORD,
我在电子邮件地址上使用 mysqli_real_escape_string(),它返回一个空字符串。它可以对任何电子邮件地址执行此操作。 "url", "username"=>"userna
这个问题已经有答案了: PHP parse/syntax errors; and how to solve them (20 个回答) 已关闭 7 年前。 为什么即使我使用 mysqli_real_e
这个问题已经有答案了: mysqli::query(): Couldn't fetch mysqli (4 个回答) 已关闭 6 年前。 在这里,我正在创建注册新用户表单,但我在mysql_real_
所以目前我的代码采用程序格式,因此为了防止自己在 mysqli_real_escape_string 函数中添加“链接”,我创建了一个如下所示的方法: // Used to create a
我正在尝试改造我的一个项目以使用 real_escape_string。我已经阅读了文档、教程和 stackoverflow 相关问题,看起来我做得正确,但显然有些问题。我非常有信心它就是 real_
我在程序 mysqli 中创建了以下脚本,因为我刚刚从旧的 mysql 开始。我不确定查询周围的引号类型是否可以防止注入(inject)。一些用户用 ' 发布示例,另一些用户用 " 发布示例,所以现在
有人知道为什么 mysqli 在某些服务器上不起作用吗? $mysqli = mysqli_connect(DB_SERVER, DB_USER, DB_PASS, DB_DATABASE); ech
我在 php 中使用 mysqli 扩展来连接数据库。我有一个如此简单的问题。使用 mysqli 而不是 mysql 更好吗?为什么有必要使用 mysqli_real_escape_string ?这
在进行 MySQL INSERT 查询之前,我尝试同时使用 mysqli_real_escape_string 和 trim。我的代码如下: 使用上面的代码我得到“错误”消息,但是如果我删除 mys
如果我不使用 mysql_real_escape_string 函数,代码可以正常工作。但是这个函数没有返回任何东西!我读到问题可能是由于我没有 mysql 连接,但事实并非如此! 请帮忙! 最佳答
所以我忙于 PHP,在我想知道的时候将数据插入 mysql:我看到一些帖子说使用单引号将数据插入数据库是不好的做法。示例之一:Why are VALUES written between quotes
我正在使用 mysqli_real_escape_string 的 OOP 方法转义字符串。我将输入的内容保存到 session 变量中以确保它正确转义。它似乎正确转义,但是当我检查输入数据库的内容时
我在电子邮件地址上使用 mysqli_real_escape_string(),它返回一个空字符串。它对任何电子邮件地址都执行此操作。 "url", "username"=>"usernam
在 mysqli_real_escape_string() 的 PHP 文档中,写道 Caution Security: the default character set The character
我是一名优秀的程序员,十分优秀!