You are on page 1of 8

index.

php
<html lang="es">
<head>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link href="css/bootstrap.min.css" rel="stylesheet">
<link href="css/bootstrap-theme.css" rel="stylesheet">
<script src="js/jquery-3.1.1.min.js"></script>
<script src="js/bootstrap.min.js"></script>
</head>

<body>
<div class="container">
<div class="row">
<h2 style="text-align:center">Curso de PHP y MySQL</h2>
</div>

<div class="row">
<a href="nuevo.php" class="btn btn-primary">Nuevo Registro</a>

</div>
</div>
</body>

</html>

WWWWWWWWWWWWWWWWWWWWW
nuevo.php

1 <html lang="es">
2 <head>
3 <meta name="viewport" content="width=device-width, initial-scale=1">
4 <link href="css/bootstrap.min.css" rel="stylesheet">
5 <link href="css/bootstrap-theme.css" rel="stylesheet">
6 <script src="js/jquery-3.1.1.min.js"></script>
7 <script src="js/bootstrap.min.js"></script>
8 </head>
9
10 <body>
11 <div class="container">
12 <div class="row">
13 <h3 style="text-align:center">NUEVO REGISTRO</h3>
14 </div>
15
16 <form class="form-horizontal" method="POST" action="guardar.php"
17 autocomplete="off">
18 <div class="form-group">
19 <label for="nombre" class="col-sm-2 control-
20 label">Nombre</label>
21 <div class="col-sm-10">
22 <input type="text" class="form-control" id="nombre"
23 name="nombre" placeholder="Nombre" required>
24 </div>
25 </div>
26
27 <div class="form-group">
28 <label for="email" class="col-sm-2 control-
29 label">Email</label>
30 <div class="col-sm-10">
31 <input type="email" class="form-control" id="email"
32 name="email" placeholder="Email" required>
33 </div>
34 </div>
35
36 <div class="form-group">
37 <label for="telefono" class="col-sm-2 control-
38 label">Telefono</label>
39 <div class="col-sm-10">
40 <input type="tel" class="form-control" id="telefono"
41 name="telefono" placeholder="Telefono">
42 </div>
43 </div>
44
45 <div class="form-group">
46 <label for="estado_civil" class="col-sm-2 control-
47 label">Estado Civil</label>
48 <div class="col-sm-10">
49 <select class="form-control" id="estado_civil"
50 name="estado_civil">
51 <option
52 value="SOLTERO">SOLTERO</option>
53 <option
54 value="CASADO">CASADO</option>
55 <option value="OTRO">OTRO</option>
56 </select>
57 </div>
58 </div>
59
60 <div class="form-group">
61 <label for="hijos" class="col-sm-2 control-label">¿Tiene
62 Hijos?</label>
63
64 <div class="col-sm-10">
65 <label class="radio-inline">
66 <input type="radio" id="hijos"
67 name="hijos" value="1" checked> SI
68 </label>
69
70 <label class="radio-inline">
71 <input type="radio" id="hijos"
72 name="hijos" value="0"> NO
73 </label>
74 </div>
75 </div>
76
77 <div class="form-group">
78 <label for="intereses" class="col-sm-2 control-
79 label">INTERESES</label>
80
81 <div class="col-sm-10">
82 <label class="checkbox-inline">
83 <input type="checkbox" id="intereses[]"
84 name="intereses[]" value="Libros"> Libros
85 </label>
86
87 <label class="checkbox-inline">
88 <input type="checkbox" id="intereses[]"
89 name="intereses[]" value="Musica"> Musica
90 </label>
91
92 <label class="checkbox-inline">
93 <input type="checkbox" id="intereses[]"
94 name="intereses[]" value="Deportes"> Deportes
</label>

<label class="checkbox-inline">
<input type="checkbox" id="intereses[]"
name="intereses[]" value="Otros"> Otros
</label>
</div>
</div>
<div class="form-group">
<div class="col-sm-offset-2 col-sm-10">
<a href="index.php" class="btn btn-
default">Regresar</a>
<button type="submit" class="btn btn-
primary">Guardar</button>
</div>
</div>
</form>
</div>
</body>
</html>

