Перейти к публикации
View in the app

A better way to browse. Learn more.

Дизайн и модификация Invision Community

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

php-скрипт создания тем в ipb 2.2.2

Опубликовано:

Всем привет! У себя на сайте я сделал скрипт который ведет статистику, я хочу что бы етот скрипт сам создавал темы в форуме при некоторых условиях. У меня возникла проблема с созданием новых тем в форуме через пхп скрипт а не через сам форум, от сюда вопрос есть ли php-скрипты которые могут создавать темы в форумах? если есть то поделитесь кодом)

Рекомендованные сообщения

Опубликовано:

/sources/api/

 

там неободиме классы. Подключили - создаем.

Опубликовано:
  • Автор

Посмотрел, сделал, выходил что из за строчки $api->ipsclass =& $this->ipsclass; дает ошибку: Fatal error: Using $this when not in object context in /home2/world/www/forum/add_topic.php on line 4

Изменено пользователем NTFS

Опубликовано:

Угу, там ерунда какая-то написана. Припоминаю.

 

Вот так должно начинаться:

$api = new api_topics_and_posts();
$api->api_init();
$api->set_author_by_name('matt');

 

и т.д.

 

api_init должен вызываться.

Опубликовано:
  • Автор

Спасибо, но я все уже сделал через бд) Так убил пол дня на что что бы красиво было а он все:

 

Warning: api_core::require_once(../../init.php) [function.api-core-require-once]: failed to open stream: No such file or directory in /home2/world/www/forum/sources/api/api_core.php on line 141

 

Fatal error: api_core::require_once() [function.require]: Failed opening required '../../init.php' (include_path='.:/php/includes:/usr/local/lib/php') in /home2/world/www/forum/sources/api/api_core.php on line 141

 

если кому то понадобится

 

<?php
////////подключаем конфиг
//и базу
require_once ("./forum/conf_global.php");
$pref = $INFO['sql_tbl_prefix'];
$db = mysql_pconnect($INFO['sql_host'], $INFO['sql_user'], $INFO['sql_pass']);
mysql_select_db($INFO['sql_database']);
//////////


//////параметры
$date = date("U");
//$post = addslashes($_POST['text_topic']);
//$title = addslashes($_POST['title_topic']);
//$descr = addslashes($_POST['desc_topic']);

$post = addslashes('POST text');
$title = addslashes('TOPIC TITLE');
$descr = addslashes('.......');	

$autorid = 1;  //id пользователя
$autorname = "admin"; //имя пользователя от которого будет тема
$forumid =10;   // id форума  в котором будет тема
///////////////////

//начнем с поста
//$q = "INSERT INTO ".$pref."posts VALUES (NULL, 0, NULL, $autorid, '$autorname', '1', '1', '88.88.88.88', $date, 0, '$post', 0, '', '$title', 0, NULL, 0, 0, 0)";

$q = "INSERT INTO ".$pref."posts VALUES (NULL , '0', NULL , '$autorid', '$autorname', '1', '1', '87.110.168.193', '$date', '13', '$post', '0', '$autorid', NULL , '0', NULL , '0', '0', '0', '');";
$r = mysql_query($q);

//вытягиваем id поста и записываем в топик
$post_id = mysql_insert_id();
$q = "INSERT INTO ".$pref."topics VALUES (NULL, '$title', '$descr', 'open', 1, '$autorid', '$date', '$autorid', '$date', 1, '$autorname', '$autorname', 0, 0, 1, $forumid, 1, 1, 0, NULL, 0, 0, $post_id, '', '', '', '', '')";
$r = mysql_query($q);

//теперь берем id топика и заносим в пост
$topic_id = mysql_insert_id();
$q = "update ".$pref."posts set topic_id='$topic_id' where pid=".$post_id;
$r = mysql_query($q);

//ну а теперь обновим таблицу forums
$q = "update ".$pref."forums set topics=topics+1, posts=posts+1, last_post='$date', last_poster_id='$autorid', last_poster_name='$autorname', last_title='$title', last_id='$topic_id'  where id='$forumid'";
$r = mysql_query($q);
////////////////////////////
?>

Опубликовано:
Warning: api_core::require_once(../../init.php) [function.api-core-require-once]: failed to open stream: No such file or directory in /home2/world/www/forum/sources/api/api_core.php on line 141

 

Надо подвигать эту строчку в api_core, чтобы находило init.php.

По всей видимости, он у вас пытается его искать относительно скрипта, который подключает api.

 

Собственно, да - у IPS вот такое кривое api. Типа, "разработчики разберутся".

 

Код, который привели - полный фейл. Не обновляется ни один кеш, счетчики постов. Не говоря уже о том, что порядок следования колонок в таблицах может быть на самом деле любой. Если форум обновлялся, то они могут быть перемешаны.

Создайте аккаунт или войдите в него для комментирования

Сейчас на странице 0

  • Нет пользователей, просматривающих эту страницу.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.