true));
$PDO->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING);
if(isset($_GET["op"])){
$op=$_GET["op"];
}
else if(isset($_POST["op"])){
$op=$_POST["op"];
}
switch($op){
case "sync":
{
$time=$_POST["time"];
$query = "select id as guid,modify_time from sentence where receive_time>'{$time}' limit 0,10000";
$stmt = $PDO->query($query);
$Fetch = $stmt->fetchAll(PDO::FETCH_ASSOC);
$iFetch=count($Fetch);
echo json_encode($Fetch, JSON_UNESCAPED_UNICODE);
break;
}
case "get":
{
if(isset($_GET["id"])){
$id=$_GET["id"];
}
else if(isset($_POST["id"])){
$id=$_POST["id"];
}
else{
return;
}
$arrId = json_decode($id);
$queryId="('";
foreach($arrId as $one){
$queryId .= $one."','";
}
$queryId = substr($queryId,0,-2).")";
$query = "SELECT
id,
block_id,
book,
paragraph,
begin,
end,
tag,
author,
editor,
text,
language,
ver,
status,
receive_time,
modify_time
FROM sentence
WHERE id in {$queryId}";
$stmt = $PDO->query($query);
$Fetch = $stmt->fetchAll(PDO::FETCH_ASSOC);
echo json_encode($Fetch,JSON_UNESCAPED_UNICODE);
break;
}
case "insert":
{
echo "正在准备插入记录
";
if(isset($_POST["data"])){
$data=$_POST["data"];
}
else{
echo "没有数据
";
return;
}
$arrData = json_decode($data);
// 开始一个事务,关闭自动提交
$PDO->beginTransaction();
$query="INSERT INTO sentence (
'id',
'block_id',
'book',
'paragraph',
'begin',
'end',
'tag',
'author',
'editor',
'text',
'language',
'ver',
'status',
'receive_time',
'modify_time'
) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)";
$stmt = $PDO->prepare($query);
foreach($arrData as $oneParam){
$param=array();
$param[]=$oneParam->id;
$param[]=$oneParam->block_id;
$param[]=$oneParam->book;
$param[]=$oneParam->paragraph;
$param[]=$oneParam->begin;
$param[]=$oneParam->end;
$param[]=$oneParam->tag;
$param[]=$oneParam->auther;
$param[]=$oneParam->editor;
$param[]=$oneParam->text;
$param[]=$oneParam->language;
$param[]=$oneParam->ver;
$param[]=$oneParam->status;
$param[]=mTime();
$param[]=$oneParam->modify_time;
$stmt->execute($param);
}
// 提交更改
$PDO->commit();
if (!$stmt || ($stmt && $stmt->errorCode() != 0)) {
$error = $PDO->errorInfo();
echo "error - $error[2]
";
}
else{
$count=count($arrData);
echo "INSERT $count recorders."."
";
}
break;
}
case "update":
{
echo "更在准备更新数据
";
if(isset($_POST["data"])){
$data=$_POST["data"];
}
else{
echo "没有输入数据
";
return;
}
$arrData = json_decode($data);
// 开始一个事务,关闭自动提交
try{
$PDO->beginTransaction();
foreach($arrData as $one){
$query="UPDATE sentence SET text='{$one->text}' ,
receive_time='".mTime()."' ,
modify_time='{$one->modify_time}'
where id='{$one->guid}'";
$PDO->exec($query);
}
// 提交更改
$PDO->commit();
echo "update ".count($arrData)."
";
}
catch(Exception $e){
$PDO->rollback();
echo "Failed:".$e->getMessage()."
";
}
break;
}
}
?>