Wordpress+mysql+ajax

Sly32
На сайте с 29.03.2012
Offline
302
518

сделал форму обработки и записи в базу

форма в php файле, который вызывается через get_template

данные передаются в ajax в файл ajax-firm.php и там обрабатываются. Тут все нормально - данные передаются обрабатываются и выводятся. Переход из формы:

function SenReq(){


$.ajax({
type: "POST",
url: "****/wp-content/themes/****r/ajax-firm.php",

data:
{
name: $('#firm_name').val(),
city: $('#city_name').val(),
dron: $('#on_drv').val(), и т.д.

Но при попытке записать новые данные в базу с помощью:


$wpdb->update( 'wp_rus_posts',
array( 'post_content' => '$f_cont', 'post_excerpt' => '$f_excer' ),
array( 'ID' => '$f_pid' ),
array( '%s', '%d' ),
array( '%d' )
)

выдает следующую ошибку:

Fatal error: Call to a member function update() on a non-object in /home/***/public_html/wp-content/themes/*****/ajax-firm.php on line 105


Получается. что к файлу не подкючаются стандартные функции? или в чем дело. Если делать без ajax - все работает.

K
На сайте с 28.12.2008
Offline
61
kud
#1

Вы либо делайте ajax обработчики так:

http://codex.wordpress.org/AJAX_in_Plugins

Либо подключайте в ajax-firm.php файл /includes/wp-blog-header.php

Sly32
На сайте с 29.03.2012
Offline
302
#2

пока подключил так:

require_once( $_SERVER['DOCUMENT_ROOT'] . '/wp-load.php' );

require_once( $_SERVER['DOCUMENT_ROOT'] . '/wp-includes/wp-db.php' );

Ошибка пропала но запись в таблицу не работает...

с кодексом разбираюсь - много непонятного...

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий