Curso de programación PHP [Curso 2]
-
DELETE
Se utiliza para borrar por ejemplo un campo de una tabla.Seria de la siguiente forma:
DELETE FROM nombre_trabla WHERE nombre_columna = valor_a_borrar
// \\ Ejercicio 6º
Elimina la palabra Chino en la tabla, que esta en el campo del nombre del idioma. -
1º //
Al final del curso 2º se realizara un concurso de informática sobre todo lo dado
Apuntados:
- Hawkings
- Rykuu
- TheDarK
- mt2arcangel
- ~//Rastrillox
- Tears
- Jalonso
- ElRaulxX
Lo primero que decir, es que aquí no posteen nada.
Los hilos de dudas y ejercicios:
[http://foro.universojuegos.es/viewtopic.php?f=75&t=14083&p=261081#p261081][0]">viewtopic.php?f=75&t=14083&p=261081#p261081 Dudas
[http://foro.universojuegos.es/viewtopic.php?f=75&t=14084&p=233144#p261080][0]">viewtopic.php?f=75&t=14084&p=233144#p261080 EjerciciosPrimero daremos un repaso a la conexión, que se vio en curso 1º.
Conectar a una Base de Datos
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
Ejemplo :$mysql_host = "5.152.102.100";
$mysql_user = "root";
$mysql_pass = "123456";
$mysql_db = "account";mysql_connect($mysql_host, $mysql_user, $mysql_pass) OR
die("No se pudo conecatr a la BD.
Error: ".mysql_error());mysql_select_db($mysql_db) OR
die("La base de datos no es accesible.
Error: ".mysql_error());
?>Empezaremos después de tener el archivo de arriba bien configurado.
Para poder ejecutar una linea en mysql se utiliza mysql_query($sentencia);Los Datos para un mysql, para el curso.
Pedírmelos por privado.SELECT
Se utiliza para sacar datos de una tabla o tablas.
El código principal seria el siguiente:SELECT nombre_columnas FROM nombre_tabla
nombre_columnas tiene que ir separado por " , " , al igual que nombre_tabla.
// \\ Ejercicio 1º
Se corrige el día 9/6/2012 a primera hora de la mañana
Crear una consulta que saque los siguientes campos (Solo la consulta):
Tabla -> Idiomas- Segunda columna
- Cuarta columna
[0]: <a href=
-
2º //
Utilizaremos el siguiente programa para que todos tengamos la misma referencia:
Navicat (Es de pago, pero os dejo también el serial).[http://www.mediafire.com/?a15upxjhg0f0oel][0]">[http://www.mediafire.com/?a15upxjhg0f0oel][1]
Os explico como configurar el Navicat:
La configuración sera la que necesitéis vosotros, ya os pase los datos por separado a cada uno.
HD![http://www.youtube.com/watch?v=sH8BNTt1HJY][2]
[0]: <a href=
[1]: http://www.mediafire.com/?a15upxjhg0f0oel
[2]: http://www.youtube.com/watch?v=sH8BNTt1HJY -
3º //
Ahora añadiremos algo mas de código a la consulta del ejercicio anterior.
WHERE, se utiliza para señalar un valor en el campo, podríamos señalar que en la tabla anterior solo nos saque el idioma francés.
La estructura es la siguiente.SELECT * FROM tabla WHERE columna1 = 'dato1' AND columna2 = 'dato2';
Podemos colocarle diferentes símbolos según lo que necesitemos.
- = -> Señalamos que sea igual al dato.
- <> -> Señalamos que sea distinto al dato.
- IN (1,2,3) -> Señalamos que sean los de la lista en este caso 1, 2 y 3
- NOT IN (1,2,3) -> Señalamos que sean distintos a los de la lista.
- LIKE %h% -> Señalara todas las palabras que contengan una "h".
- NOT LIKE %h% -> Señalara todas las palabras que no contenga una "h".
- > -> Mayor que
- < -> Menor que
- != -> Diferente que
-
>= -> Menor o igual que
ORDER BY. podemos ordenar los datos de salida que nos da la consulta, siempre va al final de la consulta, sin (and) ni (comas).
Puede ser:
ASC o DESC -> Acendente / Descendente
La estructura es la siguiente.SELECT * FROM tabla WHERE columna1 = 'dato1' AND columna2 = 'dato2' ORDER BY nombrecolumna ASC;
// \\ Ejercicio 2º
Partiendo de la tabla data(Ya la tenéis en la DB que os pase a la gente del curso.):
La consulta para sacar el idioma Ingles, con todos sus campos correspondientes.
// \\ Ejercicio 3º
Ahora una consulta, para sacar el todos los idiomas menos el alemán , por orden alfabético y con todos sus campos correspondientes.
-
Tras ver como podemos ejecutar consultas y ver un ejemplo con el SELECT veremos otras opciones.
- INSERT -> Para añadir datos en una tabla.
- UPDATE -> Para modificar campos.
- DELETE ->Borrar datos.
INSERT
Se puede escribir varias formas:
INSERT INTO nombre_tabla (nombre_columna1, nombre_columna2, nombre_columna3) values ( 'atributo1', 'atributo2' , 'atributo3') ;
O también podemos :
INSERT INTO nombre_tabla SET nombre_columna1 = 'atributo1', nombre_columna21 = 'atributo2', nombre_columna3 = 'atributo3' ;
UPDATE
Son consultas para actualizar campos.
La forma seria esta:
UPDATE nombre_tabla SET columna3=datonuevo3, columna2=datonuevo2 WHERE columna1=datoexistente
// \\ Ejercicio 4º
Con INSERT, en la tabla ya dada, añadir una nueva fila con el idioma Ruso.// \\ Ejercicio 5º
Con UPDATE solo cambiaremos el nombre del idioma ruso campo "name" y lo cambiaremos por Chino____
Si tenéis dudas, tenéis un post ya realizado para que puedan escribir. -
Crearemos una tabla nueva.
La tabla tendrá de nombre inicio.CREATE TABLE inicio( primercampo tipo(longitud), segundocampo tipo(longitud), tercercampo tipo(longitud) );
Como veis el ultimo campo no tiene que llevar coma.
Los que mas utilizareis.-
Int -> Para un número entero con o sin signo.
-
Date -> Almacena una fecha.
-
VarChar -> Almacena una cadena de una longitud que puede variar.Tambien se le puede añadir caracteristicas.
-
Autoincrement -> Es autoincremental, por lo cual, al hacer un insert no hay que ponerle nada en ese campo, el solo aumentara en 1 su campo anterior.
// \\ Ejercicio 7º
Crear una tabla con los siguientes datos, eligiendo el tipo de campo que se necesite.- Nombre: Noticias
- Campo 1: numerodenoticia
- Campo 2: titulo
- Campo 3: noticia
- Campo 4: fecha
-
-
Veremos como utilizar todas estas consultas con PHP.
Para poder meter datos en una consulta dinámica, que los valores puedan cambiar, tendremos que modificar la consulta y cambiar algunas palabras por variables de php.Lo primero crearemos una conexión que ya la vimos en el anterior curso:
mysql_connect("host","user","pass"); mysql_select_db("nombredeladb");
Utilizaremos un formulario para meter datos en una tabla nueva.
Tu Nombre:
Aqui recogeremos lo enviado por el post.
**// \\ Ejercicio 8º** Foto , de la tabla. Donde utilizáis un registro de 5 campos (os los inventáis) y al enviar el formulario se incluye todo en la tabla que creeis.
-
Ya tenemos el registro creado en el ejercicio 8º
Ahora veremos como sacar esos datos y mostrarlos.
Necesitaremos tener como antes la conexión a la db.mysql_connect("host","user","pass"); mysql_select_db("dbdelatabla");
Se utiliza el SELECT
$codigoselect = mysql_query("SELECT camponame FROM tabla");
Ahora eso nos devuelve unos datos, pero necesitamos mostrarlos.
while($fila = mysql_fetch_array($codigoselect)){ echo $fila['camponame ']; }
Con esto nos mostrara todos los camponame de la tabla.
// \\ Ejercicio 9º
Mostrar todos los nombres de los lenguajes de idiomas. -
Con esto ya podemos crear registros y visualizar datos de una tabla.
Me preguntaron como crear un login teniendo en una tabla los usuarios.
Bueno, partiremos de una tabla llamada "user", con los campos id,usuario y pass.Tomaremos los datos enviados desde un formulario de login.
$usuario = $_POST['usuario']; $pass= $_POST['pass'];
Ahora creamos un select para ver si hay algún registro en la tabla con ese usuario y pass.
$codigoselect = mysql_query("SELECT usuario FROM user WHERE usuario = " '.$usuario.' " and pass= " '.$pass.' " ");
Verificaremos que al menos hay mas de 0 registros en la tabla.
if(mysql_num_rows($codigoselect )>0){ echo 'Bienvenido '.$usuario; }
// \\ Ejercicio 10º
Averiguar como encriptar en SQL una contraseña
- 1 Punto positivo para el concurso.
-
Para poder mostrar datos tenemos diferentes formas.
Para mi, la mas sencilla y creo que para los demás igual seria la siguiente.$query = mysql_query("SELECT nombre,apellido FROM usuarios WHERE nombre = ' antonio ' ");
Ahora mostraremos todos los datos que salgan
while($fila = mysql_fetch_array($query)){ echo $fila[ ' nombre ' ]." y ". $fila[ ' apellido' ]."[br].[/br]"; }
Ejercicio 11
Mostar todos los datos de idiomas.