SA-MP Forums Archive
MySQL query y format... - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Español/Spanish (https://sampforum.blast.hk/forumdisplay.php?fid=29)
+---- Thread: MySQL query y format... (/showthread.php?tid=633694)



MySQL: їCуdigo inъtil?, "format"y "mysql_query" - ByMatt20030 - 05.05.2017

їEs normal que este cуdigo no haga absolutamente NADA?(No modifica nada en la base de datos)

Код:
		new tmp[2048];
		format(tmp, sizeof(tmp), "UPDATE usuarios SET pContrasena = '%d',\
		pPosX = '%f',\
		pPosY = '%f',\
		pPosZ = '%f',\
		pMySQLID = '%d',\
		pVirtualWorld = '%d',\
		pInterior = '%d',\
		pVida = '%f',\
		pChaleco = '%f',\
		pDinero = '%d',\
		pSkin = '%d',\
		pFAngle = '%f',\
		pAdminZC = '%d',\
		pEstiloHablar = '%d',\
		pAcento = '%d',\
		WHERE pNombre = '%q'",
		Info[playerid][pContrasena],
		Info[playerid][pPosicion][0],
		Info[playerid][pPosicion][1],
		Info[playerid][pPosicion][2],
		Info[playerid][pMySQLID],
		Info[playerid][pVirtualWorld],
		Info[playerid][pInterior],
		Info[playerid][pVida],
		Info[playerid][pChaleco],
		Info[playerid][pDinero],
		Info[playerid][pSkin],
		Info[playerid][pFAngle],
		Info[playerid][pAdminZC],
		Info[playerid][pEstiloHablar],
		Info[playerid][pAcento],
		GetPlayerNameEx(playerid));
		mysql_query(handle, tmp);
Probй sacando todo y dejando solo ""UPDATE usuarios SET pVida = '%f' WHERE pNombre = %s" y todo el format en una misma linea, y si funciono..їpero porque de esta forma no?. No me tira ningъn error.


Respuesta: MySQL query y format... - mcreed - 06.05.2017

Antes del WHERE no puede aver una coma (,) ya que es interpretado como error de sintaxis.


Re: Respuesta: MySQL query y format... - ByMatt20030 - 06.05.2017

Quote:
Originally Posted by mcreed
Посмотреть сообщение
Antes del WHERE no puede aver una coma (,) ya que es interpretado como error de sintaxis.
No lo habнa notado, y eso que lo revise varias veces...

Gracias


Re: MySQL query y format... - ByMatt20030 - 06.05.2017

Sigue pasando.

Lo toque un poco a ver si milagrosamente andaba, pero nada de nada. Dejo el callback entero que uso con el cуdigo que me genera problemas:
Код:
funcion GuardarDatosMYSQL(playerid)
{
    if(IsPlayerLogged[playerid] == true)
    {
   		GetPlayerHealth(playerid,Info[playerid][pVida]);
    	GetPlayerArmour(playerid,Info[playerid][pChaleco]);
        if(GetPlayerState(playerid) != PLAYER_STATE_SPECTATING)
        {
            GetPlayerPos(playerid,Info[playerid][pPosicion][0],Info[playerid][pPosicion][1],Info[playerid][pPosicion][2]);
            GetPlayerFacingAngle(playerid, Info[playerid][pFAngle]);
            Info[playerid][pInterior] = GetPlayerInterior(playerid);
        	Info[playerid][pVirtualWorld] = GetPlayerVirtualWorld(playerid);
        }
        Info[playerid][pDinero] = GetPlayerCash(playerid);
		new tmp[2048];
		mysql_format(handle, tmp, sizeof(tmp),
		"UPDATE 'usuarios'\
	 	SET \
		`pContrasena` = '%d',\
		`pPosX` = '%f',\
	        `pPosY` = '%f',\
		`pPosZ` = '%f',\
	        `pMySQLID` = '%d',\
		`pVirtualWorld` = '%d',\
		`pInterior` = '%d',\
		`pVida` = '%f',\
		`pChaleco` = '%f',\
		`pDinero` = '%d',\
		`pSkin` = '%d',\
		`pFAngle` = '%f',\
		`pAdminZC` = '%d',\
		`pNacimiento` = '%s',\
		`pEstiloHablar` = '%d',\
		`pAcento` = '%d'\
		WHERE `pNombre` COLLATE latin1_general_cs = '%q'",
		Info[playerid][pContrasena],
		Info[playerid][pPosicion][0],
		Info[playerid][pPosicion][1],
		Info[playerid][pPosicion][2],
		Info[playerid][pMySQLID],
		Info[playerid][pVirtualWorld],
		Info[playerid][pInterior],
		Info[playerid][pVida],
		Info[playerid][pChaleco],
		Info[playerid][pDinero],
		Info[playerid][pSkin],
		Info[playerid][pFAngle],
		Info[playerid][pAdminZC],
		Info[playerid][pNacimiento],
		Info[playerid][pEstiloHablar],
		Info[playerid][pAcento],
		GetPlayerNameEx(playerid));
		mysql_query(handle, tmp);
		printf("Cuenta de %s guardada correctamente", GetPlayerNameEx(playerid));

    }
   	return 1;
}
Dato:
Ya lo probe en comandos, OnPlayerDisconnect, y en todos los malditos lados. Simplemente, no se modifica nada de la DB..
El printf si es ejecutado.


Respuesta: MySQL query y format... - aoEXE - 06.05.2017

y si revisas el mysql_log y te ahorras la quema de neuronas?


Re: Respuesta: MySQL query y format... - ByMatt20030 - 06.05.2017

Quote:
Originally Posted by aoEXE
Посмотреть сообщение
y si revisas el mysql_log y te ahorras la quema de neuronas?
Ya se me acabaron hace varios dнas cuando metн el plugin a mi PC


No hay nada fuera de lo normal en mysql_log.
Asн a lo random supongo que es cosa de como esta escrito el texto...porque sigo sin entender como me anda cuando pongo el format en una ъnica linea, y no en varias(con sus respectivos sнmbolos de seguimiento y demбs)
Ya probй hasta usando strcat por cada fila de la DB, y es lo mismo que la nada.


Respuesta: MySQL query y format... - mcreed - 07.05.2017

Por quй para el nombre de la tabla utilizas comillas normales (') en vez de las otras (`) ?


Re: Respuesta: MySQL query y format... - ByMatt20030 - 07.05.2017

Quote:
Originally Posted by mcreed
Посмотреть сообщение
Por quй para el nombre de la tabla utilizas comillas normales (') en vez de las otras (`) ?
Oops


Ahora si funciona, gracias jej.