首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用POST方法使用Ajax从javascript向PHP发送大量字符

使用POST方法使用Ajax从javascript向PHP发送大量字符
EN

Stack Overflow用户
提问于 2019-05-25 01:04:18
回答 2查看 58关注 0票数 2

这是我的JS文件

代码语言:javascript
复制
function save()
{

    var hist = document.getElementById("hist").value;
                var mission =   document.getElementById("mission").value;

            var params = "history=" + hist+ "&mission=" + mission;
 var xmlhttp = new XMLHttpRequest();
        xmlhttp.onreadystatechange = function() 
        {
             if (this.readyState == 4 && this.status == 200 ) 
            {

                 UserAccountInfo =   this.responseText;
                 alert(UserAccountInfo);
            }
        }
        xmlhttp.open("POST","savecompany.php",true);
        xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
        xmlhttp.send(params);  
}   

hist msg将

由工程师Anas创建,经过8年的营销顾问和业务发展经理的经验,在非洲和中东的W.C赫留斯GmbH。自1983年以来,MYMSA被埃及市场公认为埃及和中东和北非地区的首批公司之一,专门为许多领域的初级和二级测试和校准实验室提供解决方案、仪器、咨询和售后服务。

任务将是

通过提供最好的咨询服务,提高市场意识,并与世界上最好的制造商合作,赢得客户的信任和满意。 我们相信,建立我们的内部能力将反映在市场上。

将这些变量发送到PHP文件后

赫斯特

由工程师Anas创建,经过8年的营销顾问和业务发展经理的经验,在非洲和中东的W.C赫留斯GmbH。自1983年以来,MYMSA在埃及市场被公认为埃及和中东和北非地区最早的公司之一,专门为初级产品提供解决方案、仪器仪表、咨询和售后服务。

和使命

目的在于赢得客户的信任

只有!为什么会发生这种事??我怎样才能传达整个大信息呢?

这是我的PHP文件

代码语言:javascript
复制
<?php

    require "conn.php";


    $history= $_POST["history"];
    $mission = $_POST["mission"];

    $sql = " UPDATE company SET history ='$history' , mission='$mission'  where id='1'";
    mysqli_query($conn,$sql);


echo "done";
mysqli_close($conn);
?>
EN

回答 2

Stack Overflow用户

发布于 2019-05-25 01:13:18

首先,您应该在POST请求的主体/有效负载中发布此类数据,但以下是当前解决方案无法工作的原因:

正如您所看到的,文本就在文本中的"&“符号之前停止--这是因为&符号是一个用于追加另一个查询参数的URL组件--这需要编码到%26中,幸运的是,JavaScript有一个函数来完成这个任务,encodeURIComponent

在创建params变量时,可以这样使用encodeURIComponent

代码语言:javascript
复制
var params = "history=" + encodeURIComponent(hist) + "&mission=" + encodeURIComponent(mission);
票数 5
EN

Stack Overflow用户

发布于 2019-05-25 02:02:17

您可以将数据转换为Javascript在php上理解的内容,即

代码语言:javascript
复制
var params = ["history" : hist,
              "mission" : mission];
params = JSON.stringify( params );

然后在php端使用:

代码语言:javascript
复制
$history = $_POST['history'];
$mission = $_POST['mission';
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56300905

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档