Skocz do zawartości
"Idzie nowe..." - o zmianach i nie tylko ×
Przeniesienie zakupów z IPS Marketplace / Moving bought items from IPS Marketplace ×

Split

Użytkownik
  • Postów

    204
  • Dołączył

  • Ostatnia wizyta

  • Wygrane w rankingu

    18

Treść opublikowana przez Split

  1. Czy podczas wykonywania zapytania muszę dodawać warunek czy istnieje połączenie czy po prostu jeżeli nie połączy się z inną bazą danych to nie wyświetli błędu? $connection = \IPS\Db::i('test'); if (isset($connection)) { $connection->insert('users', array( 'id' => $member->member_id, 'username' => $member->name, 'email' => $member->email, 'password' => $member->members_pass_hash, 'ip' => $member->ip_address, )); }
  2. Jednak mam jeszcze jedno pytanie. Dlaczego wywala mi błąd z tego pliku gdzie mam połączenie do zewnętrznej bazy danych? <?php /** * @brief serverSync Task * @author <a href='https://www.invisioncommunity.com'>Invision Power Services, Inc.</a> * @copyright (c) Invision Power Services, Inc. * @license https://www.invisioncommunity.com/legal/standards/ * @package Invision Community * @subpackage serversync * @since 28 Apr 2019 */ namespace IPS\serversync\tasks; /* To prevent PHP errors (extending class does not exist) revealing path */ if ( !\defined( '\IPS\SUITE_UNIQUE_KEY' ) ) { header( ( isset( $_SERVER['SERVER_PROTOCOL'] ) ? $_SERVER['SERVER_PROTOCOL'] : 'HTTP/1.0' ) . ' 403 Forbidden' ); exit; } /** * serverSync Task */ class _serverSync extends \IPS\Task { public $_connection; public function _getConnection() { return $this->_connection; } /** * Execute * * If ran successfully, should return anything worth logging. Only log something * worth mentioning (don't log "task ran successfully"). Return NULL (actual NULL, not '' or 0) to not log (which will be most cases). * If an error occurs which means the task could not finish running, throw an \IPS\Task\Exception - do not log an error as a normal log. * Tasks should execute within the time of a normal HTTP request. * * @return mixed Message to log or NULL * @throws \IPS\Task\Exception */ public function execute() { try { $this->_connection = \IPS\Db::i('external', array( 'sql_host' => 'xxx', 'sql_user' => 'xxxx', 'sql_pass' => 'xxx', 'sql_database' => 'xxx', 'sql_port' => 3306, 'sql_socket' => '/var/lib/mysql.sock', 'sql_utf8mb4' => true, )); } catch( \IPS\Db\Exception $e ){} } /** * Cleanup * * If your task takes longer than 15 minutes to run, this method * will be called before execute(). Use it to clean up anything which * may not have been done * * @return void */ public function cleanup() { } } Błąd Using $this when not in object context
  3. Bardzo dziękuję Ci za pomoc. To był mój błąd bo zamiast stworzyć aplikację stworzyłem hook. A teraz utworzyłem ją uruchomiłem dodatek Membersync i tam wprowadziłem w odpowiedniej funkcji kod. Problem rozwiązany.
  4. Przy developer mode błąd: Call to undefined method IPS\Member::loggedIn() Kod: //<?php /* To prevent PHP errors (extending class does not exist) revealing path */ if ( !\defined( '\IPS\SUITE_UNIQUE_KEY' ) ) { exit; } namespace IPS; class hook22 extends \IPS\Patterns\ActiveRecord { private $connection; public function __construct() { $this->connection = new PDO('mysql:host=xxx;dbname=xxxx;charset=utf8', 'xxxx', 'xxxx'); } /** * Member account has been created * * @param $member \IPS\Member New member account * @return void */ public function onCreateAccount($member) { $query = $this->connection->prepare('INSERT INTO og_users SET id = ?, username = ?, email = ?, password = ?, ip = ?, added = DATE_FORMAT(FROM_UNIXTIME(?), "%Y-%m-%d %H:%i:%s")'); $query->execute(array( $member->member_id, $member->name, $member->email, $member->members_pass_hash, $member->ip_address, $member->joined )); } }
  5. @DawPi Błąd: Fatal error: Uncaught Error: Call to undefined method IPS\Member::loggedIn() in .../forum/system/Log/Log.php:107 Stack trace: #0 .../forum/init.php(659): IPS\_Log::log('Error: Class 'I...', 'uncaught_except...') #1 [internal function]: IPS\IPS::exceptionHandler(Object(Error)) #2 {main} thrown in .../forum/system/Log/Log.php on line 107 Kod: //<?php namespace IPS; /* To prevent PHP errors (extending class does not exist) revealing path */ if ( !\defined( '\IPS\SUITE_UNIQUE_KEY' ) ) { exit; } class hook22 extends \IPS\Patterns\ActiveRecord { private $connection; public function __construct() { $this->connection = new PDO('mysql:host=xxx;dbname=xxx;charset=utf8', 'xxx', 'xxx'); } /** * Member account has been created * * @param $member \IPS\Member New member account * @return void */ public function onCreateAccount($member) { $query = $this->connection->prepare('INSERT INTO innaBaza SET id = ?, username = ?, email = ?, password = ?, ip = ?, added = DATE_FORMAT(FROM_UNIXTIME(?), "%Y-%m-%d %H:%i:%s")'); $query->execute(array( $member->member_id, $member->name, $member->email, $member->members_pass_hash, $member->ip_address, $member->joined )); } }
  6. @DawPi Napisałem coś takiego. Mógłbyś wskazać co jest nie tak? To jest mój pierwszy plugin i nie wiem gdzie popełniłem błąd. <?xml version="1.0" encoding="UTF-8"?> <plugin name="Creating an account in the game" version_long="10000" version_human="1.0.0" author=".WhiteBlue" website="https://og-rpg.eu/" update_check=""><hooks><hook type="C" class="\IPS\Member" filename="createAccountInGame"><![CDATA[//<?php /* To prevent PHP errors (extending class does not exist) revealing path */ if ( !\defined( '\IPS\SUITE_UNIQUE_KEY' ) ) { exit; } class hook20 extends _HOOK_CLASS_ { public function onCreateAccount( $member ) { try { die('sss'); } catch ( \RuntimeException $e ) { if ( method_exists( get_parent_class(), __FUNCTION__ ) ) { return \call_user_func_array( 'parent::' . __FUNCTION__, \func_get_args() ); } else { throw $e; } } } } ]]></hook></hooks><tasks/><widgets/><htmlFiles/><cssFiles/><jsFiles/><resourcesFiles/><lang/><versions/></plugin>
  7. Nie wiedziałem czy tamten temat się zalicza do tego problemu więc na wszelki wypadek utworzyłem nowy.
  8. Cześć. Można w jakiś sposób skonfigurować funkcję "Logowanie i rejestracja kont" aby po rejestracji automatycznie tworzyło się także konto w innej bazie danych? Bo aktualnie to tylko pojawia się w ustawieniach użytkownika zakładka w której mogę się zalogować danymi z innej bazy danych. Pozdrawiam. Moja konfiguracja:
  9. Ok dzięki. A mogę użyć tę zmienną? $member = new \IPS\Member;
  10. Dziękuję za odpowiedź. Masz może poradnik w którym jest wytłumaczone jak tworzyć aplikację pod ten silnik?
  11. Cześć. Mam pytanie. Otóż planuję zrobić integrację forum z inną bazą danych. O co mi dokładniej chodzi? Chodzi mi o to że po stworzeniu konta wykonuje się dane zapytanie do innej bazy danych. Teraz mam pytanie w jakim pliku mogę znaleźć funkcję, która wykonuje się po utworzeniu konta przez użytkownika. Potrzebuję jeszcze funkcję, która tworzy konto użytkownikowi. W IPS 3 była bodajże taka funkcja: IPSMember::create Z góry dziękuję za odpowiedź.
  12. O właśnie o to mi chodziło. Dzięki. Problem rozwiązany. Wesołych świąt.
  13. Tylko właśnie chciałem zaktualizować szablon według tej metody ale wygląda na to że szablon zaktualizował się a na stronie autora szablon jest pod wersje 4.3.
  14. Cześć. Mam pewne pytanie. Czy w IPS 4.4 jest jakiś automat, który aktualizuje szablony z wersji 4.3? Pytam bo dziś wygrałem szablon z wersją 4.3 do IPS 4.4 i chciałem go zaktualizować ale funkcje, które chcialem podmienić są już podmienione. Liczę na odpowiedź. Dzięki. Wesołych świąt.
  15. Split

    [-10%] White & Blue

    [-10%] White & Blue Zobacz plik White & Blue A new template for your forum straight from the author. It has many built-in functions. It will be enhanced with additional features in future updates. ( IPS version 4.7 ) !! TESTED ON 4.7.12 !! ----- DEMO ----- u: demo p: demo Dodający Split Dodano 28.11.2018 Kategoria Style i grafika Wspierana wersja IP.Board 4.x  
  16. Wersja 2.0.2

    35 pobrań

    White & Blue A new template for your forum straight from the author. It has many built-in functions. It will be enhanced with additional features in future updates. ( IPS version 4.7 ) !! TESTED ON 4.7.12 !! ----- DEMO ----- u: demo p: demo
    40 zł
  17. Split

    Problem z CRON

    Tak sprawdzałem dwa razy lokalizację.
  18. Cześć. Mam od jakieś chwili pewien problem. Otóż nie mogę włączyć używania CRON'a w panelu administracyjnym. Problem jest cały czas z chmodami. Ustawiłem je i błąd się nadal pojawia. Proszę o pomoc.
  19. Na oficjalnej stronie IPS znajdziesz wiele szablonów pod 4.3.4
  20. Na pewno pieniądze paypal'em wysłałeś ? Możliwe że nie wysłałeś. Sprawdź jeszcze raz. Jak tak to poczekaj jak ktoś z IPS się do Ciebie odezwie do kilku dni.
  21. Zainstalowałem silnik na nowo i działa. Dzięki za chęć pomocy.
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Umieściliśmy na Twoim urządzeniu pliki cookie, aby pomóc Ci usprawnić przeglądanie strony. Możesz dostosować ustawienia plików cookie, w przeciwnym wypadku zakładamy, że wyrażasz na to zgodę.