gpt4 book ai didi

php - 如何在ajax中发送 "&"作为请求参数

转载 作者:行者123 更新时间:2023-12-01 06:31:18 25 4
gpt4 key购买 nike

我使用jquery代码将表单数据传递给php,然后php代码将数据保存到mysql数据库。如果标题是“如何使用php保存到mysql数据库”,则标题将以“如何保存”的形式存储在数据库中。我该如何解决这个问题?

这是我的 JS 代码

    var dataString = 'title='+ title + '&url=' + url + '&description=' + description + '&published=' + published+ '&catid=' + catid;

//alert (dataString);return false;

$.ajax({
type: "POST",
url: "process.php",
data: dataString,
success: function() {
$(".button").hide();
$('#messages').html("<div id='message'></div>");
$('#message').html("<h2>weblink Form Submitted!</h2>")
.hide()
.fadeIn(1500, function() {
$('#message');
});
}
});

和php代码

    <?php
$con = mysql_connect("localhost","db","pass");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}

mysql_select_db("dalanrep_dalanreportcom", $con);

$title = mb_convert_encoding(trim($_POST['title']),'HTML-ENTITIES', 'UTF-8');
$url = mb_convert_encoding(trim($_POST['url']),'HTML-ENTITIES', 'UTF-8');
$description = mb_convert_encoding(trim($_POST['description']),'HTML-ENTITIES', 'UTF-8');
$published = mb_convert_encoding(trim($_POST['published']),'HTML-ENTITIES', 'UTF-8');
$catid = mb_convert_encoding(trim($_POST['catid']),'HTML-ENTITIES', 'UTF-8');

$title =mysql_escape_string($title );
$url = mysql_escape_string($url );
$description = mysql_escape_string($description );
$sql="INSERT INTO table (title, url, description,catid)
VALUES ('$title','$url','$description','$catid')";



if (!mysql_query($sql,$con))
{
die('Error: ' . mysql_error());
}
echo "1 record added";

最佳答案

& 是 URL 中的特殊字符。它是多个参数的分隔符。您需要自己对参数值进行 URL 编码:encodeURIComponent()

var dataString = 'title' + encodeURIComponent(title) + '&url=' + encodeURIComponent(url) ... ;

以 JS 对象 {} 的形式提供参数,以便 jQuery 自行处理。

var data = {
"title": title,
"url": url,
...
};

关于php - 如何在ajax中发送 "&"作为请求参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4097669/

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