#Major . Posted August 9, 2018 Share Posted August 9, 2018 السلام عليكم كيف اقدر اربط قاعدة البيانات بين سيرفرين يعني الحساب والفلوس والداتا إلخ بين سيرفرين Link to comment
Trefeor Posted August 9, 2018 Share Posted August 9, 2018 اتوقع والله آعلم عن طريق الـ MySQL Link to comment
#Major . Posted August 10, 2018 Author Share Posted August 10, 2018 12 hours ago, Trefeor said: اتوقع والله آعلم عن طريق الـ MySQL انا لو الاقي طريقة بس اقدر انفذ فيها فنكشنات في سيرفر اخر من سييرفر ثاني رح يكون كلشي سهل Link to comment
Abdul KariM Posted August 10, 2018 Share Posted August 10, 2018 تحتاج dbConnect getPlayerSerial Link to comment
#Major . Posted August 10, 2018 Author Share Posted August 10, 2018 51 minutes ago, Abdul KariM said: تحتاج dbConnect getPlayerSerial م فهمت انا ع كذا رح يكون فيه بكل سيرفر قاعدة انت م فهمت مقصدي انا ابيه لما يسجل في سيرفر رقم 1 يتسجل في سيرفر رقم 2 حسابة تلقائي , لما تنحفظ فلوسه في سيرفر رقم 1 تنتقل فلوسه لسيرفر رقم 2 إلخ Link to comment
N3xT Posted August 10, 2018 Share Posted August 10, 2018 فيه طريقتين لكن ماني متأكد اذا راح تظبط معاك الطريقة الثانية ولا لا الطريقة الاولى استعمل قاعدة بيانات MySQL الطريقة الثانية سوي ملف اكس ام ال بجانب الكلينت عشان ينحفظ عند اللاعب واذا خرج من السيرفر حط بالملف فلوسه واذا خش السيرفر الثاني جيب فلوسه من الملف وضيفها له وهكذا 1 Link to comment
#Major . Posted August 10, 2018 Author Share Posted August 10, 2018 20 minutes ago, N3xT said: فيه طريقتين لكن ماني متأكد اذا راح تظبط معاك الطريقة الثانية ولا لا الطريقة الاولى استعمل قاعدة بيانات MySQL الطريقة الثانية سوي ملف اكس ام ال بجانب الكلينت عشان ينحفظ عند اللاعب واذا خرج من السيرفر حط بالملف فلوسه واذا خش السيرفر الثاني جيب فلوسه من الملف وضيفها له وهكذا شكرا طيب كيف طريقة الmysql Link to comment
Rakan# Posted August 10, 2018 Share Posted August 10, 2018 @N3xT لو استعمل الطريقة الاولى .. بيكون بامكان اللاعب يغير فلوسه ويلعب فيها @*RayaN-Alharbi. عارف مودات الحياه الواقعيه ؟ فيها اتصال mysql اشتري اي استضافه تقدم خدمة mysql انا استعمل استضافة انست هوست تعاملهم كويس . واربط فيها . تقولي كيف اربط فيها ؟ شوف مودات الحياه الواقعيه وبتفهم كيف Link to comment
#Major . Posted August 10, 2018 Author Share Posted August 10, 2018 1 minute ago, Rakan# said: @N3xT لو استعمل الطريقة الاولى .. بيكون بامكان اللاعب يغير فلوسه ويلعب فيها @*RayaN-Alharbi. عارف مودات الحياه الواقعيه ؟ فيها اتصال mysql اشتري اي استضافه تقدم خدمة mysql انا استعمل استضافة انست هوست تعاملهم كويس . واربط فيها . تقولي كيف اربط فيها ؟ شوف مودات الحياه الواقعيه وبتفهم كيف انا اساسًا م اعرف للماي اس كيو ال لكن هل فيه طريقة اني اقدر انفذ فنكشنات من سيرفر إلى اخر مثال\ انفذ فنكشن اخراج رسالة فالشات من السيرفر 1 إلى سيرفر 2 Link to comment
Simple. Posted August 10, 2018 Share Posted August 10, 2018 https://forum.multitheftauto.com/topic/32557-tut-php-sdk/ 1 Link to comment
#Major . Posted August 10, 2018 Author Share Posted August 10, 2018 3 minutes ago, Simple. said: https://forum.multitheftauto.com/topic/32557-tut-php-sdk/ هذي يبيلها موقع Link to comment
Simple. Posted August 10, 2018 Share Posted August 10, 2018 (edited) اذا تبي تستخدم قاعدة بيانات بسيرفرين بس استخدم هذا local connection = nil local mysql_hostname = "" local mysql_username = "" local mysql_password = "" local mysql_database = "" addEventHandler("onResourceStart",resourceRoot,function(resource) connection = dbConnect("mysql", "dbname="..mysql_database..";host="..mysql_hostname, mysql_username, mysql_password, "autoreconnect=1") if connection then outputDebugString(getResourceName(resource) .. " : connected to database.") return true else outputDebugString(getResourceName(resource) .. " : Unable to connect with database. Please contact Developer.") return false end end ) function _Query( ... ) if connection then local query = dbQuery(connection, ... ) local result = dbPoll(query,-1) return result else return false end end function _QuerySingle(str,...) if connection then local result = _Query(str,...) if type(result) == 'table' then return result[1] end else return false end end function _Exec(str,...) if connection then local query = dbExec(connection,str,...) return query else return false end end وتحصل استضافات تعطيك mysql مجانيه Edited August 10, 2018 by Simple. Link to comment
#Major . Posted August 10, 2018 Author Share Posted August 10, 2018 2 minutes ago, Simple. said: اذا تبي تستخدم قاعدة بيانات بسيرفرين بس استخدم هذا local connection = nil local mysql_hostname = "" local mysql_username = "" local mysql_password = "" local mysql_database = "" addEventHandler("onResourceStart",resourceRoot,function(resource) connection = dbConnect("mysql", "dbname="..mysql_database..";host="..mysql_hostname, mysql_username, mysql_password, "autoreconnect=1") if connection then outputDebugString(getResourceName(resource) .. " : connected to database.") return true else outputDebugString(getResourceName(resource) .. " : Unable to connect with database. Please contact Developer.") return false end end ) function _Query( ... ) if connection then local query = dbQuery(connection, ... ) local result = dbPoll(query,-1) return result else return false end end function _QuerySingle(str,...) if connection then local result = _Query(str,...) if type(result) == 'table' then return result[1] end else return false end end function _Exec(str,...) if connection then local query = dbExec(connection,str,...) return query else return false end end وتحصل استضافات تعطيك mysql مجانيه وكيف اقدر اخزن واجلب البيانات منها؟ Link to comment
Simple. Posted August 10, 2018 Share Posted August 10, 2018 (edited) dbQuery Edited August 10, 2018 by Simple. Link to comment
#Major . Posted August 10, 2018 Author Share Posted August 10, 2018 2 minutes ago, Simple. said: dbQuery طيب شكرا Link to comment
Rakan# Posted August 10, 2018 Share Posted August 10, 2018 32 minutes ago, *RayaN-Alharbi. said: انا اساسًا م اعرف للماي اس كيو ال لكن هل فيه طريقة اني اقدر انفذ فنكشنات من سيرفر إلى اخر مثال\ انفذ فنكشن اخراج رسالة فالشات من السيرفر 1 إلى سيرفر 2 callRemote Link to comment
Rockyz Posted August 10, 2018 Share Posted August 10, 2018 هذا مثال لحفظ الفلوس عن طريق ال mySQL في سيرفرين local dbHost = ''; local dbPort = ''; local dbName = ''; local dbUsername = ''; local dbPassword = ''; local connection = dbConnect('mysql', 'dbname='..dbName..';host='..dbHost..';port='..dbPort, dbUsername, dbPassword); function setupDatabase(resource) if connection then dbExec(connection, 'CREATE TABLE IF NOT EXISTS playersMoney(playerSerial TEXT, playerMoney INTEGER)'); local function giveMoney(player) local returnedValue = dbPoll(dbQuery(connection, 'SELECT * FROM playersMoney WHERE playerSerial=?', getPlayerSerial(player)), -1) if #returnedValue > 0 then setPlayerMoney(player, returnedValue[1].playerMoney) end end if eventName == 'onResourceStart' then local players = getElementsByType('player'); for index = 1, #players do giveMoney(players[index]); end else giveMoney(source); end else outputDebugString((resource and getResourceName(resource) or '')..': Failed to connect to the database') end end addEventHandler('onPlayerJoin', root, setupDatabase); addEventHandler('onResourceStart', resourceRoot, setupDatabase); addEventHandler('onPlayerQuit', root, function() local playerSerial = getPlayerSerial(source); local returnedValue = dbPoll(dbQuery(connection, 'SELECT * FROM playersMoney WHERE playerSerial=?', playerSerial), -1) if type(returnedValue) == 'table' and #returnedValue > 0 then dbExec(connection, 'UPDATE playersMoney SET playerMoney=? WHERE playerSerial=?', getPlayerMoney(source), playerSerial) else dbExec(connection, 'INSERT INTO playersMoney (playerSerial, playerMoney) VALUES(?, ?)', playerSerial, getPlayerMoney(source)) end end) addEventHandler('onResourceStop', resourceRoot, function() local players = getElementsByType('player'); for index = 1, #players do local playerSerial = getPlayerSerial(players[index]); local returnedValue = dbPoll(dbQuery(connection, 'SELECT * FROM playersMoney WHERE playerSerial=?', playerSerial), -1) if type(returnedValue) == 'table' and #returnedValue > 0 then dbExec(connection, 'UPDATE playersMoney SET playerMoney=? WHERE playerSerial=?', getPlayerMoney(players[index]), playerSerial) else dbExec(connection, 'INSERT INTO playersMoney (playerSerial, playerMoney) VALUES(?, ?)', playerSerial, getPlayerMoney(players[index])) end end end) حط الكود في السيرفرين, ولاتنسى تحط معلومات الداتا بيس Link to comment
#Major . Posted August 10, 2018 Author Share Posted August 10, 2018 58 minutes ago, #,xiRocKyz said: هذا مثال لحفظ الفلوس عن طريق ال mySQL في سيرفرين local dbHost = ''; local dbPort = ''; local dbName = ''; local dbUsername = ''; local dbPassword = ''; local connection = dbConnect('mysql', 'dbname='..dbName..';host='..dbHost..';port='..dbPort, dbUsername, dbPassword); function setupDatabase(resource) if connection then dbExec(connection, 'CREATE TABLE IF NOT EXISTS playersMoney(playerSerial TEXT, playerMoney INTEGER)'); local function giveMoney(player) local returnedValue = dbPoll(dbQuery(connection, 'SELECT * FROM playersMoney WHERE playerSerial=?', getPlayerSerial(player)), -1) if #returnedValue > 0 then setPlayerMoney(player, returnedValue[1].playerMoney) end end if eventName == 'onResourceStart' then local players = getElementsByType('player'); for index = 1, #players do giveMoney(players[index]); end else giveMoney(source); end else outputDebugString((resource and getResourceName(resource) or '')..': Failed to connect to the database') end end addEventHandler('onPlayerJoin', root, setupDatabase); addEventHandler('onResourceStart', resourceRoot, setupDatabase); addEventHandler('onPlayerQuit', root, function() local playerSerial = getPlayerSerial(source); local returnedValue = dbPoll(dbQuery(connection, 'SELECT * FROM playersMoney WHERE playerSerial=?', playerSerial), -1) if type(returnedValue) == 'table' and #returnedValue > 0 then dbExec(connection, 'UPDATE playersMoney SET playerMoney=? WHERE playerSerial=?', getPlayerMoney(source), playerSerial) else dbExec(connection, 'INSERT INTO playersMoney (playerSerial, playerMoney) VALUES(?, ?)', playerSerial, getPlayerMoney(source)) end end) addEventHandler('onResourceStop', resourceRoot, function() local players = getElementsByType('player'); for index = 1, #players do local playerSerial = getPlayerSerial(players[index]); local returnedValue = dbPoll(dbQuery(connection, 'SELECT * FROM playersMoney WHERE playerSerial=?', playerSerial), -1) if type(returnedValue) == 'table' and #returnedValue > 0 then dbExec(connection, 'UPDATE playersMoney SET playerMoney=? WHERE playerSerial=?', getPlayerMoney(players[index]), playerSerial) else dbExec(connection, 'INSERT INTO playersMoney (playerSerial, playerMoney) VALUES(?, ?)', playerSerial, getPlayerMoney(players[index])) end end end) حط الكود في السيرفرين, ولاتنسى تحط معلومات الداتا بيس شكرا Link to comment
#Major . Posted August 10, 2018 Author Share Posted August 10, 2018 1 hour ago, #,xiRocKyz said: عفوا هل لازم الداتا بيس مرتبطة بالسيرفرين؟ Link to comment
Rockyz Posted August 10, 2018 Share Posted August 10, 2018 (edited) 1 hour ago, *RayaN-Alharbi. said: هل لازم الداتا بيس مرتبطة بالسيرفرين؟ MYSQL Edited August 10, 2018 by #,xiRocKyz Link to comment
#Major . Posted August 10, 2018 Author Share Posted August 10, 2018 1 minute ago, #,xiRocKyz said: SQLite ._. م فهمت يب او لا Link to comment
Rockyz Posted August 10, 2018 Share Posted August 10, 2018 (edited) كيف يعني مرتبطة او لا هي قاعدة بيانات بعض الاستضافات اذا تشتري منهم سيرفر يعطونك قاعدة بيانات، معلومات الداتا بيس منفصلة عن معلومات السيرفر Edited August 10, 2018 by #,xiRocKyz Link to comment
#Major . Posted August 10, 2018 Author Share Posted August 10, 2018 8 minutes ago, #,xiRocKyz said: كيف يعني مرتبطة او لا هي قاعدة بيانات بعض الاستضافات اذا تشتري منهم سيرفر يعطونك قاعدة بيانات، معلومات الداتا بيس منفصلة عن معلومات السيرفر يب يعطونك قاعدة بيانات لكن يثبوتها ع سيرفرك Link to comment
Rockyz Posted August 10, 2018 Share Posted August 10, 2018 8 minutes ago, *RayaN-Alharbi. said: يب يعطونك قاعدة بيانات لكن يثبوتها ع سيرفرك كيف يعني يثبتونها هم يعطوك الداتا بيس لحالها اتوقع Link to comment
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now