Insertar datos (MYSQL / PHP)

Entre las actividades más comunes se encuentran las operaciones de Inserción de datos. Para lograr esto, es necesario tener una base de datos, una tabla y datos dentro de dicha tabla.

A continuación se describen los datos a utilizar en nuestro pequeño sistema:

Otro aspecto a considerar son los nombres y campos de las tablas que conformaran nuestra base de datos. La siguiente figura muestra esta información:

Base de datos de prueba
Imagen 1. Tablas y campos de la base de datos “Prueba”

NOTA: para ver la forma de crear bases de datos en MySQL, te recomiendo ver el artículo Creando una bases de datos.

Ahora bien, debemos tener un formulario para realizar la inserción, los campos a tener en el formulario deben coincidir con los campos de la tabla. En este caso ingresaremos datos a la tabla usuario, por lo cual debemos tener el siguiente código en un archivo, al cual denominaremos formulario.html:


    Mi primer formulario
<header>
<h1>Mi primer formulario</h1>
Formulario creado con html5
<header><section><form action="insert.php" method="post" name="frmRegistro">
Nick: <input id="nick" type="text" name="nick" />

 Password: <input id="password" type="password" name="password" />
<select name="cboLevel"> <option value="1">1</option></select> <select name="cboLevel"> <option value="2">2</option></select> <select name="cboLevel"> <option value="3">3</option></select> <select name="cboLevel"> <option value="4">4</option></select>
 Email: <input id="mail" type="text" name="mail" />

 <input id="Enviar" type="submit" name="Enviar" value="Agregar" />
 <input id="Restaurar" type="reset" name="Restaurar" value="Cancelar" /></form><section></section></section></header></header>

Vamos a explicar las líneas del código más importantes:

  1. La línea
    </pre>
    <form action="insert.php" method="post" name="frmRegistro">

    permite crear el encabezado del formulario y contiene los siguientes datos:

    • name: indica el nombre del formulario (no de la página web).
    • method: indica el método por el cual se enviarán los datos, puede ser POST o GET, en este caso usaremos post.
    • action: indica la página que procesara nuestra información.
  2. Las líneas que inician con
    <input type="text" />

    son cajas de texto para introducir nuestros datos.

  3. La línea
    <select id="cboNivel" name="cboNivel">

    define un objeto de tipo select (un combo box), para agregar información a dicho select se utilizan las siguientes etiquetas:

    1

    donde el atributo value indica el valor que se tendrá una vez seleccionada una opción del select.

  4. Es muy importante que recordemos los nombres de los campos de nuestro formulario, ya que los utilizaremos en la página de procesamiento de los datos, misma que establecimos en el atributo action de nuestro formulario.
Este código nos genera un página web con un formulario semejante al de la siguiente figura:
Imagen 2. El formulario
El siguiente paso implica la crear el archivo insert.php donde se procesaran los datos de nuestro formulario. Antes de desarrollar nuestro archivo debemos tomar en cuenta las siguientes cuestiones:
  1. El método de envío del formulario es “post“, por lo cual se generará un arreglo asociativo denomina $_POST, cuyos índices serán los nombres de los campos del formulario, por ejemplo, tenemos el campo nick, por lo cual tendremos $_POST['nick'].
  2. Tener a la mano los datos de conexión con el servidor de MySQL.
  3. Se requiere conectar a la base de datos, en este ejemplo se utilizará un código muy simple, por lo cual te recomiendo leas el artículo pertinente (Conectando php y mysql).
  4. Por último, pero no menos importante saber la estructura de la clausula INSERT en MySQL.

Una vez entendido esto, manos a la obra. A continuación se presenta el código necesario para realizar la inserción de los datos. Cabe destacar que se realizan los comentarios en el código del mismo archivo.

<?php
   //Conectamos con el servidor de mysql empleando la función
   //mysql_connect, estos datos son de ejemplo y deberan ser
   //reemplazados por nuestros propios datos.
   //La función or die permite enviar un mensaje de error
   //en caso de que alguna función de mysql no pueda
   //ejecutarse. mysql_error indica el error
   mysql_connect('localhost', 'root', '1234') or die(mysql_error());

   //Seleccionamos la base de datos con la que trabajaremos
   //en nuestro caso prueba, esto lo hacemos con la función
   //mysql_select_db
   mysql_select_db('prueba') or die(mysql_error());

   //Recibimos los valores enviados por el formulario a través
   //del arreglo asociativo $_POST, debido a que el método
   //utilizado en el formulario fue post.
   //Recuerda que los índices del arreglo serán los nombres
   //de los campos del formulario
   $nick = $_POST['nick'];
   $pass = $_POST['password'];
   $nivel = $_POST['cboNivel'];
   $email = $_POST['mail'];

   //Asignamos a una variable el código del insert
   $sql = "INSERT INTO usuario VALUES('$nick','$pass','$nivel','$email')";

   //Ejecutamos el insert mediante la función mysql_query
   mysql_query($sql) or die(mysql_error);

   //Mandamos un mensaje y ponemos un hipervínculo al formulario
   echo "Registro agregado<br />";
   echo "<a href='formulario.html'>Regresar</a>";
?>

Listo, ya solo nos queda probar los códigos. SUERTE !!!!

Tags:

Creando una base de datos

Este pequeño tutorial tiene por objetivo crear una base de datos con dos tablas (usuario y comentarios), para lo cual se pueden seguir estos sencillos pasos.

Lo primero que debemos realizar, es abrir una terminal y escribir mysql -u usuario -p  y presionar <enter>, acto seguido nos solicitara la contraseña de acceso. A continuación se muestra una imagen con los datos de acceso (en este caso el usuario es root y la contraseña, aunque no se muestre es 1234).

Imagen 1. Accesando a MySQL (en Ubuntu)

Tags:

Conectando php y mysql

Dentro de la programación web, PHP es uno de los lenguajes más empleados, por lo cual, el día de hoy veremos dos formas de conectar los Scripts de PHP con el Sistema Gestor de Bases de Datos Oracle Mysql:

Para dar inicio a la explicación se debe asumir que tenemos los siguientes datos como válidos:

Forma 1: Programación tradicional.


<?php
//Función para realizar las conexiones
function conecta(){

   //Comprobar si puedo conectar con el server
   if($link=mysql_connect('localhost','root','1234')){

      //Comprobar si puedo conectar con la BD
      if(mysql_select_db('prueba', $link)){
         return $link;
      }else{
         echo "No BD";
      } //Fin if - else
   }else{
      echo "No conecta";
   }//Fin if - else
} //Fin conecta
?>
Tags: