是否有办法将JavaScript字符串传递给MySQL的NodeJSfriendly?我正在尝试将电子邮件地址传递给我的NodeJS服务器并查询到MySQL数据库。在执行常规文本(例如用户名)时可以正常工作,但电子邮件地址却不能。显然,使用转义不是正确的答案,因为这并不意味着要进行SQL插入。我假设我需要一些PHPhtml" target="_blank">函数mysql_real_escape_string()
。
事实证明,mysql_real_escape_string()非常简单。
mysql_real_escape_string()
调用MySQL的库函数mysql_real_escape_string,该函数将反斜杠添加到以下字符前:\ x00,\ n,\ r,\,’,’和\x1a。
实际上听起来很简单。您可以执行以下操作:
function mysql_real_escape_string (str) {
return str.replace(/[\0\x08\x09\x1a\n\r"'\\\%]/g, function (char) {
switch (char) {
case "\0":
return "\\0";
case "\x08":
return "\\b";
case "\x09":
return "\\t";
case "\x1a":
return "\\z";
case "\n":
return "\\n";
case "\r":
return "\\r";
case "\"":
case "'":
case "\\":
case "%":
return "\\"+char; // prepends a backslash to backslash, percent,
// and double/single quotes
default:
return char;
}
});
}
注意
:我还没有通过任何类型的单元测试或安全测试来运行它,但是它确实可以工作,并且,作为一个额外的好处,它转义了制表符,退格键和’%’,因此也可以使用按照OWASP的建议在LIKE查询中使用(不同于PHP原始版本)。
我确实知道这mysql_real_escape_string()
是字符集感知的,但是我不确定这会带来什么好处。
问题内容: 我在node.js中运行它: 我不明白的是为什么为什么要“漂亮地打印”对象,而字符串连接却“丑陋地打印”对象。更重要的是,使它打印的最佳方法是什么? 问题答案: 将对象强制转换为字符串,即: http://jsfiddle.net/Ze32g/ 漂亮的打印是一个很好的,可能非常复杂的基础代码,有人将其作为对象和方法的一部分来实现。 试试这个:
这是示例字符串: 值的数目不是恒定的。我如何从这个字符串中分离出所有的值?
简介 我只介绍了表和数,因为它们在Scheme中最为常用。然而,Scheme也有像字符(Character)、字符串(String)、符号(Symbol)、向量(Vector)等的其它数据类型,我将在11到14章节中介绍它们。 字符 在某个字符前添加#\来表明该物是一个字符。例如,#\a表示字符a。字符#\Space、#\Tab、#\Linefeed和#\Return分别代表空格(Space)、制
字符串是一种数据类型,由字符组成,用于表示文本数据。 1. 创建字符串 使用字符串字面量就可以创建字符串。 var str1 = ''; var str2 = ""; 以上例子创建了两个空字符串。字符串可以用单引号包裹,也可以用双引号包裹,效果是一样的。 大部分前端程序员都会选择单引号,这么做的原因是为了契合 HTML 的书写习惯,拼接 HTML 的时候,HTML 元素的属性可以直接使用双引号
本文向大家介绍浅谈JavaScript字符串与数组,包括了浅谈JavaScript字符串与数组的使用技巧和注意事项,需要的朋友参考一下 JavaScript字符串 字符串是一系列字符的集合,包括英文字母、标点符号、特殊符号、汉字等。 在JavaScript中,字符串可以使用双引号(" ")或单引号(' ')来表示。 双引号和单引号必须成对出现,双引号里面可以包含单引号,单引号里面也可以包含双引号。
主要内容:声明字符串变量,PL/SQL字符串函数和运算符PL/SQL中的字符串实际上是一个具有可选大小规格的字符序列。字符可以是数字,字母,空白,特殊字符或全部的组合。 PL/SQL提供三种字符串 - 固定长度字符串 - 在这样的字符串中,程序员在声明字符串时指定长度。该字符串的右边填充规定的长度。 可变长度字符串 - 在这样的字符串中,指定字符串的最大长度达,并且不会填充。 字符大对象(CLOB) - 这些可变长度字符串最多可达。 PL/SQL字符串