<?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這張表,該怎么寫啊= =
剛剛接觸,搜關鍵詞都不知道該搜些什么,好迷……
uj5u.com熱心網友回復:
用 select last_insert_id()獲取wp_posts插入的id值,然后wp_term_relationships插入時用這個值。uj5u.com熱心網友回復:
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/96668.html
標籤:MySQL
下一篇:求一SQL陳述句
