[HELP] View transactions

07/30/2015 07:02 gmroger#1
Hello, I have a question.

I was wondering how I could view the transactions that players do in my server, I wanted to know if there was a script where I could just put a players name and it would show me all the transaction he or she made, or something similar to this.


(Yes, I used the search function and found nothing).
07/30/2015 08:18 Boul27#2
Yep there is a possibility.

Here is a general query to see what char receive :
SELECT * FROM [PS_GameLog].[dbo].[ActionLog] where ActionType = 115 and upper(CharName) = 'CHARNAME';

And here, to see what they sell :
SELECT * FROM [PS_GameLog].[dbo].[ActionLog]where ActionType = 116 and upper(CharName) = 'CHARNAME';

If you can understant the result, so you can modify the query to only have the informations you wants to have

Hope it help you.

You can ask me more question/detail if you don't really understand ;)
07/30/2015 08:31 momocruz#3
Here you have Something like " Trade LOG "
Made From this [Only registered and activated users can see links. Click Here To Register...]
And if you read this release you can learn many thing ALONE

PHP Code:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<style type="text/css">
html, body {height:100%; margin:0; padding:0;}
#page-background {position:fixed; top:0; left:0; width:100%; height:100%;}
#content {position:relative; z-index:1; padding:10px;}
body,td,th {
color: #000;
}
</style>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body text="#FFFFFF">
<div id="page-background"><img src="pic/i5.png" width="1920" height="1200" alt="TROC Reccord"></div>
<div id="content">
<?php
function mssql_escape_string($data) {
if(!isset(
$data) or empty($data)) return '';
if(
is_numeric($data)) return $data;
$non_displayables = array(
'/%0[0-8bcef]/', // url encoded 00-08, 11, 12, 14, 15
'/%1[0-9a-f]/', // url encoded 16-31
'/[\x00-\x08]/', // 00-08
'/\x0b/', // 11
'/\x0c/', // 12
'/[\x0e-\x1f]/' // 14-31
);
foreach(
$non_displayables as $regex)
$data = preg_replace($regex,'',$data);
$data = str_replace("'","''",$data);
return 
$data;
}

$host = '127.0.0.1';
$dbuser = 'Shaiya';
$dbpass = 'Shaiya123';
$database = 'PS_GameLog';


$conn = @odbc_connect("Driver={SQL Server};Server=$host;Database=$database", $dbuser, $dbpass) or die("Database Connection Error!");
$res = odbc_exec($conn, "SELECT [CharName], [CharLevel], [Value1], [Value2], [Value3], [Value4], [Value5], [Value6], [Value7], [Value8], [Value9], [Value10], [MapID], [Text1], [Text2], [Text3], [Text4],[ActionTime]  FROM ActionLog WHERE [ActionType]='116'");
$detail=odbc_fetch_array($res);
if (
odbc_num_rows($res)==0);
else{
echo 
"<center>Troc Records
<table cellspacing=1 cellpadding=2 border=1 style=\"border-style:hidden;\">
<tr>
<th>Celui qui donne</th>
<th>Level</th>
<th>Item ID</th>
<th>Quantité</th>
<th>Lieu</th>
<th>Nom de L'item</th>
<th>Nom du receveur</th>
<th>Fait le</th>

</tr>"
;
while(
$row = odbc_fetch_array($res))
{
echo 
"<tr>";
echo 
"
<td>"
. $row['CharName'] ."</td>
<td>"
. $row['CharLevel'] ."</td>
<td>"
. $row['Value2'] ."</td>
<td>"
. $row['Value4'] ."</td>
<td>"
. $row['MapID'] ."</td>
<td>"
. $row['Text1'] ."</td>
<td>"
. $row['Text2'] ."</td>
<td>"
. $row['ActionTime'] ."</td>";
echo 
"</tr>";
}
echo 
"</table></center>";
}
?>
07/30/2015 16:33 wallerus#4
Do you not already have a Transaction Log? If yes then use this.

Code:
SELECT * FROM PS_GameLog.dbo.TransactionLog
WHERE CharID='insert charID'
SORT BY DateTime DESC
It's been months since I've looked at a Shaiya DB, but I think that's the correct location for the Transaction Log. Alternatively, you could use [Only registered and activated users can see links. Click Here To Register...] which has this feature plus more already implemented.