Jump to content

Recommended Posts

Posted

I was bored and i got nothing to do.. so i made a simple PHP script.It is a script ,who you can put in your site for players to report others for bugs.

Demo : http://l2phytes.no-ip.org/report.php (if you think this is an ad ,remove my topic.)

 

So here we go..

I configure it for a table called "hack" (dunno why :D) but you can change it anyway..

For SQL

CREATE TABLE `reports` (
`ot` varchar(255) collate latin1_swedish_ci NOT NULL default '',
`id` int(11) collate latin1_swedish_ci NOT NULL auto_increment,
`izp` varchar(255) collate latin1_swedish_ci NOT NULL,
`screen` varchar(255) collate latin1_swedish_ci NOT NULL default '',
`pesen` varchar(255) collate latin1_swedish_ci NOT NULL default '',
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=376 ; 

 

conf.php

<?php
$user = "root"; //Your MySQL user
$pass = "pass"; //Your MySQL Password
$db = "hack"; //Your MySQL database
$host = "localhost"; // Your MySQL address (its as default)
$connection = mysql_connect($host, $user, $pass) or die("Error with MySQL connecting"); // AIO connect
$db = mysql_select_db($db,$connection)or die("Error with MySQL connecting2"); // database connect
$chars="set character set latin1"; //set chars
mysql_query($chars); // mysql query for chars
?>

report.php

<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<?php
include('conf.php');?>
<center> 
<p>Still beta version! For bugs report at forum and reward shall follow. <br>
 <br>
 Submiter (Your nick Ingame): 
 <input type="text" name="user"><br>
 Hacker nick (Ingame): <input type="text" name="izp"><br>
 What he do?: <input type="text" name="pesen"><br>
 Screenshot or proof: <input type="text" name"screen">
</p>
<p><strong>NOTE : If you do a fake report ,all IP's are stored in the databse.So if you do a fake , we will find your IP and ban your account for 1 month.So be careful what you do!</strong><br>
 <input type="submit" name="button" value="Report">
</p>
<?php
if($_POST['button']){
$b=$_POST['user'];
$izp=$_POST['izp'];
$screen=$_POST['screen'];
$pesen=$_POST['pesen'];
$query = mysql_query("INSERT INTO `reports` (ot, izp, pesen, screen) VALUES('$ot','$izp','$pesen','$screen')");
echo "You reported someone successfuly.<br><a href=\"index.php\">Go back to the index</a>";}
?> 
<center>

reportadmin.php - NOTE : Its  secured!Please read the file carefuly to see where to edit.

<?php
include('conf.php');
session_start();
$name[] = "user1"; $pass[] = "pass1"; // Username for login 1
$name[] = "user2"; $pass[] = "pass2"; // Username for login 2
//You can add as much users you want.

function loginform(){ //The form that unlogged users will use
echo '<fieldset style="padding: 2">';
echo '<legend>Login</legend>';
echo '<form method=post action="?">';
echo 'Name: <input type=text name=username value="' . $_POST[username] . '">'; //The name
echo '<br>';
echo 'Pass: <input type=password name=pass>'; //The password
echo '<br>';
echo '<input type=submit name="s1" value="Login">'; // The submit button
echo '</form>';
echo '</fieldset>';
}


if($_GET['action'] == "logout"){ // Logging out
$_SESSION['loggedin'] = false;
$_SESSION['username'] = "";
}

if($_SESSION['loggedin'] == false){ // Protection from NULL logins
if(!$_POST['s1']){
loginform();
}else{

$tmpname = $_POST['username']; #the username the user has submitted
$tmppass = $_POST['pass']; #the password the user has submitted

$t = count($name); #count the total users
$i = 0;

while($i <= $t){
if($tmpname == $name[$i] && $tmppass == $pass[$i]){ //Checking

$_SESSION['loggedin'] = true;
$_SESSION['username'] = $name[$i];
header('Location: ?'); #reload the page
}
$i++;
}
echo "Your attempt is invalid.IP stored."; //If something is wrong
loginform(); #show the form
}
die; // if something is wrong , destroy it
}
?>

<center><br>Welcome <?php echo $_SESSION['username']; ?>
<br><a href="?action=logout">Logout</a> . </center>
<br>
<?php
$query="SELECT * FROM reports ORDER by id DESC LIMIT 1"; // Selection of SQL table and column
$result=mysql_query($query); // Getting query
while ( $r = mysql_fetch_array( $result )){ // The result
$ot=$r['ot']; // From
$id=$r['id']; // NULL
$pesen=$r['pesen']; // What he did
$izp=$r['izp']; // Hacker name
$screen=$r['screen']; // Screen or proof
echo"<b>Submitted by </b>: $ot";
echo "<b><br>Hacker name </b>: $izp";
echo "<b><br>And he tryes to do </b>: $pesen";
echo "<b><br>And proof is </b>: $screen";
echo "";
}
?>
<?php
$file = fopen('ipadmin.txt', 'a'); // opens ,create a new file with storage
fwrite($file,$_SERVER['REMOTE_ADDR']."\n"); // Ip storing
fclose($file); // Close the file
echo "<br><b>Your ip was stored successfuly.</b>"; // if successful
?>

 

[uPDATES]

reportadmin.php is secured and passwords added also IP is recording.

[uPDATES]

All credits to Me.. I`ll add some protects because i think its hackable..Like they can submit a java ALERT command and fuk up some things.. So i`ll secure it when i can.This is from me 4 now.. Thanks for viewing my topic.

  • 2 weeks later...
  • 1 month later...
  • 4 weeks later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now


  • Posts

    • I'll give you my wallet if you want, haha
    • To make up for some of the waiting time we’re hosting a 3v3 Tournament on open Beta, and this time we’re raising the stakes with a $1,300 prize pool 💰   🏆 PRIZE POOL BREAKDOWN (Over 2000$ Worth of prices total)   🥇 1st Place — $700 🥈 2nd Place —$300 🥉 3rd Place — $200 🏅 4th Place — $100  5th -6th Place - $100 in Gold Coins each    All Participating Teams: $50 in Gold!   All Prices will be Paid out instantly after the tour, no waiting time and conditions. This is not simply a marketing move, we want to give back to the community.   📅 Date: Wednesday 06.05.2026 ⏰ Time: 20:00 Central European Timezone (Berlin) 📍Format: 3v3   ⚔️Why join? Cash Prices for top 4 and rewards for all participants Payments to winners sent out straight after the tournament - No waiting time or rules that you have to play live server to obtain the reward. Clean format, smooth matches, and solid prize pool and a chance to experience our brand new files   📝How to join: Form your 3-player team Group Leader Sign up here: ⁠📍・3v3-tour-registration (Include Name of Group, Name of Group Leader)   Be ready on match day!     A separate post with rules for the tournament and class setups will follow shortly.   Tag your teammates, lock in your roster, and get ready to compete. We'll be happy to see you on the OBT!   💬 Questions? Ask in ⁠🎫・ticket or send us a message   See you on L2Dark! 😏   Discord: https://discord.gg/FAJwnFpb8M
    • You should check if that condition is supported by your current sources. You can find this in  DocumentBase#parsePlayerCondition If it isnt there and you want to follow the same pattern of the other item conditions, create a custom condition to parse the classId (or multiple class ids) (there are examples to copy the code). Alternatively, you can create your own condition handler. Your condition should look like this: <cond msgId="1518"> <player classId="ADVENTURER,PALADIN" /> </cond> or <cond msgId="1518"> <player classId="93,5" /> </cond>  
    • it's Interlude client forgot to mention
    • idk if acis have this option, but you can put inside item smth like that atleast on H5         <cond msgId="1518">             <player class_id_restriction="93, 101, 108, 117" /> <!-- Dagger Masters -->         </cond>
  • Topics

×
×
  • Create New...

Important Information

This community uses essential cookies to function properly. Non-essential cookies and third-party services are used only with your consent. Read our Privacy Policy and We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue..