10°//
Pimero pido disculpas porque hemos dejado abandonado el curso, pero la verdad es que tantos dijeron que lo seguirian y tan pocos se ha visto que de verdad lo siguen que yo en particular estoy perdiendo interes, y ademas por los exámenes y todo eso también tuvimos que irnos por un tiempo, pero bueno igual aca seguimos.
Lo segundo es que me parecio muy incompleta la explicación de los formularios y envios que dejo Rimander(no te valals a molestar solo creo que si es un curso desde cero habra mucha gente que no tenga ni idea y hay que explicar mucho mejor), no hemos coincidido para hablar asi qeu no te lo he podido decir pero aca lo dejo qeu igual no es nada malo ni intimo XD.
Atención aca
Por otra parte como sabrán para practicar bien el lenguaje sql se necesita una base de datos, creo que con phpmyadmin se pueden crear, pero no me manejo muy bien ahí , por lo que estoy dispuesto, si almenos 3 personas siguen el curso en adelante, de proporcionar una base de datos desde mi pc en un horario flexible(conectados por hamachi XD), sino tocara buscar la forma de que cada quien tenga su base de datos.
Conectar a una Base de Datos
Esto es lo primordial a la hora de trabajar con Mysql, ya que obviamente si no nos conectamos a la base de datos no lograremos nada, para esto existe uan función llamada : mysql_connect() en esta función hay que declarar 3 parametros, que van en orden, dirección ip, nombre de usuario y contraseña, y para utilizarla se puede realizar de varias formas, por ejemplo :
Lo primero acá son los datos de la conexión, que los almacenamos en variables, para luego utilizarlos en las funciones de conexión, como vemos las primeras 3 variables se utilizan como lso parametros de la función mysql_connect() , colocando el OR die luego, para que en caso de no conectar muestre el mensaje elejido, seguido del número del error.
Abajo vemos otra función, mysql_select_db() la cual como su nombre lo indica selecciona la base de datos a la cual conectar, en esta el único parámetro que introducimos es el nombre de la base de datos.
Se pueden utilizar otras formas para conectar, pero no es necesario, ya que todas en esencia son lo mismo, solo que se estructuran diferente.
Crear y Enviar Formularios con HTML y PHP (versión extendida)
Comenzaremos con el codigo PHP, para ayudarme aca utilizare el codigo de un formulario de registro de una pagina destinada a metin2 XD.
Cuenta Creada con exito'; } else { echo '**No se ha podido registrar porque el nombre de usuario se encuentra en uso
o no ha llenado los campos correctamente **'; }
}
?>
Analizemso poco a poco este codigo, vemos qeu en la primera linea hay un include, que seria la inclusión del codigo de conección a la base de datos.
Luego abajo tenemos esta linea :
if(isset($_POST['submit']) && $_POST['submit'] == 'Registrar')
para entenderla mejro vamos a desglosarla, seria algo asi :
if($_POST['submit'] == 'Registrar') // cuando demos click en el boton Registrar esta condición se cumplira, Registrar sera igual a la variable, lo que permitira la inserción se los datos mediante la consulta sql al a base de datos.
isset($_POST['submit']) // La otra parte qeu seria esta es una función(isset()), la cual revisa que todos los campos hallan sido llenados con algún dato.
Entonces la linea de codigo anterior lo qeu nos dice es que si se han llenado todos los campos y se ha pulsado en el boton registrar se puede seguir ejecutando el codigo, vean también que se usan los "&&" para unir la condición y la función.
Ahora pasamos a declarar las variables que contendran los datos que se introduciran al formulario :
Podriamos simplemente podriamos igualarlo de esta manera y decir que la variable $username sera igual al valor obtenido del campo del formulario llamado username, pero aca habria un grave error de seguridad, ya que dejaria los datos a merced de "hackers" que puedan aprovecharse de esto para introducir en los campso del formulario algún tipo de codigo que al ser encadenado en nuestra consulta sql pueda modificarla logrando que cumpla una función distinta, pudiendo obtener los datos de usuario o de administradores o incluso borrar las bases de datos.
$username = $_POST['username'];
Para prevenir esto y hacer seguro el envio de estos datos utilizamos la función mysql_real_scape_string(), que dando el codigo de esta forma :
$username = mysql_real_escape_string($_POST['username']);
Hacemos lo mismo para todos los datos que queramos introducir en la consulta.
Lo siguiente que veremos es como crear la consulta sql para introducir los registros, pero el sql lo explicare en el siguiente post(que no se tardara mucho) ya que quiero explicarlo todo junto, así que nos saltaremos la parte de la consulta.
Luego se crea una variable a la cual se le asigna como valor una función llamada mysql_query() la cual ejecuta la consulta sql que se le de como parámetro, como podemos ver se el da como parámetro la variable que contiene la consulta que realizaremos.
Por ultimo hay uan condición donde si la variable $result que es la que ejecuta la consulta sql devuelve verdadero, es decir, funciona correctamente, nos de un mensaje de que se ha creado la cuenta, por el contrario nos dara el mensaje de error que elijamos.