我目前正在开发一个 WordPress 插件,并且已经使用我的插件创建了一个表格,其样式如下:
$sql = "CREATE TABLE IF NOT EXISTS $table_name (
id INTEGER NOT NULL AUTO_INCREMENT,
post_id INTEGER NOT NULL,
lat FLOAT NOT NULL,
lng FLOAT NOT NULL,
str VARCHAR(55),
plz INTEGER,
ort VARCHAR(20),
UNIQUE KEY id (id) )
我可以通过“MySQL Query Browser”看到数据库存在...
并希望使用以下代码将一些信息插入表中:
(str、plz、ort 还没有必要,所以我想让它们为空……)
而且我相信每次插入内容时 id 都会自动增加,即使我不确定是否需要将 id 作为键,因为每个帖子只有一个条目,因此 post_id 可能是键也...
function install_data($latlng, $post_id) {
global $wpdb;
if ( ! $wpdb->update($table_name, array('lat' => $latlng[0], 'lng' => $latlng[1]), array('post_id' => $post_id)))
{
$wpdb->insert( $table_name, array('post_id' => $post_id, 'lat' => $latlng[0], 'lng' => $latlng[1]));
}
$wpdb->show_error();
$wpdb->print_error();
}
我尝试了这两个错误..但在控制台中没有看到一个......也没有在error_log中看到......
我也尝试再次删除更新功能,但它仍然没有任何帮助......
好的..
这有点奇怪,但我解决了一半xD
function install_data($latlng, $post_id) {
global $wpdb;
require_once( ABSPATH . 'wp-config.php');
if ( ! $wpdb->update($table_name, array('lat' => $latlng[0], 'lng' => $latlng[1]), array('post_id' => $post_id)))
{
$wpdb->insert( $table_name, array('post_id' => $post_id, 'lat' => $latlng[0], 'lng' => $latlng[1]));
}
$wpdb->show_error();
$wpdb->print_error();
}
现在只有更新不起作用...
它再次停止工作..我只是不知道为什么......而且读取也不起作用......
function read_data($post_id) {
global $wpdb;
require_once( ABSPATH . 'wp-config.php'); //Just a try, cause insert worked afterwards... for a short time -.-
$latlng = $wpdb->get_results( "SELECT lat, lng FROM $table_name WHERE post_id = '$post_id'" );
return $latlng;
}