Jump to content

Recommended Posts

Posted

Last time many people asking for PHP scripts so I made this small tutorial how to make own scripts for common tasks. I hope it will be useful. Notice: You will not find here working examples! You have to do it by urself its easy!

 

Basics

 

PHP

 

If wiki said so it have to be true. But for l2 developers it's simple, fast, easy to learn and flexible tool for display and manage data of ur server.

There are many tutorial trough the web so I will not copy that. All u have to know is on www.php.net.

 

SQL

SQL is query language for handling DB's. L2off use MSSQL but basic grama and structure is similar for all sql db's like MySql etc. Use google to find out basics.

 

What u need to use it

You need web server ( like apache ) and php. Here u got easy tutorial how to set it up on windows. You can also download pack like Xamp if feel that u can not handle doing it by urself...

 

Connecting to db

First u have to enable mssql extension in php.ini ( if ur using windows ).

Then we use mssql_connect function to  connect to db, like:

<?php
$db = @mssql_connect("host","user","password") or die("Unable to connect to server");
?>

We save our connection into variable. If connection faild script will end with msg.

 

Selecting db

 

Now we have to select db what we want working on like:

<?
mssql_select_db('[some db name]', $db);
?>

 

Queries

 

Queries is like asking db for something what we want. Result is not a table.

<?php
$result = mssql_query( "SELECT level FROM characters WHERE name = 'Plum'");
?>

 

Fetch result

 

You can use for that one of the msssql_fetch_* functions like mssql_fetch_array.

<?php
while ( $row = mysql_fetch_array($result) ) {
print_r $row; // print each row as small array
echo $row['level']; // show column level in current row
}
?>

 

Queries

Notice: I'm not using here orginal l2off db scheme.

SELECT what_rows FROM tables WHERE conditions;

 

So if we want for example get levels, nick form table chars where all lvls are grater then 50 and nick starts with "s" we do smth like this:

SELECT level, nick FROM chars WHERE level > 50 AND nick LIKE "s%";

 

If we want also to select how much adena they have ( form let say table inventory ) we do it like that:

SELECT chars.level, chars.nick, invetory.item_count AS adena_count FROM chars, inventory WHERE chars.level > 10 AND chars.nick LIKE "s%" AND inventory.item_name = 'adena' AND inventory.item_owner = chars.nick;

 

Now lets order them from lower lvl to higher

{...} ORDER BY level;

If we want to change order we add DESC

 

To select only rows from 10 to 50 results add to query this:

{...} LIMIT 10, 50

 

Easy? Yeah I told u ;)

Now lets check how many online players we got. 'online' is bool row in table users and its shows users current status.

SELECT COUNT(*) as number_of_online_chars FROM users WHERE online  = 'TRUE';

 

Etc. etc. etc. google is ur best friend so for more examples search there.

 

Closeing connection

mssql_close($db);

 

Few words about how to display results

 

There are few functions to display smth in php:

echo, fprintf, print, printf and vprintf

Most basic and usefull for u will be echo.

How to insert variables into string?

<?php
echo "smth $users_online"; // Will display 'smth 3503' for example
echo 'smth $users_online'; // This will show 'smth $users_online'
echo $result['nick'];
echo "today we got ".$result['online']." players online"; // It will work
echo "today we got {$result['online']} players online"; // It will also work
?>

But the best way is to put everything into table and display it using templates engine. If ur script is small u dont have to think about it.

 

What next?

You can use to mange ur db connection PDO, Pear or another DAO.

There are many articles trought the web about php.  Take a look on object oriented programing in php ( I suggest to find info about 5.2 version ). Check also programming patterns.

If u want to make ur code cleaner think about using templates engine like Smarty or Open Power Templates.

Good luck ;]

 

Tools

Eclipe php ide ( free; work on windows, linux and ever platform with java )

Zend Studio ( only windows and not free )

 

 

Important: If u think about adding control panel on ur website where user can choose smth and he send to script in GET/POST some data  that u use forward in query READ ABOUT SQL INJECTION etc. It can save ur db. Even if u think ur script is secure its NOT. Its not good idea at all to do smth like that if ur beginer. Belive me.

 

 

I will try to update this small tutoriall with more links and examples of using php for cached.

If u have any question ask here or send me pm on forum/msn. I will try to help u :)

 

Update1: About output functions and tools

 

