Ayuda MYSQL -
Fagrinht - 02.08.2014
Buenas, quiero que cuando uno escriba en el dialog "Masculino/Femenino" se te guarde en "usuarios" de la DB de MYSQL como lo hace con la contraseсa, pero no se guarda, asн tengo lo de CASE SEXO
Quote:
case SEXO:
{
if(!response)
{
new query[200];
PlayerInfo[playerid][pSexo] = 2;
format(query, 200, "UPDATE `usuarios` SET `Skin`='11',`Sexo`='Femenino' WHERE `Nombre`='%s'",PlayerInfo[playerid][pSexo],pName);
mysql_function_query(Conecction, query, true, "OnQueryFinish", "ii", 0, playerid);
}
|
y Tambiйn estб el de hombre pero no creo que sea necesario ponerlo, la estructura de "Sexo" en usuarios de la DB estб
y no se guarda, sale asн en blanco:

Respuesta: Ayuda MYSQL -
Whyd - 02.08.2014
No estбs dando valor al skin para guardarlo, intenta
pawn Код:
format(query, 200, "UPDATE `usuarios` SET `Skin`= '11',`Sexo`=%d WHERE `Nombre`='%s'",PlayerInfo[playerid][pSexo],pName);
Respuesta: Ayuda MYSQL -
Zume - 02.08.2014
Estбs usando muy mal el mysql, te recomendarнa que te basaras un poco del cуdigo del gamemode que se publicу en el tуpico de mysql r7 (
https://github.com/alejandro-gc/base...ster/mysql.pwn), el UPDATE tengo entendido que vendrнa un poco lento y usarlo asн es un desperdicio. me gustarнa ver OnQueryFinish
Respuesta: Ayuda MYSQL -
Fagrinht - 02.08.2014
Quote:
Originally Posted by hydewhyd
No estбs dando valor al skin para guardarlo, intenta
pawn Код:
format(query, 200, "UPDATE `usuarios` SET `Skin`= '11',`Sexo`=%d WHERE `Nombre`='%s'",PlayerInfo[playerid][pSexo],pName);
|
Osea no me interesa el guardado de skin, eso estб bien ya, el problema es que quiero que cuando un usuario escriba por ejemplo en el dialogo "Masculino o Femenino" spawn con el skin correspondiente de ese sexo(en el caso hombre es 299 y mujer 11) y te salga en la DB Usuarios "1 = Hombre - 2 = Femenino" o que simplemente diga Hombre - Femenino.
Re: Ayuda MYSQL -
Noliax8 - 02.08.2014
PHP код:
UPDATE `usuarios` SET `Skin` = 11, `Sexo` = 'Femenino' WHERE `Nombre` = '%s'
No utilice texto para el sexo. Utilizando
0 Masculino y
Femenino 1 (por ejemplo)
Lo siento no hablo espaсol.
Usos
utf8_general_ci (
Cotejamiento)
Re: Ayuda MYSQL -
chusothe41 - 02.08.2014
Quote:
Originally Posted by Noliax8
PHP код:
UPDATE `usuarios` SET `Skin` = 11, `Sexo` = 'Femenino' WHERE `Nombre` = '%s'
No utilice texto para el sexo. Utilizando 0 Masculino y Femenino 1 (por ejemplo)
Lo siento no hablo espaсol.
Usos utf8_general_ci ( Cotejamiento)
|
Es cierto mejor boolealo
Re: Ayuda MYSQL -
Noliax8 - 02.08.2014
pawn Код:
enum
{
// ...
pSexo,
// ...
}
new PlayerInfo[....];
ShowSexe(playerid)
{
new name[10];
if(PlayerInfo[playerid][pSexo]) format(name, 10, "Male");
else format(name, 10, "Female");
return name;
}
/*
new tmp[156];
format(tmp, sizeof tmp, "Sexe: %s", ShowSexe(playerid));
SendClientMessage(playerid, -1, tmp);
*/
UPDATE `usuarios` SET `Skin` = 11, `Sexo` = %d WHERE `Nombre` = '%s'
EDIT: Sexo (MySQL) debe ser
Int
Good luck.
Jonas
Respuesta: Ayuda MYSQL -
Nicolas_Castillo - 02.08.2014
Tienes la consulta mal echa:
pawn Код:
format(query, 200, "UPDATE `usuarios` SET `Skin`='11',`Sexo`='Femenino' WHERE `Nombre`='%s'",pName);
Respuesta: Ayuda MYSQL -
Whyd - 02.08.2014
Intenta con el cуdigo de Noliax8, parece estar bien a lo que dices
Respuesta: Ayuda MYSQL -
Juance - 03.08.2014
Yo tambiйn habнa intentado updatear una tabla obteniendo el nombre del jugador pero no habнa caso, entonces usй el SQLID del jugador y ahн es entonces donde se ejecutу.
Yo tengo PlayerInfo[playerid][pSQLID] para darle la id autoincrementable de las tablas a los jugadores, entonces ahн puedo detectar.
pawn Код:
new rows, fields;
cache_get_data(rows, fields);
if(rows > 0) PlayerInfo[playerid][pSQLID] = cache_get_field_content_int(0, "id");
else PlayerInfo[playerid][pSQLID] = 0;
Lo hago en una callback llamada UnJugadorCheckeandoRegistro y eso lo llamo con un "query" al conectar el jugador, anteriormente selecciono el ID donde el Nombre es el name del jugador IG.