Jump to content
×
×
  • Create New...
  • 0

Bon de DC


Saw

Question

BONJOUR (pour hardy),

 

Je viens vous demandé de l'aide car ça fait un certains moment que mes bons DC ne fonctionnent pas, du moins ils ne donnent pas les monnaies dans la base de données.

 

Voici la quest :

 

 

quest bourse_is begin
state start begin
	function give_bonus_cash(account, count)
		mysql_query("UPDATE account.account SET cash=cash+'"..count.."' WHERE id='"..account.."'")
		syschat("Vous recevez "..count.." marques.")
	end
	when 80014.use or 80015.use or 80016.use or 80017.use begin
		local tableByVnum = 
		{
			[80014] = 100,
			[80015] = 500,
			[80016] = 1000,
			[80017] = 50
		}
		bourse_is.give_bonus_cash(pc.get_account_id(), tableByVnum[item.get_vnum()])
		pc.remove_item(item.get_vnum(), 1)
	end
end
end

voici le bout de code de mon questlib pour le MySQL_direct:

 

-- author : Mijago
-- description : enable to write SQL queries in quests
mysql_query = function(query)
   if not pre then
       local rt = io.open('CONFIG','r'):read('*all')
       pre,_= string.gsub(rt,'.+PLAYER_SQL:%s(%S+)%s(%S+)%s(%S+)%s(%S+).+','-h%1 -u%2 -p%3 -D%4')
   end
   math.randomseed(os.time())
   local fi,t,out = 'mysql_data_'..math.random(10^9)+math.random(2^4,2^10),{},{}
   os.execute('mysql '..pre..' --e='..string.format('%q',query)..' > '..fi) -- für MySQL51
   -- os.execute('mysql '..pre..' -e'..string.format('%q',query)..' > '..fi) -- für MySQL55
   for av in io.open(fi,'r'):lines() do table.insert(t,split(av,'\t')) end; os.remove(fi);
   for i = 2, table.getn(t) do table.foreach(t[i],function(a,b)
       out[i-1]               = out[i-1] or {}
       out[i-1][a]            = tonumber(b) or b or 'NULL'
       out[t[1][a]]           = out[t[1][a]] or {}
       out[t[1][a]][i-1]      = tonumber(b) or b or 'NULL'
   end) end
   return out
end

Alors voici la structure de ma colonne "cash" situé dans la table "account" de ma database "account" :

Name: cash

Type: int

Lenght: 11

Decimals: 0

Allow Null: non coché.

 

J'aimerais savoir pourquoi les bons de DC ne fonctionnent pas, merci d'avance pour l'aide que vous m'apporterez.

 

Cordialement,

#Saw

Link to comment
  • Answers 4
  • Created
  • Last Reply

Top Posters For This Question

Popular Days

Top Posters For This Question

4 answers to this question

Recommended Posts

  • 0

   os.execute('mysql '..pre..' --e='..string.format('%q',query)..' > '..fi) -- für MySQL51
  -- os.execute('mysql '..pre..' -e'..string.format('%q',query)..' > '..fi) -- für MySQL55

 

tu dois commenter/décommenter ces lignes selon ta version de MySQL

Link to comment
  • 0

En LUA si une ligne commence par -- c'est un commentaire

 

donc pour 5.5 ça donne :

 

--os.execute('mysql '..pre..' --e='..string.format('%q',query)..' > '..fi) -- für MySQL51
os.execute('mysql '..pre..' -e'..string.format('%q',query)..' > '..fi) -- für MySQL55

Link to comment
Guest
This topic is now closed to further replies.


Important Information

Terms of Use / Privacy Policy / Guidelines / 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.