Wwwwwwwwwwwwwwwwwwwwwwwwwwww

guardar.php

1 <?php
2
3 require 'conexion.php';
4
5 $nombre = $_POST['nombre'];
6 $email = $_POST['email'];
7 $telefono = $_POST['telefono'];
8 $estado_civil = $_POST['estado_civil'];
9 $hijos = isset($_POST['hijo']) ? $_POST['hijos'] : 0;
10 $intereses = isset($_POST['intereses']) ? $_POST['intereses'] : null;
11
12 $arrayIntereses = null;
13
14 $num_array = count($intereses);
15 $contador = 0;
16
17 if($num_array>0){
18 foreach ($intereses as $key => $value) {
19 if ($contador != $num_array-1){
20 $arrayIntereses .= $value.' ';
21 $contador++;
22 } else {
23 $arrayIntereses .= $value;
24 }
25 }
26 }
27
28 $sql = "INSERT INTO personas (nombre, correo, telefono, estado_civil, hijos, intereses) VALUES
29 ('$nombre', '$email', '$telefono', '$estado_civil', '$hijos', '$arrayIntereses')";
30 $resultado = $mysqli->query($sql);
31
32 ?>
33
34 <html lang="es">
35 <head>
36
37 <meta name="viewport" content="width=device-width, initial-scale=1">
38 <link href="css/bootstrap.min.css" rel="stylesheet">
39 <link href="css/bootstrap-theme.css" rel="stylesheet">
40 <script src="js/jquery-3.1.1.min.js"></script>
41 <script src="js/bootstrap.min.js"></script>
42 </head>
43
44 <body>
45 <div class="container">
46 <div class="row">
47 <div class="row" style="text-align:center">
48 <?php if($resultado) { ?>
49 <h3>REGISTRO GUARDADO</h3>
50 <?php } else { ?>
51 <h3>ERROR AL GUARDAR</h3>
52 <?php } ?>
53
54 <a href="index.php" class="btn btn-primary">Regresar</a>
55
56 </div>
57 </div>
58 </div>
59 </body>
</html>

 HOME
 PERSONAL
 DISEÑO
 MAQUETACIÓN
 PROGRAMACIÓN
 FOTOGRAFÍA
 VIAJES




JUGANDO ENTRE
DISEÑADORES
BLOG PERSONAL DE UNA CHICA FRONT-END.

MYSQL: MOSTRAR, AÑADIR,


MODIFICAR O ELIMINAR DATOS
CON PHP
Ahora que ya sabemos como crear una base de datos, una tabla y un campo en
mysql vamos a darle un poco de vidilla con mi querido php.

Conectar con la base de datos

Lo primero que tenemos que hacer es conectar con la base de datos, para ello
crearemos una función, así nos ahorramos un poco de código, y ya que estamos
creamos también la función para desconectar.

function Conectar(){
$link = mysql_connect("servidor","usuario","contraseña");
return $link;
}

function Desconectar($link){
mysql_close($link);
}
Acordaros de cambiar los parámetros servidor, usuario y contraseña, por los
vuestros.

Realizar una consulta a una tabla

Para extraer el contenido de una tabla debemos realizar una consulta (query) a
ésta, según lo que le indiquemos, nos devolverá un resultado u otro.

El procedimiento general para realizar una consulta es el siguiente:


1. Conectar con la base de datos (mysql_connect).
2. Escribir la consulta (query).
3. Enviar la consulta a la base de datos (mysql_query).
4. Desconectar de la base de datos (mysql_close).

Aunque entre los pasos 3 y 4 es donde podremos meter mano y hacer lo que nos
plazca con esos datos..

Listar datos de una tabla.

