前台数据获得的是数组,我将数组分隔成字符串添加到mysql数据库中只能添加数字
如果数据是中文或字母就添加不进去,编码格式是Utf8
这是前端代码片
onSubmit(formName) {
this.$refs[formName].validate(async valid => {
if (valid) {
alert('提交成功!')
const res = await this.$http.post('php/tj.php', {
t1: this.form.domains
})
console.log(res)
console.log(this.form.domains)
} else {
console.log('提交失败!')
return false
}
})
}
这是php文件,$sql插入数字可以,但中文不行.英文也不行
<?php
header("Content-type:text/html;charset=utf-8");
//接收数据,JSON格式转换
$data = json_decode(file_get_contents("php://input"), TRUE);
// 这里的t1是个数组,里面含有数组对象
$t = $data['t1'];
// 将数组对象中的value取出赋予新数组
foreach ($t as $key => $v) {
$arr[] = $v['value'];
}
// 按逗号开始分隔,将数据一一分隔
$name = join(',', $arr);
// 链接数据库
include 'mysql.php';
// 插入数据,第一个空值是ID自增,$name是分隔数组后的多个数据
$sql = "insert into t1 values('', '$name')";
// 执行sql语句
$res = mysqli_query($conn, $sql);
// echo $t;
echo json_encode($arr);
echo $name;
?>
这是前端页面
这是数据库数据