<?php
$dbhost = '127.0.0.1:3306';  // mysql服务器主机地址
$dbuser = '003';            // mysql用户名
$dbpass = '003';          // mysql用户名密码
$conn = mysqli_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
    die('连接失败: ' . mysqli_error($conn));
}mysqli_query($conn, "set names utf8");// 设置编码,防止中文乱码
mysqli_select_db( $conn, '003' );//
mysqli_query($conn, "SET AUTOCOMMIT=0"); // 设置为不自动提交,因为MYSQL默认立即执行
mysqli_begin_transaction($conn);            // 开始事务定义
$time = date('Y-m-d H:i:s');
 
if(!mysqli_query($conn, "INSERT INTO `003`.`wp_posts` (`ID`, `post_author`, `post_date`, `post_date_gmt`, `post_content`, `post_title`, `post_excerpt`, `post_status`, `comment_status`, `ping_status`, `post_password`, `post_name`, `to_ping`, `pinged`, `post_modified`, `post_modified_gmt`, `post_content_filtered`, `post_parent`, `guid`, `menu_order`, `post_type`, `post_mime_type`, `comment_count`) VALUES (NULL, '1', '$time', '$time', 'neirong1111', 'biaoti1111', '', 'publish', 'open', 'open', '', '', '', '', '0000-00-00 00:00:00', '0000-00-00 00:00:00', '', '0', '', '0', 'post', '', '0');"))
{
    mysqli_query($conn, "ROLLBACK");     // 判断当执行失败时回滚

if(!mysqli_query($conn, "INSERT INTO `003`.`wp_term_relationships` (`object_id`, `term_taxonomy_id`, `term_order`) VALUES ('15', '2', '0');"))
{
    mysqli_query($conn, "ROLLBACK");      // 判断执行失败时回滚
}mysqli_commit($conn);            //执行事务
mysqli_close($conn);
?>我是在本地测试WordPress博客,只插入wp_posts表的话,没什么问题。不过,WordPress的一篇文章要关联3个表,没用它的自定义字段的话,需要关联两个表。也就是上面的情况。
wp_term_relationships表里的 object_id 就是上面wp_posts表里的ID。这个ID是自增,但有可能被其他的东西打断,就是不是连续的,但没关系,插入的时候设置空值的话,可以正常自增。
现在遇到的问题是,想在插入wp_posts表的同时,也插入wp_term_relationships这张表,该怎么写啊= =
刚刚接触,搜关键词都不知道该搜些什么,好迷……