如何使用JavaScript安全地对URL进行编码,以便将其放入GET字符串?
var myUrl = "http://example.com/index.html?param=1&anotherParam=2";
var myOtherUrl = "http://example.com/index.html?url=" + myUrl;
Run Code Online (Sandbox Code Playgroud)
我假设你需要myUrl在第二行编码变量?
(用于XML HTTP请求的JavaScript和用于执行SQL查询的PHP.)
我正在构建一个执行查询的Web应用程序.它使用XMLHTTP请求GET方法并将查询传递给执行它的PHP脚本.它工作正常,直到我( )在其中引入括号.
这是一个如何工作的例子:
function executeQry(){
qry = document.getElementByID('textarea').value;
qryHTTPRequest(encodeURI(qry));
//I've also tried encodeURIComponent(qry);
}
function xmlHTTPRequest(qry){
//fetches
urlFetch = "http://my.url.com/script.php?qry=" + qry;
}
Run Code Online (Sandbox Code Playgroud)
这是一个快速参考,我知道我的xmlhttp请求工作正常,因为它执行其他查询传递时需要做的事情,例如:
SELECT * FROM `tableName`
Run Code Online (Sandbox Code Playgroud)
工作正常,但当你尝试做类似的事情
CREATE TABLE `new_table`
AS (SELECT * FROM `old_table`)
Run Code Online (Sandbox Code Playgroud)
然后这就是它不会执行的时候,我得到了403错误,所以我认为这是一个()因为我甚至在PHP本身上尝试了相同的代码,而不必通过它并且它工作,所以必须有一个URL编码过程的问题对吗?如果这是问题,是否有一种编码这些字符的方法?我假设还有其他字符不能用encodeURI()方法编码encodeURIComponent().提前致谢!