powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Import to wpdb error
11 сообщений из 11, страница 1 из 1
Import to wpdb error
    #39035145
Ребятки Здравствуйте еще раз!
Выручайте плиз!
вот функция, файл почему то не подгружается, выдает File upload successfull! Import to wpdb error
Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
function pilot_ts_activation() {
	global $wpdb;
	add_option('pilot_ts_runinterval', time());
	$table_keys = $wpdb->prefix.'pilot_ts_keys';
	$query = "create table if not exists $table_keys 
		(`id` int(11) not null auto_increment,
		`key` varchar(255) null, primary key (`id`))";
	$result = $wpdb->query($query);
}



Как включить отображение ошибки, вот не работает....
Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
function pilot_ts_activation() {
	global $wpdb;
	add_option('pilot_ts_runinterval', time());
	$table_keys = $wpdb->prefix.'pilot_ts_keys';
	$query = "create table if not exists $table_keys 
		(`id` int(11) not null auto_increment,
		`key` varchar(255) null, primary key (`id`))";
	$result = $wpdb->query($query);
        $result = $wpdb–>print_error();



Всем Спасибки!
...
Рейтинг: 0 / 0
Import to wpdb error
    #39035153
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Катеринка-Квот функция, файл почему то не подгружаетсяНу так в этой функции нет ничего про загрузку файла.
Катеринка-К File upload successfull! Да и, судя по сообщению, файл загружен успешно.

Катеринка-К Import to wpdb error А что это за импорт такой?
...
Рейтинг: 0 / 0
Import to wpdb error
    #39035160
vkle,
авторНу так в этой функции нет ничего про загрузку файла.
Ой, проистите, вот
Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
function pilot_ts_admin_init() { 
	global $wpdb;
	$table_keys = $wpdb->prefix.'pilot_ts_keys';
	if( wp_verify_nonce( $_POST['fileup_nonce'], 'my_file_upload' ) ){
		if ( ! function_exists( 'wp_handle_upload' ) ) 
			require_once( ABSPATH . 'wp-admin/includes/file.php' );
		$file = $_FILES['my_file_upload'];
		$overrides = array( 'test_form' => false );
		$movefile = wp_handle_upload( $file, $overrides );
		if ( $movefile ) {
			echo "File upload successfull!\n";
			$arr_keys = file($movefile['file'], FILE_IGNORE_NEW_LINES);

			$tpl = "insert into $table_keys (`key`) values ";
			$tmpfunc = create_function('$val', 'return "(\'".$val."\')";');
			$insert_tmp = $tpl.implode(',', array_map($tmpfunc, $arr_keys));
			$led = $wpdb->query($insert_tmp) ? "successfull!" : "error";
			echo "Import to wpdb $led<br>";
		} else {
			echo "File upload error!<br>";
		}
	}



vkle,
авторДа и, судя по сообщению, файл загружен успешно.
авторА что это за импорт такой?
Это плагин для вордпресс, в него нужно загрузить файл.txt, а плагин создает таблицу помоему и в нее загружает строки из файла.
Вот...Вообще я им уже пользовалась, и он работал а тут не хочет почему-то, такое бывало из-за символов " ' " , но я сейчас все проверила, да и файл пытаюсь подгрузить который раньше подгружался...
...
Рейтинг: 0 / 0
Import to wpdb error
    #39035172
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Катеринка-К,

Ну, я бы сперва посмотрел, что за запрос сформировался в $insert_tmp, сопоставл бы его с текстом загружаемого файла...
...
Рейтинг: 0 / 0
Import to wpdb error
    #39035181
vkle,

Спасибки Вам Большое! Не хочет с кирилицей работать почему-то...
как бы это исправить...
...
Рейтинг: 0 / 0
Import to wpdb error
    #39035218
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Катеринка-К,

Что значит "не хочет"? Покажите исходные значения переменных перед выполнением кода и оригинальный текст сообщения об ошибке, сформированный используемой СУБД (насколько понимаю, ошибка идёт оттуда).

PS: Проблемы с кириллицей часто возникают при несовпадении реально используемой и ожидаемой кодировок (не всегда), при забывчивости/лени программиста установить кодировку соединения с СУБД, ну и в некоторых других случаях.

PPS: Код кажется странным по меньшей мере. Не мудрено, что при импорте текста с одинарной кавычкой в исходном файле возникают проблемы.
...
Рейтинг: 0 / 0
Import to wpdb error
    #39036232
vkle,
Здравствуйте...
Я создала txt файл следующего содержания:
Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
zapros 1
zapros 2
zapros 3
zapros 4
запрос 5
zapros 6
zapros 7
zapros 8
zapros 9
zapros 10 


как видите, все кроме 5-го на латинице...
подружая этот файл, вывела $insert_tmp
Код: php
1.
File upload successfull! insert into wp_grab_snippet_keys (`key`) values ('zapros 1'),('zapros 2'),('zapros 3'),('zapros 4'),('&#65533;&#65533;&#65533;&#65533;&#65533;&#65533; 5'),('zapros 6'),('zapros 7'),('zapros 8'),('zapros 9'),('zapros 10 ')Import to wpdb error


если строку 5 на кирице удалить, то все работает...
...
Рейтинг: 0 / 0
Import to wpdb error
    #39036298
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Катеринка-Квывела $insert_tmp
....
Код: php
1.
('&#65533;&#65533;&#65533;&#65533;&#65533;&#65533; 5')

Ну и куда подевалась кириллица? Похоже, где-то на пути от чтения файла до сборки строки запроса теряется кодировка. Отлавливайте.
...
Рейтинг: 0 / 0
Import to wpdb error
    #39036299
SharuPoNemnogu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
с кодировкой что то не то. Проверьте кодировку файла импорта. Вот эти числа это символ "�". И еще, если php >= 5.3 то create_function лучше не использовать, а заменить на анонимную функцию.
...
Рейтинг: 0 / 0
Import to wpdb error
    #39038902
vkle,
Здравствуйте!
Да вы правы, дело в кодировке, вот только каким образом можно отловить где она теряется?

SharuPoNemnogu,
Здравствуйте!
Буду рада каким-нибудь примерам или пояснениям!

Спасибки!
...
Рейтинг: 0 / 0
Import to wpdb error
    #39038925
SharuPoNemnogu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
откройте файл в notepad++ там есть кодировка->преобразовать в utf-8 без BOM

по поводу анонимных функций есть же мануал, и гуглится легко, даже тот же array_map, там и примеры есть

Код: php
1.
array_map(function($val){return "('".mysql_real_escape_string($val)."')";}, $arr_keys)


mysql_real_escape_string экранирует специальные символы (ваша проблема с ' ). Так же есть информация в мануале
$wpdb скорее всего тоже имеет метод для экранирования типа quote(), надо смотреть.
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Import to wpdb error
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]