#php #mysql #wordpress
#php #mysql #wordpress
Вопрос:
Я пытаюсь создать функцию для вставки большего количества полей в базу данных. Я нахожу пример, но, возможно, другие параметры устарели … или у меня ошибка.
Вот мой код:
private function _setUserPersonalDetails($blog_id, $personal_data, $operation = 'insert') {
global $wpdb;
// Strip any html tags from the about and address fields.
$tmp = array();
foreach ($personal_data as $key => $val) {
if (($key === 'about') || ($key === 'address')) {
$tmp[$key] = strip_tags($val);
}
else {
$tmp[$key] = $val;
}
}
$personal_data = $tmp;
if ($operation == 'insert') {
// Save personal data
$encoded_data = json_encode($personal_data);
$type = 'personal_data';
$q = $wpdb->prepare('INSERT INTO wp0_users_conta_data (blog_id, type, data) VALUES (%d, %s, %s)', $blog_id, $type, $encoded_data);
$wpdb->query($q);
}
if ($operation == 'update') {
// Update personal data
$encoded_data = json_encode($personal_data);
$type = 'personal_data';
$q = $wpdb->prepare('UPDATE wp0_users_conta_data set data=%s where blog_id=%d and type=%s', $encoded_data, $blog_id, $type);
$wpdb->query($q);
}
}
}
Я потратил больше недели на решение проблемы, но не нахожу никаких решений. Я ценю любую помощь. Спасибо!
Комментарии:
1. Я думаю, что на первый взгляд все выглядит нормально, можете ли вы уточнить, что именно не работает?
2. В чем проблема? Неясно, в чем проблема.
3. Здравствуйте, ‘personal_data’ не вставляется в базу данных…