convert not work?
#1

iam try to make convert 1 field string to 3 field ( int )

where iam wrong? already tested, but the data not move to new table
Код:
CMD:convert(playerid, params[])
{
	for(new i=0; i < cache_get_row_count(); i ++ )
	{
		new data1,data2,data3, str[254], fields,row;
		format(str, sizeof(str),"SELECT Playing FROM players WHERE id = %d", i);
		mysql_query(mysql, str);
		cache_get_data(fields,row);
		if(row > 0 )
		{
			cache_get_field_content(0, "Playing", str);
			sscanf(str, "p<,>ddd", data1, data2,data3);
		}
		format(str, sizeof(str),"INSERT INTO user_data (id, hours, minutes, second) VALUES (%d,%d,%d,%d)",i,data1,data2,data3);
		mysql_tquery(mysql, str);
		
	}
	return 1;
}
Reply
#2

CMD:convert(playerid, params[])
{
for(new i=0; i < cache_get_row_count(); i ++ )
{
new data1,data2,data3, str[254], fields,row;
format(str, sizeof(str),"SELECT Playing FROM players WHERE id = %d", i);
mysql_query(mysql, str);
cache_get_data(fields,row);
if(row > 0 )
{
cache_get_field_content(0, "Playing", str);
sscanf(str, "p<,>ddd", data1, data2,data3);
*//>>>>> {
format(str, sizeof(str),"INSERT INTO user_data (id, hours, minutes, second) VALUES (%d,%d,%d,%d)",i,data1,data2,data3);
mysql_tquery(mysql, str);

}
return 1;
}
Reply
#3

Quote:
Originally Posted by Winners2005
Посмотреть сообщение
CMD:convert(playerid, params[])
{
for(new i=0; i < cache_get_row_count(); i ++ )
{
new data1,data2,data3, str[254], fields,row;
format(str, sizeof(str),"SELECT Playing FROM players WHERE id = %d", i);
mysql_query(mysql, str);
cache_get_data(fields,row);
if(row > 0 )
{
cache_get_field_content(0, "Playing", str);
sscanf(str, "p<,>ddd", data1, data2,data3);
*//>>>>> {
format(str, sizeof(str),"INSERT INTO user_data (id, hours, minutes, second) VALUES (%d,%d,%d,%d)",i,data1,data2,data3);
mysql_tquery(mysql, str);

}
return 1;
}
mean for *//>>>>>
if i delete 1 bracket, will be missing a bracket.
Reply
#4

Can't you just do this in SQL directly for everyone? Also storing hours, minutes and seconds separately is useless. Never store something that can be derived or calculated. You only need to store the total second count and everything else can be derived from that. One hour is 3600 seconds, one minute is 60 seconds. So total second count is hours * 3600 + minutes * 60 + seconds.
Reply
#5

Just read the whole cmd, and dude what?
You don't have an active cache, yet you loop thru it (first loop)
then you create a variable called rows, then immediately loop thru 0 to that too (which obviously is 0 considering we created it)
Reply
#6

debug say "NULL"

and player data insert a last id

Reply
#7

um, thanks Vince & Pr0 GameR. u help me. this thread fixed.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)