{"id":52,"date":"2015-08-12T00:00:00","date_gmt":"2015-08-12T00:00:00","guid":{"rendered":"https:\/\/blog.jkanework.com\/post.php?idpost=52"},"modified":"2015-08-12T00:00:00","modified_gmt":"2015-08-12T00:00:00","slug":"aprender-phpmysql-facil-episodio-3","status":"publish","type":"post","link":"https:\/\/blog.jkanetwork.com\/?p=52","title":{"rendered":"Aprender PHP+mysql f\u00e1cil &#8211; Episodio 3"},"content":{"rendered":"<p>Anterior entrega del tutorial aqu&iacute;: <a href=\"verart.php?idart=38\">http:\/\/jkanetwork.com\/verart.php?idart=38<\/a><\/p>\n<p>Seguimos con el tercer tutorial de PHP+mysql, con la introducci&oacute;n a conexiones a mysql, y usos simples de &eacute;l, y de paso pondr&eacute; aqui la integraci&oacute;n php-mysql, ser&aacute; un tutorial m&aacute;s largo, algunas cosas de mysql b&aacute;sicas las dar&eacute; un poco por supuesto ya que aqu&iacute; es m&aacute;s el uso junto a php, as&iacute; que necesit&aacute;is saber dos cosas por adelantado, entrar en la base de datos que teng&aacute;is, y saber hacer tablas, aqui un ejemplo sencillo de hacer tablas con phpmyadmin,que tienen el 99% de los servidores (aunque el de las fotos es algo viejo) <a href=\"http:\/\/www.aulaclic.es\/dreamweavercs3\/t_19_12.htm\" target=\"_blank\">http:\/\/www.aulaclic.es\/dreamweavercs3\/t_19_12.htm<\/a><\/p>\n<p>Primero veremos como conectarnos a una base de datos de mysql (Que ten&eacute;is que haber creado antes, ya sea con alg&uacute;n programa local, o con un hosting gratis en las opciones de mysql (Pod&eacute;is buscar en Google poniendo vuestro hosting o programa y como crear base de datos mysql)<\/p>\n<p>Una vez tengamos los datos, pondremos lo siguiente<\/p>\n<p><span style=\"color: #800000;\">$conexion = mysqli_connect(\u00abhost\u00bb,\u00bbusuario\u00bb,\u00bbcontrase&ntilde;a\u00bb,\u00bbbase de datos escogida\u00bb) <\/span><br \/><span style=\"color: #800000;\">or die (\u00abFallo en el establecimiento de la conexi&oacute;n\u00bb);<\/span><\/p>\n<p>Ah&iacute; veis que conectamos poniendo el host, que suele ser localhost, y luego el resto de datos que tendremos<\/p>\n<p>Como anotaci&oacute;n aqu&iacute; usaremos la extensi&oacute;n mysqli_* en vez de mysql_* , porque mysql_* est&aacute; en proceso de eliminarse, y lo unico que hay de diferencia pr&aacute;ctica, a parte de la i, es que primero va el parametro conexion y luego la consulta, y en mysql_* es al rev&eacute;s<\/p>\n<p>Una vez conectados, tenemos que hacer consultas, es decir pedir que haga cosas<\/p>\n<p>Las m&aacute;s importantes son las funciones SELECT (Buscar y coger), INSERT (A&ntilde;adir algo nuevo), DELETE (Borrar algo), UPDATE (Modificar algo existente)<\/p>\n<p>Las consultas se hacen con este comando: mysqli_query($conexion,$consulta);<\/p>\n<p>La variable $consulta se puede usar, o poner ah&iacute; entre comillas la consulta en s&iacute;, es libre de hacerlo de una u otra forma<\/p>\n<p>Imaginaros que tenemos una tabla con nombre gente asi:<\/p>\n<p>ID&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; nombre&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; edad<\/p>\n<p>1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; Pepe&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 15<\/p>\n<p>2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Alba&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 18<\/p>\n<p>3&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Javier&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp; 45<\/p>\n<p>(La variable ID, es el indice,es autom&aacute;tico, todas las tablas necesitan un &iacute;ndice o index, recordad al hacer tablas que ten&eacute;is que tener un campo ID como primario para que todo funcione bien)<\/p>\n<p>Si queremos a&ntilde;adir uno m&aacute;s se har&iacute;a asi:<\/p>\n<p><span style=\"color: #800000;\">mysqli_query($conexion,\u00bbINSERT INTO `gente` (`nombre`,`edad`) VALUES (`Lydia`, `18`)\u00bb);<\/span><\/p>\n<p>Explicando un poco :<\/p>\n<p>INSERT INTO `gente`&nbsp; &#8211; Donde quieres insertar los nuevos valores<\/p>\n<p>(`nombre`,`edad`) &#8211; Los valores a insertar, si no pones todos, los otros quedar&aacute;n en blanco o en su valor por defecto<\/p>\n<p>VALUES (`Lydia`,`18`)&nbsp; &#8211; Lo que valen dichos valores<\/p>\n<p>Las \u00ab se ponen para evitar que se cojan mal los datos, pero en la mayor&iacute;a de casos si no las pones funcionan igual<\/p>\n<p>Tambi&eacute;n se pueden pasar variables de php (que es lo suyo) , como valores de cualquier cosa, esto es aplicable a todas las funciones de mysql, y se har&iacute;a as&iacute;<\/p>\n<p><span style=\"color: #800000;\"><span style=\"color: #800000;\">$nombre = \u00abAna\u00bb;<\/span><br \/><span style=\"color: #800000;\">$edad = \u00ab22\u00bb;<\/span><br \/><span style=\"color: #800000;\">mysqli_query($conexion,\u00bbINSERT INTO `gente` (`nombre`,`edad`) VALUES (&#8216;$nombre&#8217;, &#8216;$edad&#8217;)\u00bb);<\/span><br \/><span style=\"color: #800000;\">?&gt;<\/span><\/span><\/p>\n<p>Se ponen las variables en comillas simples &#8216; &#8216;<\/p>\n<p>Imaginaros unir esto con la parte de formularios del anterior tutorial \ud83d\ude09<\/p>\n<p>Ahora, el comando UPDATE<br \/>Con el comando update entra la palabra WHERE que significa donde, y ser&aacute; para decirla donde quieres cambiar dicho valor<\/p>\n<p><span style=\"color: #800000;\">mysqli_query($conexion, \u00abUPDATE `gente` SET `edad` = `27` WHERE ID = 2\u00bb);<\/span><\/p>\n<p>Explicando.. SET es que quieres cambiar y despu&eacute;s del = se pone el nuevo valor<\/p>\n<p>Aqu&iacute; us&eacute; la variable ID para decir donde quieres cambiarlo, ya que esa variable siempre ser&aacute; la misma, y el nombre podr&iacute;a cambiarse, pero podr&iacute;ais usar cualquiera, incluso, imagina que tenemos cientos de nombres y hacemos algo como..<\/p>\n<p><span style=\"color: #800000;\">mysqli_query($conexion, \u00abUPDATE `gente` SET `nombre` = `to&ntilde;o` WHERE `nombre` = `antonio`\u00bb);<\/span><\/p>\n<p>Cambiar&iacute;amos todos los antonios por to&ntilde;os xd<\/p>\n<p>Para ampliar, con la sentencia DELETE os ense&ntilde;are los otros dos operadores m&aacute;s famosos AND,y OR , que creo que intu&iacute;s para que sirven<\/p>\n<p>Nuestro siguiente comando es DELETE, y su uso es el siguiente:<\/p>\n<p><span style=\"color: #800000;\">mysqli_query($conexion, \u00abDELETE FROM `gente` WHERE `nombre`=`Ana` OR `edad` = `20`\u00bb);<\/span><\/p>\n<p>Con esta sentencia decimos lo siguiente<br \/>DELETE FROM `gente` &#8211; De donde vamos a borrar<\/p>\n<p>WHERE `nombre`=`Ana` &#8211; Todos los nombres que sean Ana<\/p>\n<p>OR &#8211; o (lo que se cumpla despu&eacute;s tambi&eacute;n se borran)<\/p>\n<p>Esta sentencia borrar&aacute; todas las Ana y todas las personas con 20 a&ntilde;os<\/p>\n<p>Si pusieramos AND en vez de OR , hubiera borrado todas las Ana de 20 a&ntilde;os<\/p>\n<p>Y nuestra &uacute;ltima sentencia, aunque muy usada, SELECT, para conseguir datos<\/p>\n<p>Se le suele a&ntilde;adir un mysqli_fetch_array porque si tiene varios resultados (En nuestra tabla,3 ,ID-nombre-edad), nos lo devuelva como array y sea usable poniendo $rconsulta[nombre] por ejemplo<\/p>\n<p><span style=\"color: #800000;\">$rconsulta = mysqli_fetch_array(mysqli_query($conexion, \u00abSELECT `nombre`,`edad` FROM `gente` WHERE ID = `1`\u00bb));<\/span><\/p>\n<p>Explicando..<\/p>\n<p>SELECT nombre,edad &#8211; Selecciona esos valores<\/p>\n<p>FROM `gente` &#8211; Usa esta tabla para buscar<\/p>\n<p>WHERE ID=1 &#8211; La busqueda para sacar esos valores<\/p>\n<p>En el ejemplo nos devolver&iacute;a en $rconsulta Pepe y 15, que se podrian imprimir en pantalla poniendo<\/p>\n<p><span style=\"color: #800000;\">print \u00abNuestra persona \u00bb . $rconsulta[nombre] . \u00bb tiene \u00bb . $rconsulta[edad] . \u00bb a&ntilde;os.\u00bb;<\/span><\/p>\n<p>Aqu&iacute; est&aacute; lo b&aacute;sico y &uacute;til de mysql \ud83d\ude09 Dudas en los comentarios<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Anterior entrega del tutorial aqu&iacute;: http:\/\/jkanetwork.com\/verart.php?idart=38 Seguimos con el tercer tutorial de PHP+mysql, con la introducci&oacute;n a conexiones a mysql, y usos simples de &eacute;l, y de paso pondr&eacute; aqui la integraci&oacute;n php-mysql, ser&aacute; un tutorial m&aacute;s largo, algunas cosas de mysql b&aacute;sicas las dar&eacute; un poco por supuesto ya que aqu&iacute; es m&aacute;s el [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[6],"tags":[],"class_list":["post-52","post","type-post","status-publish","format-standard","hentry","category-tutoriales"],"_links":{"self":[{"href":"https:\/\/blog.jkanetwork.com\/index.php?rest_route=\/wp\/v2\/posts\/52","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.jkanetwork.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.jkanetwork.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.jkanetwork.com\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.jkanetwork.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=52"}],"version-history":[{"count":0,"href":"https:\/\/blog.jkanetwork.com\/index.php?rest_route=\/wp\/v2\/posts\/52\/revisions"}],"wp:attachment":[{"href":"https:\/\/blog.jkanetwork.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=52"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.jkanetwork.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=52"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.jkanetwork.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=52"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}