source:postpacific.com

  • 3 weeks 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

    • Hello.Please delete this post. Reason for deletion: no longer relevant.
    • --- Interlude GvE PvP new season start at 2026-06-27 21:00 GMT+3 ---   Gameplay: Chronicle: Interlude Type: Faction/GvE (Angels vs Nature vs Demons) GM Shop: B-S grade Buff slots: 20+4 Starting level: 74 + rebirth system   New Features: Client: Modern interface based on Essence Balance: New class skills for better balance Achievement Rewards: Daily, Weekly, One-time TOP rankings: PvP, Event PvP, Map PvP, Clan PvP, Event MvP, Map MvP Zones: 70 different PvP zones,  18 different events (8 map events | 10 main events) 12 Grand/raid bosses. Castle siege Olympiad Clan Hall challenge Custom Enchant System: Dynamic success chance (greater enchant level or item grade less enchanting success chance) Enchant rate: Blessed scrolls dynamic from 100% to 25%. Crystal Scrolls: 100%; Max enchant weapon +12 Max enchant armor +8 Safe point enchant system Extra Features: PvP items with level upgrade Weapon/Armor upgrade (from B grade to S) system Attributes system   Website: https://l2cygnus.com Community: Discord Facebook: https://www.facebook.com/l2cygnus Youtube: 
    • 🚀 L2JOne Website System — Features & Security Overview 📌 Overview The L2JOne Website System is a complete platform designed for Lineage 2 servers, providing account management, donation processing, game integration, automation tools, and advanced security protections.   Built with a focus on: Security Performance Automation Scalability Easy Administration 🎮 Player Features ✔ Account Registration Direct account creation from the website Game database integration Data validation Optional email verification Google reCAPTCHA protection ✔ Secure Login System Protected user sessions Automatic Session ID regeneration Session Fixation protection Secure logout ✔ Player Control Panel Ticket balance management Purchase history Transfer history Character selection Automatic item delivery ✔ Account Recovery Email-based recovery Temporary recovery tokens Automatic token expiration 💰 Donation System Supported Payment Gateways Mercado Pago PIX Credit Card Debit Card Stripe International credit cards PayPal Worldwide payments Binance Pay Cryptocurrency payments ⚡ Automated Credit Delivery Once a payment is confirmed: Gateway validates the transaction. Webhook signature is verified. Order is marked as completed. Credits are added to the player's balance. Player transfers credits to a character. Items are automatically delivered in-game. No manual intervention required. 🎁 Coupon System Percentage discounts Fixed value discounts Usage limits Expiration dates Minimum purchase requirements 🎟 Ticket System Internal virtual currency Item conversion system Administrative adjustments Full transaction history Balance management 📊 Administrative Dashboard Real-Time Statistics Total revenue Daily revenue New registrations Total purchases Pending payments Approved payments Reports Sales reports Financial reports Player activity reports Transfer history Interactive Charts Revenue growth Daily earnings Monthly earnings Visitors by country Payment distribution 🌍 Analytics System Visitor countries Browser statistics Operating systems Device tracking Access history 📰 News Management System Unlimited news posts Featured images HTML editor support Homepage highlights 🎥 Video & Streaming System Supports: YouTube Twitch Kick Custom stream embeds ⏳ Countdown System Launch countdown timer Configurable date and time Timezone support Homepage integration 📥 Download Center Fully configurable: Game Client Official Patch Mirror Downloads Torrent Downloads External Download Links 📱 Social Media Integration Discord Facebook Instagram Telegram YouTube 🔒 Security Layer CSRF Protection All forms include: Unique security tokens Mandatory validation Automatic expiration Protects against: Cross-Site Request Forgery (CSRF) Google reCAPTCHA Protection Integrated Google reCAPTCHA v3 Protects against: Bots Automated registrations Brute-force attacks Session Security Session ID regeneration HttpOnly cookies SameSite cookie protection Secure cookie support Protects against: Session hijacking Session fixation attacks Upload Protection Sensitive file types are blocked: .sql .sqlite .log .pem .key Directory Protection Direct access denied to: config/ private/ storage/ cli/ database/ Unauthorized access is blocked. Anti-Replay Protection Financial callbacks include: Signed timestamps Expiration windows One-time validation Protects against: Payment replay attacks Duplicate transaction processing Webhook Security HMAC signature validation Shared secret verification Mandatory request authentication Protects against: Fake payment notifications Fraudulent credit generation Duplicate Payment Prevention Built-in: Idempotency control Transaction reference validation Payment status verification Prevents: Double credits Repeated processing SQL Injection Protection Secure database layer using: PDO Prepared Statements Parameter Binding No unsafe SQL concatenation. XSS Protection Output sanitization through: HTML escaping Input filtering Protects against: Cross-Site Scripting (XSS) Session theft Licensing Protection Centralized licensing system with: Unique license key Unique secret key Remote validation Domain verification Heartbeat monitoring Anti-Cloning Protection Licenses are linked to: Authorized domain Unique credentials Central validation server Unauthorized domain usage can be automatically blocked. ⚙ Administrative Tools User Management Create accounts Edit accounts Suspend users Adjust balances Financial Management Approve transactions Cancel orders Financial reports Content Management News management Download management Video management Social media management Global Settings Rates configuration Countdown management Payment gateway settings License management 🚀 Technology Stack PHP 8+ MySQL 9+ / MariaDB 11+ Bootstrap 5.3.8 AdminLTE 4..0.2 Mercado Pago SDK Stripe SDK PayPal API Binance Pay API Google reCAPTCHA v3 PDO Secure Database Layer 🛡 Final Result The L2JOne Website System delivers a professional-grade solution for Lineage 2 servers, combining: ✅ Modern Administrative Dashboard ✅ Advanced Donation System ✅ Automatic In-Game Delivery ✅ Real-Time Statistics ✅ Centralized Licensing Platform ✅ Financial Fraud Protection ✅ SQL Injection Protection ✅ XSS Protection ✅ CSRF Protection ✅ Anti-Replay Security ✅ Anti-Cloning Protection A complete, secure, and scalable platform built for professional Lineage 2 server operations DEMO SITE: "My Site" - Lineage II I am currently studying programming in Trybe | Cursos de Inteligência Artificial e Tecnologia Price: 150 USDT Payment methods: Crypto using the Tron network or PayPal (you pay an administrative fee). You can choose to pay a monthly fee to get new features or stick with your current version with security updates! The maintenance fee is only 30 USDT per month. Customers currently using my website: http://www.l2shadowwars.com/                                                                                                        Panel Admin:            Database WebSIte     PANEL PLAYER     StartPack    
    • Fixed a lot of null crashes, damn vanganth 🤣 Added engine that you can create your custom quests Extender dungeon systen so u can create as many dungeons as you like       Possibility to create a server from scratch its possible just is the work + the license/month , many ask for the creation.. i can do everything u like, i can even implement UFOs to fly over gym so.. whatever your dream is i can be as close as possible!
  • 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..