$link = Conectar();
$q = "SELECT * FROM Tabla1 ORDER BY campo1 DESC";
$rs = mysql_query($q);
while ($row = mysql_fetch_array($rs)) {
echo '<p>'.$row['campo1'].'</p>';
}
Desconectar($link);
Para a quién le suene a chino el código de arriba, os lo voy a explicar un poquito:
Variables: $link almacena la conexion a la base de datos, $q almacena
la query, $rs almacena el resultado de ejecutar nuestra query en la base de datos
y $row almacena el recorrido por las filas de nuestra tabla que cumplen las
condiciones indicadas, $row es un array.
Bucle while: Recorre todas las filas de nuestra tabla, mientras se cumpla la
condición especificada en la query.
Echo: muestra / interpreta contenido html dentro de php, para incluir una variable
php dentro de ese html utilizaremos ‘.$variable.’ así podrá diferenciarla del html.
Para mostrar el contenido de un campo especifico, deberemos especificarlo en
el array $row, por ejemplo si queremos mostrar el contenido de un campo de
nuestra tabla llamado nombre, deberemos escribir: $row[‘nombre’].

Insertar, modificar y eliminar datos de una tabla.

$link = Conectar();
$q = "INSERT INTO Tabla1 (campo1, campo2) VALUES
('texto1','texto2')";
$rs = mysql_query($q);
if($rs == false) {
echo '<p>Error al insertar los campos en la
tabla.</p>';
}else{
echo '<p>Los datos se han insertado
correctamente.</p>';
}
Desconectar($link);

Insertamos los datos texto1 y texto2 en los campos campo1 y campo2.
If: Si el resultado devuelto es false, indica que no se ha ejecutado lo que le hemos
indicado, si es distinto de false significará que se ha ejecutado correctamente.

$link = Conectar();
$q = "UPDATE Tabla1 SET campo1='texto1', campo2='texto2'
WHERE campo3='texto3'";
$rs = mysql_query($q);
if($rs == false) {
echo '<p>Error al modificar los campos en la
tabla.</p>';
}else{
echo '<p>Los datos se han modificado
correctamente.</p>';
}
Desconectar($link);

Modificamos / actualizamos los datos que contienen campo1 y campo2 por los
nuevos valores texto1 y texto2, siempre y cuando el campo3 contenga los datos
texto3. Esto lo indicamos para que no nos modifique todas las filas de nuestra
tabla.

$link = Conectar();
$q = "DELETE * FROM Tabla1 WHERE campo3='texto3'";
$rs = mysql_query($q);
if($rs == false) {
echo '<p>Error al eliminar los campos en la
tabla.</p>';
}else{
echo '<p>Los datos se han eliminado
correctamente.</p>';
}
Desconectar($link);

Eliminamos la fila de nuestra tabla que contenga el valor texto3 del campo texto3.

Análisis / explicación de las querys.


En los ejemplos anteriores os he puesto las consultas un poco “a lo bruto” sin
explicarlas, así que voy a comentarlas un poquito por si no ha quedado muy clara
la función de cada una.

SELECT * FROM Tabla1 ORDER BY campo1 DESC


El asterisco (*) indica que vamos a seleccionar todos los campos de la tabla
Tabla1 y los vamos a ordenar de manera descendente (Z-A) segun el contenido
del campo1.
En lugar del asterisco podriamos seleccionar campos específicos, la ordenación es
algo opcional, si no lo indicamos se ordenaran de forma ascendente ASC (A-Z).
También podemos limitar a que nos muestre sólo los 2 (o los que queramos)
primeros resultados.
Quedaría asi: SELECT campo1, campo2, campo3, campo4 FROM Tabla1 LIMIT 2

INSERT INTO Tabla1 (campo1, campo2) VALUES (‘texto1′,’texto2’)


Insertamos en los campos campo1 y campo2 de la tabla Tabla1 los valores texto1
y texto2, debemos poner el valor asignado en el mismo orden que hemos puesto
los campos.
UPDATE Tabla1 SET campo1=’texto1′, campo2=’texto2′ WHERE campo3=’texto3′
Actualizamos los campos indicados con sus nuevos valores, a cada uno el suyo,
siempre y cuando el valor del campo3 sea texto3, de la tabla Tabla1.

DELETE * FROM Tabla1 WHERE campo3=’texto3


Eliminamos todos los campos de la fila de la Tabla1 en la que coincide texto3
como valor del campo campo3.

Existen muchos tipos de sentencias SQL, podéis aprender sobre todas gracias
al Manual de referencia SQL.

Bueeeno, creo que esta vez me he enrrollado más de lo normal, perdonadme :D

You might also like