Duda cargado mysql
#1

Hola, perdon por molestarlos e.e

Bueno mi duda es la siguiente, Estoy creando un sistema de casas con mysql pero tengo unos errores, la cosa es que cuando creo la casa todo va perfecto se crean las tablas correctamente y todo. Pero al apagar y encender nuevamente el servidor los labels no cargan de la forma correcta. EJ:

Tengo un stock para actualizar el label de cada casa:

Код:
UpdateHouseLabel(h)
{
	 new string[364];
	if(CasaInfo[h][cComprada] == 0) //casa libre
	{
		format(string, sizeof(string), "{FFFFFF}>> PROPIEDAD EN VENTA <<\n{3F9B00}Direcciуn: %s\nPrecio: %d$", CasaInfo[h][cDirec], CasaInfo[h][cPrecio]);
	}
	else if(CasaInfo[h][cComprada] == 1 && CasaInfo[h][cAlquiler] == 0) //casa comprada y no alquilable
	{
		format(string,sizeof(string),"{FFFFFF}>> PROPIEDAD PRIVADA <<\n{3F9B00}Direcciуn: %s\nDueсo: %s", CasaInfo[h][cDirec], CasaInfo[h][cComprador]);
	}
	else if(CasaInfo[h][cComprada] == 1 && CasaInfo[h][cAlquiler] == 1) //casa comprada y alquilable
	{
		format(string,sizeof(string),"{FFFFFF}>> PROPIEDAD PRIVADA <<\n{3F9B00}Direcciуn: %s\nDueсo: %s\nInquilinos: %d\nAlquiler: %d$ (/alquilar)", CasaInfo[h][cDirec], CasaInfo[h][cComprador], CasaInfo[h][cAlquilados], CasaInfo[h][cPrecioAlquiler]);
	}
	UpdateDynamic3DTextLabelText(CasaInfo[h][cLabel], 0xE64000B5, string);
}
El problema es que no carga lo que vendria a ser la 'direccion' que es una string en letras (%s), esto pasa al encender el servidor, pero cuando creo la casa se coloca de forma correcta.

Aqui el cargado de casas:

Код:
		case CARGAR_CASAS:
		{
            new rows, fields;
			cache_get_data(rows,fields,TuberiasMySQL);
			if(rows)
			{
				for(new i; i < rows; i++)
				{
		        	new contenido[364];
    			 	format(Query, sizeof(Query), "SELECT id FROM casas ORDER BY id DESC");
    			 	mysql_function_query(TuberiasMySQL, Query, true, "OnQueryFinish", "i", SIN_RESULTADO);
					cache_get_field_content(i, "id", contenido);CasaInfo[i][cID] = strval(contenido);
					cache_get_field_content(i, "x", contenido);CasaInfo[i][cx] = floatstr(contenido);
					cache_get_field_content(i, "y", contenido);CasaInfo[i][cy] = floatstr(contenido);
					cache_get_field_content(i, "z", contenido);CasaInfo[i][cz] = floatstr(contenido);
					cache_get_field_content(i, "a", contenido);CasaInfo[i][ca] = floatstr(contenido);
					cache_get_field_content(i, "xx", contenido);CasaInfo[i][cxx] = floatstr(contenido);
					cache_get_field_content(i, "yy", contenido);CasaInfo[i][cyy] = floatstr(contenido);
					cache_get_field_content(i, "zz", contenido);CasaInfo[i][czz] = floatstr(contenido);
					cache_get_field_content(i, "aa", contenido);CasaInfo[i][caa] = floatstr(contenido);
					cache_get_field_content(i, "gcx", contenido);CasaInfo[i][cgx] = floatstr(contenido);
					cache_get_field_content(i, "gcy", contenido);CasaInfo[i][cgy] = floatstr(contenido);
					cache_get_field_content(i, "gcz", contenido);CasaInfo[i][cgz] = floatstr(contenido);
					cache_get_field_content(i, "gxx", contenido);CasaInfo[i][cgxx] = floatstr(contenido);
					cache_get_field_content(i, "gyy", contenido);CasaInfo[i][cgyy] = floatstr(contenido);
					cache_get_field_content(i, "gzz", contenido);CasaInfo[i][cgzz] = floatstr(contenido);
					cache_get_field_content(i, "gInterior", contenido);CasaInfo[i][cgInterior] = strval(contenido);
					cache_get_field_content(i, "gVw", contenido);CasaInfo[i][cgVw] = strval(contenido);
					cache_get_field_content(i, "gCerrado", contenido);CasaInfo[i][cgCerrado] = strval(contenido);
					cache_get_field_content(i, "Garage", contenido);CasaInfo[i][cGarage] = strval(contenido);
        			cache_get_field_content(i, "Dinero", contenido);CasaInfo[i][cDinero] = strval(contenido);
        			cache_get_field_content(i, "Precio", contenido);CasaInfo[i][cPrecio] = strval(contenido);
        			cache_get_field_content(i, "Interior", contenido);CasaInfo[i][cInterior] = strval(contenido);
        			cache_get_field_content(i, "Vw", contenido);CasaInfo[i][cVw] = strval(contenido);
        			for(new a; a < 5; a++)
        			{
        		    	new str[9];
        		    	format(str, sizeof(str), "ArmID%0", a);
        		    	cache_get_field_content(i, str, contenido);
        		    	CasaInfo[i][cArmID][a] = strval(contenido);
					}
					for(new b; b < 5; b++)
					{
						new str[15];
						format(str, sizeof(str), "ArmCantidad%d", b);
                    	cache_get_field_content(i, str, contenido);
						CasaInfo[i][cArmCantidad][b] = strval(contenido);
        			}
        			for(new c; c < 5; c++)
        			{
        		    	new str[10];
        		    	format(str, sizeof(str), "ArmTipo%d", c);
						cache_get_field_content(i, str, contenido);
						CasaInfo[i][cArmTipo][c] = strval(contenido);
					}
        			cache_get_field_content(i, "Arm", contenido);CasaInfo[i][cArm] = strval(contenido);
       				cache_get_field_content(i, "Cerrada", contenido);CasaInfo[i][cCerrada] = strval(contenido);
                    cache_get_field_content(i, "Comprador", CasaInfo[i][cComprador]);
        			cache_get_field_content(i, "Descripcion", CasaInfo[i][cDescripcion]);
        			cache_get_field_content(i, "Alquiler", contenido);CasaInfo[i][cAlquiler] = strval(contenido);
        			cache_get_field_content(i, "PrecioAlquiler", contenido);CasaInfo[i][cPrecioAlquiler] = strval(contenido);
       		 		cache_get_field_content(i, "Alquilados", contenido);CasaInfo[i][cAlquilados] = strval(contenido);
        			cache_get_field_content(i, "Comprada", contenido);CasaInfo[i][cComprada] = strval(contenido);
        			cache_get_field_content(i, "CajaFuerte", contenido);CasaInfo[i][cCajaFuerte] = strval(contenido);
        			cache_get_field_content(i, "Alarma", contenido);CasaInfo[i][cAlarma] = strval(contenido);
        			cache_get_field_content(i, "Puerta", contenido);CasaInfo[i][cPuerta] = strval(contenido);
        			cache_get_field_content(i, "Direccion", CasaInfo[i][cDirec]);

					CasaInfo[i][cPickup] = CreateDynamicPickup(1273, 1, CasaInfo[i][cx], CasaInfo[i][cy], CasaInfo[i][cz]);
	                CasaInfo[i][cLabel] = CreateDynamic3DTextLabel("", 0x00B50093, CasaInfo[i][cx], CasaInfo[i][cy], CasaInfo[i][cz]+0.5,5.0);
	                CasaInfo[i][cgPickup] = CreateDynamicPickup(1239, 1, CasaInfo[i][cgx], CasaInfo[i][cgy], CasaInfo[i][cgz]);
	                CasaInfo[i][cgLabel] = CreateDynamic3DTextLabel("", 0x006BBB95, CasaInfo[i][cgx], CasaInfo[i][cgy], CasaInfo[i][cgz]+0.5, 5.0);
                    UpdateHouseLabel(i);
                    TotalCasas = rows;

                print( " \n|---- SISTEMA DE CASAS ----|");
				printf(" Casas cargadas: %d (MAX: %d)",rows,MAX_CASAS);
			}else if(!rows)
			{
				print(" \n|---- SISTEMA DE CASAS ----|\n No hay casas para cargar.");
			}
		}
No se si estoy implementando alguna funciуn mal en el cargado, pero todo carga bien menos los string con (%s), actualmente estoy usando MySQL R38 de BlueG.
Reply
#2

їQuй te sale al printearlo? їHas aсadido array de lenght a cDirec en el enum?
Reply
#3

Como dije carga bien todo menos eso, y sн agregue el array al lenght del enum cDirec[128], El problema es en el label que no muestra la informaciуn del cDirec, lo deja en blanco como si no leyera, lo mismo pasa con el de dueсo que es cComprador[MAX_PLAYERNAME], por lo que veo lo que no carga son los arrays con letras. Vuelvo y repito esto solo pasa al Cargar el server, Mienstras yo creo una nueva casa el label lee todo correctamente por eso dedusco que el problema es al cargar, osea al cerrar y abrir nuevamente la consola.
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)