En el capítulo anterior dejamos pendiente la explicació de como funcionaban algunos módulos, este tutorial es un complementeo del anterior ya que si lo hacía todo en uno quedaba muy pesado tanto para ustedes que tienen que leerlo como yo que tengo que redactarlo.
Sin más preámbulos vallamos a terminar lo que empezamos.
Si mal no recuerdo faltaba la explicación de como funcionaban 3 archivos .php todo lo que explico en este tutorial les sirve para cualquier página web ya que estamos trabajando con tipos de estructuras o lenguajes universales.
1)Veamos el archivo reguser.php, para esto abrimos el archivo con el Dreamveawer y utilizamos la opción DIVIDIR (recuerden que esto nos permite visualizar en forma gráfica y programable un archivo)
Reguser.php no es más que un formulario de subscripción cada celda tiene un nombre y esta dado de este orden:
Login , Name , Password , Re-Password , E-mail , ID Number , Secret Question , Secret Answer
Pero estos nombres a su ves contienen una variable que serán enviadas a otro archivo.php juntos a los datos que ingresamos en esas celdas.
¿Cómo saber a que archivo se enviarán estas variables?
La linea que nos define esto es la siguiente:
FORM method=post name=regform action=idreg.php
Esta línea con este tipo de características nos indica que el archivo reguser.php enviará un conjunto de variables (ya veremos cuales son) al archivo idreg.php.
Esta linea se encuentra antes de comenzar la parte gráfica ya que es necesario indicar a donde se enviarán estos datos para ser PROCESADOS Y/O ANALIZADOS.
2)Si prestan atención a la imagen anterior yo marqué dos cosas , una es la linea mencionada anteriormente que determina a donde se envian estos datos pero debajo marqué otra linea input
name="login" type="text" id="login" maxlength="10"
Quiero que vean la imagen y miren un detalle importanten : " LOS COLORES " , dreamveawer no es un programa común y corriente , es un herramienta de tipo profesional usada por la mayoría de los M.W (Master Web o Web Master)
Retomemos lo anterior en ambos cosos ambas lineas esta marcadas con color NARANJA (y no lo hice yo, esto es un screanshot original )
¿Por qué creen ustedes que están marcadas con el mismo color?
La respuesta es muy simple, input name = "login" pertenece a la primera variable (.php) a enviar, en este caso corresponde a la celda LOGIN
Veamos la siguiente foto:
3)Cuidado, no confundan el nombre de la variable con el nombre de la celda , en este caso y creo que utilizé un mal ejemplo coincide ambos nombres pero no siempre es así.
El nombre de la celda está antes (hacemos un click en la parte gráfica donde dice Login y el el programa nos llevará directamente a donde se encuentra en el código)
En la siguiente imagen pondré un ejemplo para que se saquen la duda.
En esta imagen marqué otro detalle, tal vez esto no es impresindible saberlo pero ya que estamos aprendiendo no nos viene nada mal.
Yo marqué con un circulo una linea que dice "maxlength=10" pero ¿Qué significa eso? Eso nos quiere decir que como máximo podemos tipiar o escribir en esa celda LOGIN hasta 10 caracteres. Por eso el circulo de abajo traducido al español nos dice " De 4 a 10 letras ".
A continuación dejo una imagen para que vean lo que mencionamos anteriormente que no siempre coincide el nombre de la variable con el nombre de la celda.
4)Fijense que en este caso el nombre de la variable se llama "pw" y el nombre de la celda se llama "Password" , en este caso no coincide el nombre pero en el anterior si.
También les marqué con un color rosa lo que siempre va a coincidir, este sería el verdadero nombre de la celda , pero como verán se encuentra en otro lugar un poco antes del nombre de la variable.
Se que es medio complicado entender porque parece que fuese todo lo mismo pero no es así, hay que tener claro que una cosa es el nombre que se visualizará en el registro en este caso "PASSWORD" y otra cosa es el nombre de la variable (que llevará nuestros datos ingresados a otro archivo para que sea analizado) que NO SE VISUALIZARÁ en pantalla en este caso "PW" (que puede o no coincidir con el nombre de al celda como en el ejemplo de Login en el paso 2 ).
Pero tanto "pw" como "login" a ¿Donde creen que viajan?
Si leimos con atención la primera parte, nosotros ya sabemos a donde viajan estas viables para ser analizadas y no es nada más que al archivo idreg.php
Entonces, ya conocemos el archivo destino, también aprendimos a reconocer el nombre de las variables, solo nos falta constatar que todo esto sea factible.
Voy a dejar una lista con el nombre del archivo seguido de su varible (Ustedes lo pueden ver también revisando las lineas en el DreamWeawer)
Login:"login"
Name:"name"
Password:"pw"
Re-Password:"cpw"
E-mail:"email"
ID Number:"idnum"
Secret Question:"sques"
Secret Answer:"sansw"
Bueno esos son los nombre de las celdas con su correspondiente variable, generalmente se usa nombres y variables en el cual el nombre haga referencia a su variable.
Obviamente esto está todo en ingles pero por ejemplo:
pw: es password
sques: es Secret Question (en castellano Pregunta Secreta)
sansw: es Secret Answord (en castellano Respuesta Secreta)
etc...
Pero veamos un pantallazo al archivo destino que estuvimos mencionando en reiteradas oportunidades durante este tutorial, el idreg.php (Quien será el encargando de recibir estas variables y otras para su proceso, antes de ingresar a nuestra Base De Datos)
5)En la imagen podemos ver el pasaje de las variables mencionadas anteriormente, Veamosla:
Lo primero que podemos notar es que no hay parte gráfica , y se preguntarán ¿Por que?
Es simple porque este archivo no contiene gráficas sino es un código (PHP) de analisis, ahora veamos algunos puntos importantes que podemos mencionar :
En la imagen anterior marqué con ROJO una parte importante de este código.
Ese IF EMPTY es un condicional y funciona de la siguiente manera : Lo que hace es fijarse si quedaron espacios vacios o en blanco en las celdas
IF EMPTY PASSWORD (Por ejemplo, nos dice si la celda password está vacia nos daría este error
"Some Fields were left blank. Please go back and try again"en castellano nos dice
"Algunos espacios fueron dejados en blanco. Por favor vuelva atras e intente nuevamente"
Más abajo hay más if ("si" en castellano) este if como todo if en programación son condicionales, haciendo una analogía simple sería algo asi
"Si no entendes el módulo 1 no podes leer el módulo 2", en este caso puse como CONDICIÓN que hasta que no entiendas el módulo 1 no podes leer el módulo dos , de igual forma funciona en nuestro módulo de registro "Hasta que no completes todos los espacios tu registro no será procesado (Exit)".
Después tenemos un ElseIF (SINO) que se repite constantenmente.
Siempre que hay un IF aparece este ELSE que es la "contraofensiva" por asi llamarlo de alguna manera.
Retomando el ejemplo anterior funcionaría así "Si no leiste el módulo 1 no podes leer el módulo 2 SINO pasa al modulo 2"
En el caso del código idreg.php lo que va haciendo es poniendo un SINO en cada variable.
No explicaré 1 por 1 pero ejemplo en una parte dice elseif ($pw != $cpw) lo que hace ahí es una comparación (si password no es IGUAL a repertir el password)
ENTONCES
echo "br /The passwords you entered do not match."; $Error=1;
Lo que hace y dice ahí es que si el password ingresado no es IGUAL al password repetido entonces (HECHO) tira este error que en castellano nos dice
LOS PASSWORD NO SON IGUALES
EsE "hecho" hace alusión a una impresión o para que lo entiendan es lo que sale publicado en la web.
6)Finalmente para terminar veamos el último archivo, tal vez ya conocido por muchos de ustedes. Estoy hablando del famoso sql_inject.php
Este archivo tiene la particularidad que es de seguridad y totalmente opcional (pero recomendado)
Pero detrás de cada acción personal hay una consecuencia, y esta última sería los HACKEOS al servidor.
Este archivo esta explicado en mis tutoriales sobre seguridad lo que puede rescatar es la siguiente linea:
Ese $BadWord hace alusión o referencia a " malas palabras " y ese ARRAY es un registro de palabras que si son ingresadas como datos genera el siguiente error:
Security Warning! Forbidden simbols are included, please remove them and try again
En castellano nos dice que NO SE PUEDE INCLUIR SÍMBOLOS EN EL REGISTRO.
Es por eso que en las mayoria de los registros siempre podemos ver que los administradores nos advierten sobre el uso de símbolos a la hora de registrarnos.
Si revisan el conjunto de palabras prohibidas verán que son partes de códigos que sirven para destruir un servidor, borrar y/o modificar la base de datos.
Es el caso del " Delete" (borrar)las personas que intentan hackiar ingresan un código con algunas de estas palabras.
Por eso es que el sql_inject es un archivo de protección escencial de cualquier página web con conexión a una base de datos.
Con esto doy por terminado el módulo I REGISTRO DE CUENTAS , en los próximos tutoriales vamos aprender a introducir otro tipo de módulos.
Al ser este primer módulo la explicación fue detallada, en los próximos módulos será todo más corto ya que se supone que esto tiene que estar leído y entendido.
Ahora si me despido y será hasta el próximo tutorial by asd*














