[Website] Item versenden Log

    Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

    • [Website] Item versenden Log

      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

      PHP-Quellcode

      1. if(isset($_POST['senditem_sbm'])) {
      2. odbc_exec($odbc_connect, 'USE [' . $_CONFIG['db_databases']['chr'] . ']');
      3. $charid = odbc_exec($odbc_connect, 'SELECT m_idPlayer FROM [CHARACTER_TBL] WHERE m_szName=\''.mssql_escape_string($_POST['character']).'\'');
      4. if(odbc_num_rows($charid) == 1) {
      5. odbc_exec($odbc_connect, 'INSERT INTO [ITEM_SEND_TBL](
      6. m_idPlayer, serverindex, Item_Name, Item_count, m_nAbilityOption, m_bItemResist, m_nResistAbilityOption, idSender, nPiercedSize
      7. ) VALUES(
      8. \''.mssql_escape_string(odbc_result($charid, 'm_idPlayer')).'\',
      9. \'01\',
      10. \''.mssql_escape_string($_POST['itemname']).'\',
      11. \''.mssql_escape_string($_POST['count']).'\',
      12. \''.mssql_escape_string($_POST['upgrade']).'\',
      13. \''.mssql_escape_string($_POST['element']).'\',
      14. \''.mssql_escape_string($_POST['elementupgrade']).'\',
      15. \'0000000\',
      16. \''.mssql_escape_string($_POST['piercing']).'\'
      17. )');
      18. echo '<div class="success">The item has successfully been send!</div>';
      19. } else {
      20. echo '<div class="fail">Character does not exist!</div>';
      21. }
      22. }
      Alles anzeigen


      zu

      PHP-Quellcode

      1. if(isset($_POST['senditem_sbm'])) {
      2. $charid = odbc_exec($odbc_connect, 'SELECT m_idPlayer FROM [' . $_CONFIG['db_databases']['chr'] . '].dbo.[CHARACTER_TBL] WHERE m_szName=\''.mssql_escape_string($_POST['character']).'\'');
      3. $charname = odbc_exec($odbc_connect, 'SELECT m_szName FROM [' . $_CONFIG['db_databases']['chr'] . '].dbo.[CHARACTER_TBL] WHERE m_szName=\''.mssql_escape_string($_POST['character']).'\'');
      4. if(odbc_num_rows($charid) == 1) {
      5. $ItemSendToCharakter = '
      6. INSERT INTO [' . $_CONFIG['db_databases']['chr'] . '].dbo.[ITEM_SEND_TBL] (
      7. m_idPlayer, serverindex, Item_Name, Item_count, m_nAbilityOption, m_bItemResist, m_nResistAbilityOption, idSender, nPiercedSize
      8. ) VALUES(
      9. \''.mssql_escape_string($_SESSION['user']).'\',
      10. \''.mssql_escape_string(odbc_result($charid, 'm_idPlayer')).'\',
      11. \'01\',
      12. \''.mssql_escape_string($_POST['itemname']).'\',
      13. \''.mssql_escape_string($_POST['count']).'\',
      14. \''.mssql_escape_string($_POST['upgrade']).'\',
      15. \''.mssql_escape_string($_POST['element']).'\',
      16. \''.mssql_escape_string($_POST['elementupgrade']).'\',
      17. \'0000000\',
      18. \''.mssql_escape_string($_POST['piercing']).'\'
      19. )
      20. ';
      21. $ItemSendLog = '
      22. INSERT INTO [' . $_CONFIG['db_databases']['web'] . '].dbo.[LOG_SENDITEM] (
      23. von, an, itemname, count, upgrade, element, elementupgrade, piercing
      24. ) VALUES(
      25. \''.mssql_escape_string(odbc_result($charname, 'm_szName')).'\',
      26. \''.mssql_escape_string($_POST['itemname']).'\',
      27. \''.mssql_escape_string($_POST['count']).'\',
      28. \''.mssql_escape_string($_POST['upgrade']).'\',
      29. \''.mssql_escape_string($_POST['element']).'\',
      30. \''.mssql_escape_string($_POST['elementupgrade']).'\',
      31. \''.mssql_escape_string($_POST['piercing']).'\'
      32. )
      33. ';
      34. if(@odbc_exec($odbc_connect, $ItemSendToCharakter) AND @odbc_exec($odbc_connect, $ItemSendLog)) {
      35. echo createMessage('Das Item wurde erfolgreich versendet', 'success');
      36. }
      37. else {
      38. echo createMessage('Das Item konnte leider nicht versendet werden', 'fail');
      39. }
      40. } else {
      41. echo '<div class="fail">Character does not exist!</div>';
      42. }
      43. }
      Alles anzeigen



      4. Dann geht ihr in eure Datenbank und führt dieses Script aus

      Quellcode

      1. USE [WEBSITE_DBF]
      2. GO
      3. SET ANSI_NULLS ON
      4. GO
      5. SET QUOTED_IDENTIFIER ON
      6. GO
      7. SET ANSI_PADDING ON
      8. GO
      9. CREATE TABLE [dbo].[LOG_SENDITEM](
      10. [sid] [int] IDENTITY(1,1) NOT NULL,
      11. [von] [varchar](50) NULL,
      12. [an] [varchar](50) NULL,
      13. [itemname] [varchar](50) NOT NULL,
      14. [count] [int] NOT NULL,
      15. [upgrade] [int] NOT NULL,
      16. [element] [int] NOT NULL,
      17. [elementupgrade] [int] NULL,
      18. [piercing] [int] NULL,
      19. CONSTRAINT [web_senditemlogs] PRIMARY KEY CLUSTERED
      20. (
      21. [sid] ASC
      22. )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
      23. ) ON [PRIMARY]
      24. GO
      25. SET ANSI_PADDING OFF
      26. GO
      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

      PHP-Quellcode

      1. <input type="submit" name="logins" value="Websitelogins" />

      das hier ein

      PHP-Quellcode

      1. <br /><br />
      2. <input type="submit" name="SendItems" value="Versendete Items" />


      dann sucht ihr nach elseif( isset($_GET['GSRanking']) ){ und fügt darüber das hier ein

      PHP-Quellcode

      1. elseif(isset($_GET['SendItems'])){
      2. odbc_exec($odbc_connect, 'USE [' . $_CONFIG['db_databases']['web'] . ']');
      3. $select = odbc_exec($odbc_connect, 'SELECT TOP 100 * FROM [LOG_SENDITEM] ORDER BY [sid] ASC');
      4. if( odbc_num_rows($select) == 0 ){
      5. echo '<div class="fail">'.$lang['db_no_del'].'</div>';
      6. }
      7. else {
      8. echo '
      9. <table cellspacing="0">
      10. <thead>
      11. <tr>
      12. <td>&nbsp;</td>
      13. <td>Von</td>
      14. <td>An</td>
      15. <td>Itemname</td>
      16. <td>Anzahl</td>
      17. <td>Upgrade</td>
      18. <td>Element</td>
      19. <td>Element Upgrade</td>
      20. <td>Sockel Anzahl</td>
      21. </tr>
      22. </thead>
      23. <tbody>';
      24. while($result = odbc_fetch_array($select)){
      25. echo '
      26. <tr>
      27. <td>('.$result['sid'].')</td>
      28. <td>'.$result['von'].'</td>
      29. <td>'.$result['an'].'</td>
      30. <td>'.$result['itemname'].'</td>
      31. <td>'.$result['count'].'</td>
      32. <td>'.$result['upgrade'].'</td>
      33. <td>'.$result['element'].'</td>
      34. <td>'.$result['elementupgrade'].'</td>
      35. <td>'.$result['piercing'].'</td>
      36. </tr>';
      37. }
      38. echo '
      39. </tbody>
      40. </table>';
      41. }
      42. echo '
      43. <br />
      44. <a href="list_database.php">'.$lang['panel_back'].'</a>';
      45. }
      Alles anzeigen




      Am Ende sieht es dann so aus
      mmo-core.de/attachment/3963/?s…b1b1ea5b61912c97e0fe5a06c
      Bilder
      • 8IrDE.jpg

        27,69 kB, 800×349, 257 mal angesehen
    • Werbung zur Unterstützung des Forums ( Bitte AddBlocker deaktivieren )