[Ayuda] Cargar archivos con el plugin FileManager
#1

Buenas, tengo una duda con el plugin FileManager, y esque quiero que al loguearte compruebe la contraseсa, es decir,
lea la que hay en el archivo y la compare con la que has escrito.
Mi cуdigo es йste, pero me da un error:
pawn Код:
new pName[24], pass[24];
GetPlayerName(playerid, pName, sizeof(pName));
format(file1, sizeof(file1), "scriptfiles/Accounts/%s", pName);
file_read(file1,"Password", pass);
/*(lнnea 99)*/if(strcmp(inputtext, pass) == 0)
{
//....
}
Y йste es el error:
Код:
(99) : error 035: argument type mismatch (argument 3)
Gracias de antemano
Reply
#2

Un segundo, creo que el error no estб en esa linea sino en la anterior:
pawn Код:
file_read(file1, "Password", pass);
Deberнa ser:
pawn Код:
file_read(file1, pass, sizeof(pass));
Por cierto, en ese archivo sуlo estбs guardando la contraseсa? Si es asн, dos datos:
  • Si es asн pasar al segundo paso, sino usar un sistema como Y_ini o DJson especiales para archivos que guardan varias cosas, como contraseсas, nombres de usuarios y niveles, todos a la misma vez en un archivo.
  • Necesitarбs especificar si estбs comprobando mayъsculas y el tamaсo de la contraseсa, ya que strcmp compara tambiйn los carбcteres "\r\n" que normalmente estбn en los archivos:
    pawn Код:
    if(strcmp(inputtext, pass, false, strlen(inputtext)) == 0)
  • Por ъltimo, no es recomendable tener la contraseсas, sino algъn encriptado de ESAS contraseсas. Puedes usar md5, Whirlpool (recomendado) o SHA512 para eso. Bъscalos en el foro y encontrarбs bastante informaciуn.
Reply
#3

Muchнsimas gracias Miguel, una cosa mбs.
No entiendo cуmo va a leer la contraseсa con esto:
pawn Код:
file_read(file1, pass, sizeof(pass));
En el archivo guardo mбs de un dato, quizб no este utilizando el sistema adecuado.. Pero necesito el plugin FileManager para que cree carpetas con el nombre de usuario.
La verdad esque no me vendrнa mal una guнa sobre optimizaciуn y sobre quй funciones usar...

Gracias de nuevo
Reply
#4

No hay problema. Tъ lo has dicho, estбs usando el sistema equivocado debido a dos cosas:
  • Las funciones que estбs usando del plugin FileManager ya las tiene SA-MP incluidas; este plugin es ъtil cuando quieres gestionar archivos fuera de la carpeta "scriptfiles". Esto significas que no necesitas el plugin.
  • El plugin FileManager no es el mejor al crear archivos con varios datos, ya que lee todo el contenido de un archivo y dirйctamente lo descarga en una cadena, en tu caso "pass".
Para lo que quieres puedes usar DJson o y_ini los cuales son muy buenos sistemas para crear cuentas de usuarios, aparte de ser mбs rбpidos que los mйtodos convencionales.

Aquн unos enlaces: Lamentбblemente no hay una guнa en espaсol pero me has dado una gran idea, pronto tratare de hacer una.
Reply
#5

Muchas gracias, pero una ъltima pregunta :P
Con estos sistemas es posible hacer que creen las carpetas con el nombre de usuario o las tendrнa que crear yo manualmente? Por eso me interesaba el plugin FileManager..

En el caso que йstos sistemas no puedan crear carpetas, podrнa seguir usando el FileManager sуlo para crear las carpetas? o serнa aъn mas lento?

Un Saludo.
Reply
#6

Quote:
Originally Posted by luis_lpv_22
Посмотреть сообщение
Muchas gracias, pero una ъltima pregunta :P
Con estos sistemas es posible hacer que creen las carpetas con el nombre de usuario o las tendrнa que crear yo manualmente? Por eso me interesaba el plugin FileManager..

En el caso que йstos sistemas no puedan crear carpetas, podrнa seguir usando el FileManager sуlo para crear las carpetas? o serнa aъn mas lento?

Un Saludo.
podes crearlas con el plugin y usar el sistema. no son incompatibles.
Reply
#7

De acuerdo, entonces Y_ini no puede crear carpetas, no?

EDIT: Acaban de aсadir un nuevo sistema:
https://sampforum.blast.hk/showthread.php?tid=214660
Me harнais un favor si le echarais un vistazo y me recomendбrais йste o Y_ini.

Muchas gracias
Reply
#8

Reбlmente no te puedo decir cual es mejor porque no los he probado, pero a mi personбlmente me gustan los trabajos de ****** por lo que YO usarнa Y_ini.
Reply
#9

Muchas gracias por tu ayuda Miguel, usarй Y_ini

Un Saludo
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)