Visitas
Contador Gratis
Conectarse

Recuperar mi contraseña

Últimos temas
» Nuevo Servidor wotlk progresivo: Utgarde blizzlike 3.3.5a
Lun Nov 14, 2016 3:41 pm por ragnarosxd

» WoW server ragnaros 3.3.5a high reates
Miér Jun 24, 2015 11:12 pm por ragnarosxd

» WoW server ragnaros 3.3.5a high reates
Miér Jun 24, 2015 11:11 pm por ragnarosxd

» Traducciones WhyDB
Vie Mayo 02, 2014 10:54 pm por tubafonos

» realmlist
Jue Ago 29, 2013 5:36 pm por locoiii

» cual es el realmist????
Mar Mayo 14, 2013 3:15 am por bosz

» Presentacion
Lun Abr 01, 2013 6:40 am por danigraful

» holaa me podeis ayudarr
Dom Mar 31, 2013 5:34 pm por alejandro9696

» WOWPlus - Excelente Servidor WoW 3.3.5 a (WOTLK)
Miér Mar 27, 2013 2:33 am por Galawowplus

GratisWoWTodo Sobre Servidores WoW

Creación de una web de cuentas para ArcEmu (Solo la parte de programación, no el diseño).

Ver el tema anterior Ver el tema siguiente Ir abajo

Creación de una web de cuentas para ArcEmu (Solo la parte de programación, no el diseño).

Mensaje por Ariath el Lun Feb 23, 2009 9:09 pm

Bueno, dado que he visto que suele haber mucha gente que pregunta como se puede hacer una web de cuentas, me he decidido ha hacer este aporte.

Una web de cuentas, se compone de una parte de HTML y otra de PHP.

La parte HTML es la que tiene el formulario que se vé en cualquier página de este tipo, y la parte de PHP, es a la que llama la web cuando se envia el formulario. Ésta parte (la PHP), no hace más que establecer una conexión con un servidor MySQL (cuyos datos se le proporcionan) y luego ejecuta una consulta SQL usando los datos que hemos introducido en el formulario de la web.

Tal y como dice el título, esto es solamente para mostrar la parte de programación, puesto que cualquiera puede cogerse Dreamweaver u otro similar y hacerse un simple formulario y diseñar la web.

La web de compondría de 3 archivos: MySQL.php, CreaCuenta.php y Cuentas.html.

En la de Cuentas, iría el formulario web, y la de CreaCuentas, sería la que realizaría la conexión al servidor MySQL (con el código de MySQL.php) y realizaría la consulta para crear la cuenta.


MySQL.php
-----------------
Código:

<?php
$UsuarioMySQL = "usuario";
$PasswordMySQL = "password";
$HostMySQL = "localhost";

