Da vielen Stefan Pfeifer und Sapphire Flyff nutzen und fast jedem Teammitglied zugang zum Admin Panel geben und manche es ausnutzen, Items ohne log zu verschicken gibt es hier nun ein Update, damit nicht mehr gepusht wird :P
1. Ihr geht in euer Admin Panel und sucht die datei account_senditem.php
2. Ihr öffnet die Datei und sucht nach if(isset($_POST['senditem_sbm'])) {
3. Ihr ändert die funktion von
Alles anzeigen
zu
Alles anzeigen
4. Dann geht ihr in eure Datenbank und führt dieses Script aus
Alles anzeigen
Nun lassen wir es noch wiedergeben in den den "Diverse Logs"
Dafür geht ihr in die list_database.php und fügt unter
das hier ein
dann sucht ihr nach elseif( isset($_GET['GSRanking']) ){ und fügt darüber das hier ein
Alles anzeigen
Am Ende sieht es dann so aus
mmo-core.de/attachment/3963/
1. Ihr geht in euer Admin Panel und sucht die datei account_senditem.php
2. Ihr öffnet die Datei und sucht nach if(isset($_POST['senditem_sbm'])) {
3. Ihr ändert die funktion von
PHP-Quellcode
- if(isset($_POST['senditem_sbm'])) {
- odbc_exec($odbc_connect, 'USE [' . $_CONFIG['db_databases']['chr'] . ']');
- $charid = odbc_exec($odbc_connect, 'SELECT m_idPlayer FROM [CHARACTER_TBL] WHERE m_szName=\''.mssql_escape_string($_POST['character']).'\'');
- if(odbc_num_rows($charid) == 1) {
- odbc_exec($odbc_connect, 'INSERT INTO [ITEM_SEND_TBL](
- m_idPlayer, serverindex, Item_Name, Item_count, m_nAbilityOption, m_bItemResist, m_nResistAbilityOption, idSender, nPiercedSize
- ) VALUES(
- \''.mssql_escape_string(odbc_result($charid, 'm_idPlayer')).'\',
- \'01\',
- \''.mssql_escape_string($_POST['itemname']).'\',
- \''.mssql_escape_string($_POST['count']).'\',
- \''.mssql_escape_string($_POST['upgrade']).'\',
- \''.mssql_escape_string($_POST['element']).'\',
- \''.mssql_escape_string($_POST['elementupgrade']).'\',
- \'0000000\',
- \''.mssql_escape_string($_POST['piercing']).'\'
- )');
- echo '<div class="success">The item has successfully been send!</div>';
- } else {
- echo '<div class="fail">Character does not exist!</div>';
- }
- }
zu
PHP-Quellcode
- if(isset($_POST['senditem_sbm'])) {
- $charid = odbc_exec($odbc_connect, 'SELECT m_idPlayer FROM [' . $_CONFIG['db_databases']['chr'] . '].dbo.[CHARACTER_TBL] WHERE m_szName=\''.mssql_escape_string($_POST['character']).'\'');
- $charname = odbc_exec($odbc_connect, 'SELECT m_szName FROM [' . $_CONFIG['db_databases']['chr'] . '].dbo.[CHARACTER_TBL] WHERE m_szName=\''.mssql_escape_string($_POST['character']).'\'');
- if(odbc_num_rows($charid) == 1) {
- $ItemSendToCharakter = '
- INSERT INTO [' . $_CONFIG['db_databases']['chr'] . '].dbo.[ITEM_SEND_TBL] (
- m_idPlayer, serverindex, Item_Name, Item_count, m_nAbilityOption, m_bItemResist, m_nResistAbilityOption, idSender, nPiercedSize
- ) VALUES(
- \''.mssql_escape_string($_SESSION['user']).'\',
- \''.mssql_escape_string(odbc_result($charid, 'm_idPlayer')).'\',
- \'01\',
- \''.mssql_escape_string($_POST['itemname']).'\',
- \''.mssql_escape_string($_POST['count']).'\',
- \''.mssql_escape_string($_POST['upgrade']).'\',
- \''.mssql_escape_string($_POST['element']).'\',
- \''.mssql_escape_string($_POST['elementupgrade']).'\',
- \'0000000\',
- \''.mssql_escape_string($_POST['piercing']).'\'
- )
- ';
- $ItemSendLog = '
- INSERT INTO [' . $_CONFIG['db_databases']['web'] . '].dbo.[LOG_SENDITEM] (
- von, an, itemname, count, upgrade, element, elementupgrade, piercing
- ) VALUES(
- \''.mssql_escape_string(odbc_result($charname, 'm_szName')).'\',
- \''.mssql_escape_string($_POST['itemname']).'\',
- \''.mssql_escape_string($_POST['count']).'\',
- \''.mssql_escape_string($_POST['upgrade']).'\',
- \''.mssql_escape_string($_POST['element']).'\',
- \''.mssql_escape_string($_POST['elementupgrade']).'\',
- \''.mssql_escape_string($_POST['piercing']).'\'
- )
- ';
- if(@odbc_exec($odbc_connect, $ItemSendToCharakter) AND @odbc_exec($odbc_connect, $ItemSendLog)) {
- echo createMessage('Das Item wurde erfolgreich versendet', 'success');
- }
- else {
- echo createMessage('Das Item konnte leider nicht versendet werden', 'fail');
- }
- } else {
- echo '<div class="fail">Character does not exist!</div>';
- }
- }
4. Dann geht ihr in eure Datenbank und führt dieses Script aus
Quellcode
- USE [WEBSITE_DBF]
- GO
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- SET ANSI_PADDING ON
- GO
- CREATE TABLE [dbo].[LOG_SENDITEM](
- [sid] [int] IDENTITY(1,1) NOT NULL,
- [von] [varchar](50) NULL,
- [an] [varchar](50) NULL,
- [itemname] [varchar](50) NOT NULL,
- [count] [int] NOT NULL,
- [upgrade] [int] NOT NULL,
- [element] [int] NOT NULL,
- [elementupgrade] [int] NULL,
- [piercing] [int] NULL,
- CONSTRAINT [web_senditemlogs] PRIMARY KEY CLUSTERED
- (
- [sid] ASC
- )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
- ) ON [PRIMARY]
- GO
- SET ANSI_PADDING OFF
- GO
Nun lassen wir es noch wiedergeben in den den "Diverse Logs"
Dafür geht ihr in die list_database.php und fügt unter
das hier ein
dann sucht ihr nach elseif( isset($_GET['GSRanking']) ){ und fügt darüber das hier ein
PHP-Quellcode
- elseif(isset($_GET['SendItems'])){
- odbc_exec($odbc_connect, 'USE [' . $_CONFIG['db_databases']['web'] . ']');
- $select = odbc_exec($odbc_connect, 'SELECT TOP 100 * FROM [LOG_SENDITEM] ORDER BY [sid] ASC');
- if( odbc_num_rows($select) == 0 ){
- echo '<div class="fail">'.$lang['db_no_del'].'</div>';
- }
- else {
- echo '
- <table cellspacing="0">
- <thead>
- <tr>
- <td> </td>
- <td>Von</td>
- <td>An</td>
- <td>Itemname</td>
- <td>Anzahl</td>
- <td>Upgrade</td>
- <td>Element</td>
- <td>Element Upgrade</td>
- <td>Sockel Anzahl</td>
- </tr>
- </thead>
- <tbody>';
- while($result = odbc_fetch_array($select)){
- echo '
- <tr>
- <td>('.$result['sid'].')</td>
- <td>'.$result['von'].'</td>
- <td>'.$result['an'].'</td>
- <td>'.$result['itemname'].'</td>
- <td>'.$result['count'].'</td>
- <td>'.$result['upgrade'].'</td>
- <td>'.$result['element'].'</td>
- <td>'.$result['elementupgrade'].'</td>
- <td>'.$result['piercing'].'</td>
- </tr>';
- }
- echo '
- </tbody>
- </table>';
- }
- echo '
- <br />
- <a href="list_database.php">'.$lang['panel_back'].'</a>';
- }
Am Ende sieht es dann so aus
mmo-core.de/attachment/3963/