他是个人,
我很困惑,因为我的表格值发生了什么。
首先我创建了一个简单的html表单,我将其转换为字符串。以下是我的document.ready
中代码的一部分 var fbid = $("#fbid").val();
var name = $("#name").val();
var address1 = $("#address1").val();
var address2 = $("#address2").val();
var city = $("#city").val();
var postal = $("#postal").val();
var countries = $("#countries").val();
var dataString = 'fbid=' + fbid + '&name=' + name + '&address1=' + address1 + '&address2=' + address2 + '&city=' + city + '&postal=' + postal + '&countries=' + countries
到目前为止一切顺利。然后我使用以下代码将其上传到php文件,以便将数据插入我的数据库
$.ajax({
type: "POST",
url: "*http://www.url.com/file.php*",
data: dataString,
cache: false,
success: function (result) {
alert(result);
}
});
现在不知何故,只有我的最后一个价值才是问题。此选择输入仅将前5个字符放在我的数据库中。当我用文本输入尝试它时,它只显示3个字符(我认为这很奇怪)。我试图调试并找到问题所在:
$国家= $ _ POST ['国家']; echo" $ countries&#34 ;;
这也导致只显示前5个字符
所以在发送字符串和接收它的php文件之间几乎看起来有问题
老实说,我知道这里出了什么问题。我会喜欢一些帮助,因为我现在已经花了最好的一周!
再见 克里斯
答案 0 :(得分:0)
由于您交换字段时,国家/地区值已正确插入,但第二个值被截断。这意味着您在发布的数据方面达到了极限。
虽然极不可能,但这也是你想测试的东西。请尝试以下方法:
定期发帖,没有ajax并检查所有数据是否正确发布。如果不是,则很可能您的apache配置或htaccess中设置了不正确的post_max_size
。
如果上面的测试有效,那么常规帖子很好,它与ajax有关。确保您的数据不是作为url param(查看它不应该的代码)。但是,首先单独发布每个值以查看它们是否正在通过。
通过这些测试的结果,您应该能够辨别出问题所在。你的代码很好,我强烈认为它必须是配置的东西。