function MySQLConnect()
{
 global $UsuarioMySQL, $PasswordMySQL, $HostMySQL;
 $Conexion_MySQL = mysql_connect($MySQL_Host/*.':'.$sockpath*,$MySQL_User,$MySQL_Password);

 if($Conexion_MySQL == null){
  die("Error de conexion a la base de datos." . " MySQL Error no: " . mysql_errno() . " Error: " . mysql_error());
 }

 return $Conexion_MySQL;
}

CreaCuentas.php
-------------------------
Código:

<?php
   include "MySQL.php";
   
   $LogonDB = "base de datos logon";
   
   $Usuario = $_GET['usuario'];
   $Password = $_GET['password'];
   $Email = $_GET['email'];
   $Expansion = $_GET['flags'];
   
    $Conexion = MySQLConnect();
 
   if(mysql_ping($Conexion)){
        mysql_select_db($LogonDB,$Conexion);
        
      $ComprobarSiExisteCuenta = "SELECT login FROM accounts WHERE login='.$Usuario.'";
      $ResultadoConsulta = mysql_query($ComprobarSiExisteCuenta, $Conexion);
        
      $row = mysql_fetch_array($ResultadoConsulta);

        if($Usuario == $row['login']){
           echo "La cuenta ".$Usuario." ya existe.";
        }else{
           $CuentaACrear =  "INSERT INTO accounts (login,password,email,flags,forceLanguage) VALUES ('".$Usuario."','".$Password."','".$email."',".$Expansion.",'esES');";
           
           $ResultadoConsulta = mysql_query($CuentaACrear, $Conexion);
           echo "La cuenta ".$Usuario." ha sido creada correctamente.";
      }

                mysql_close($Conexion);
  }
?>

Cuentas.html
---------------
Código:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">

   <head>
      <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
      <meta name="author" content="jkintero" />
   
      <title>Creación de cuentas</title>
   </head>

   <body>
      <form target="CreaCuentas.php" method="GET">
         <table border="thin">
            <tr>
               <th colspan="2">Datos de la cuenta</th>
            </tr>
            <tr>
               <td>Usuario:</td><td><input type="text" name="usuario"/></td>
            </tr>
            <tr>
               <td>Password:</td><td><input type="text" name="password"/></td>
            </tr>
            <tr>
               <td>Email:</td><td><input type="text" name="email"/></td>
            </tr>
            <tr>
               <th colspan="2">Tipo de cuenta</th>
            </tr>
            <tr>
               <td>The Burning Crusade</td><td align="center"><input type="radio" name="flags" value="8"/></td>
            </tr>
            <tr>
               <td>Wrath of the Lich King</td><td align="center"><input type="radio" name="flags" value="8"/></td>
            </tr>
            <tr>
               <td colspan="2"><input type="submit" value="Crear cuenta"/></td>
            </tr>
         </table>
      </form>
   </body>
</html>

Esa es la muestra de como se haría la cosa, ahora vamos a entender como funciona todo. Solo voy a explicar el funcionamiento general, cualquiera que quiera saber que significan las ordenes en PHP o similar, a cogerse un manual Razz .

La idea es la siguiente, nosotros entramos en nuestra página Cuentas.html, la cual posee un formulario donde se nos va a pedir diversa información (usuario, password, email y el tipo de cuenta a crear).

Cada campo del formulario, tiene asignado un nombre "name", el cual nos va a permitir enviar el contenido del formulario a la pagina PHP CreaCuentas.

En el momento en que pulsemos el botón de crear la cuenta, la información que hemos introducido en el formulario, se va a enviar a la página PHP CreaCuentas.

Cabe destacar, que hay 2 modos de enviar información a una página PHP: GET y POST (los llamados "methods").

Basicamente se diferencian en 2 cosas, la primera es la cantidad de información que pueden enviar (GET puede enviar muchos menos caracteres de información que POST, POST es, creo, ilimitado a ese respecto), y la segunda es que, mientras que por POST, no vemos los datos que estamos enviando, si enviamos por GET si los veremos, porque GET envía los datos usando la propia barra de direcciones (supongo que, cuando haceis una búsqueda en WoWHead por ejemplo, os habreis fijado que suele aparecer una URL parecida a esta: es.wowhead.com?item=ID .

Pues este es un ejemplo de envío por GET, ahi vemos claramente el dato que se está enviando (item) y su valor (ID).

Cuando creamos un formulario, si vamos a enviar esa información a una web PHP, debemos indicar SIEMPRE el método usado en la propia etiqueta del <form>, y una vez hecho esto, ya podemos recibir en nuestra página PHP la información.

En la página CreaCuentas, como en este caso hemos usado el método GET, tenemos que recogerlo usando el mismo sistema (todo lo que una página PHP recibe por GET, lo almacena en una variable llamada $_GET['nombre_del_campo'], donde "nombre_del_campo", tiene que ser IGUAL al nombre "name" que tiene el campo del formulario que contiene la información que queremos recoger aquí).

Bien, una vez que hemos recogido toda la información necesaria, necesitamos establecer una conexión con MySQL.
La función MySQLConnect, es una función contenida en el archivo MySQL.php, y es la que nos va a crear la conexión (para que esto sea posible, necesitamos editar el MySQL.php con los datos de nuestro servidor).

Ya lo que sigue es sencillo, solamente tenemos que usar la función de PHP llamada mysql_query, para realizar consultas al servidor MySQL.

Para crear bien una cuenta, tenemos que hacer 2 consultas: La primera, se hace para comprobar que no exista en la base de datos ya un usuario con el mismo nombre que tiene el usuario nuevo que queremos crear.

La segunda, es la más importante, es una consulta del tipo INSERT, que lo que va a hacer es , con la información que le hemos pasado a la página PHP del formulario de Cuentas, crear la nueva cuenta del juego.

Y ya está, ¿simple eh? xD.

Bueno, pues con estas bases, ya podeis crear vuestras propias webs de cuentas para ArcEmu.

Salu2

P.D: Un aviso, no recuerdo exactamente cual era la flag para usar la expansión WOTLK, creo que era la 16. Si al crear cuentas con la opción de WOTLK, no tuvieseis acceso a dicho contenido, solo hay que cambiar el "value" del campo de WOTLK.


Última edición por Ariath el Jue Sep 17, 2009 2:41 pm, editado 5 veces

_________________
NO contestaré a ningún tipo de email o MP (mensaje privado) referente a dudas o problemas con servidores.

El FORO está para algo.

Cualquier cosa que reciba de esa índole, se la comerá la papelera.

Gracias

Ariath
Admin

Cantidad de envíos : 747
Oro : 5060
Reputación : 531
Fecha de inscripción : 23/01/2009

Ver perfil de usuario http://wow-realm.forosactivos.net

Volver arriba Ir abajo

Re: Creación de una web de cuentas para ArcEmu (Solo la parte de programación, no el diseño).

Mensaje por Andrev el Sáb Sep 05, 2009 8:15 am

Que buen aporte, muchas gracias...

Lo que quiero saber es como uno la pagina "Cuentas.html" con los otros archivos.. Muchas gracias.

Andrev
Novato

Cantidad de envíos : 4
Oro : 40
Reputación : 0
Fecha de inscripción : 05/09/2009

Ver perfil de usuario

Volver arriba Ir abajo

Re: Creación de una web de cuentas para ArcEmu (Solo la parte de programación, no el diseño).

Mensaje por fran018 el Dom Sep 06, 2009 4:54 am

quiero sabes si esta parte de programacion tmb funciona para Mangos y no solo para arcemu. gracias

fran018
Novato

Cantidad de envíos : 11
Oro : 440
Reputación : 0
Fecha de inscripción : 06/09/2009

Ver perfil de usuario

Volver arriba Ir abajo

Re: Creación de una web de cuentas para ArcEmu (Solo la parte de programación, no el diseño).

Mensaje por Andrev el Lun Sep 07, 2009 5:20 pm

Bueno... Veo que van varios días y no respondes... Con todo respeto, mira lo que escribiste.

"NO contestaré a ningún tipo de email o MP (mensaje privado) referente a dudas o problemas con servidores.

El FORO está para algo.

Cualquier cosa que reciba de esa índole, se la comerá la papelera."

Andrev
Novato

Cantidad de envíos : 4
Oro : 40
Reputación : 0
Fecha de inscripción : 05/09/2009

Ver perfil de usuario

Volver arriba Ir abajo

Re: Creación de una web de cuentas para ArcEmu (Solo la parte de programación, no el diseño).

Mensaje por Ariath el Lun Sep 07, 2009 6:14 pm

Chicos a ver, no respondo estos días porque estoy ocupado con otras cosas, sino lo haría ... ¬¬ .

No se vosotros, pero yo ahora mismo estoy trabajando en el traductor de las bases de datos en VB que dije por ahi que iba a probar a desarrollar, y aparte estoy estudiando para un examen que tengo este Viernes en la facultad.

También suelo jugar en un servidor privado aparte de otras cosas que no tienen que ver con la Informática, y de hecho el juego lo tengo ahora mismo bastante abandonado por falta de tiempo.

Los HTMLs no se "unen" a ningún archivo, cuando haces una web compuesta de varias cosas (JavaScript, PHP, etc ...) todos los archivos los puedes poner en el mismo sitio, o en carpetas separadas, siempre indicando luego donde están las cosas a la hora de programar.

Y bueno, la web esta ya tengo en el título que es para ArcEmu, sino fuera así, habría puesto otra cosa Wink .

Hacer una web para MaNGOS es facil tambien, solo hay que cambiar algunas cosas de la parte de PHP.

Bueno, el proyecto este, ahora cuando vaya finalizando esta semana, trataré de completarlo. Perdón por dejalo incompleto, pero entre unas cosas y otras se me olvidó por completo Sad .

Salu2

_________________
NO contestaré a ningún tipo de email o MP (mensaje privado) referente a dudas o problemas con servidores.

El FORO está para algo.

Cualquier cosa que reciba de esa índole, se la comerá la papelera.

Gracias

Ariath
Admin

Cantidad de envíos : 747
Oro : 5060
Reputación : 531
Fecha de inscripción : 23/01/2009

Ver perfil de usuario http://wow-realm.forosactivos.net

Volver arriba Ir abajo

Re: Creación de una web de cuentas para ArcEmu (Solo la parte de programación, no el diseño).

Mensaje por fran018 el Lun Sep 07, 2009 6:57 pm

dale viejo no hay problema cuando vos tengas tiempo lo haces... tmb tenes tu vida jjeje XD

cuidate y suertte en esos examenes

fran018
Novato

Cantidad de envíos : 11
Oro : 440
Reputación : 0
Fecha de inscripción : 06/09/2009

Ver perfil de usuario

Volver arriba Ir abajo

Re: Creación de una web de cuentas para ArcEmu (Solo la parte de programación, no el diseño).

Mensaje por Andrev el Mar Sep 08, 2009 8:16 am

Claro, muchas gracias por todo.

Espero a que lo termines para verlo bien.

Saludos.

Andrev
Novato

Cantidad de envíos : 4
Oro : 40
Reputación : 0
Fecha de inscripción : 05/09/2009

Ver perfil de usuario

Volver arriba Ir abajo

Re: Creación de una web de cuentas para ArcEmu (Solo la parte de programación, no el diseño).

Mensaje por Ariath el Jue Sep 17, 2009 2:30 pm

Bueno, pues esto ya está terminado xD.

Perdonad los retrasos, pero entre unas cosas y otras, nunca me acordaba de esto.

El código de la web Cuentas.html, ya tiene un formulario con una tabla para que probeis si funciona la cosa.

Aunque todo esto es muy básico, todo se trata de partir de esta base y hacer uno mismo sus páginas elaboradas.

Salu2

_________________
NO contestaré a ningún tipo de email o MP (mensaje privado) referente a dudas o problemas con servidores.

El FORO está para algo.

Cualquier cosa que reciba de esa índole, se la comerá la papelera.

Gracias

Ariath
Admin

Cantidad de envíos : 747
Oro : 5060
Reputación : 531
Fecha de inscripción : 23/01/2009

Ver perfil de usuario http://wow-realm.forosactivos.net

Volver arriba Ir abajo

Re: Creación de una web de cuentas para ArcEmu (Solo la parte de programación, no el diseño).

Mensaje por Contenido patrocinado Hoy a las 10:24 pm


Contenido patrocinado


Volver arriba Ir abajo

Ver el tema anterior Ver el tema siguiente Volver arriba

- Temas similares

 
Permisos de este foro:
No puedes responder a temas en este foro.