lunes, 25 de febrero de 2013

Consulta: Recuperar datos con un formulario

FORMULARIO Y PROCESO DE DATOS RECUPERADOS CON PHP

Hola como están? espero que muy bien, hoy vamos a trabajar con un formulario que permitirá escribir un dato para luego buscarlo dentro de un campo de nuestra tabla de datos, para ello utilizaremos formulario, sentencia if, ciclo while y luego procesaremos esos datos recuperamos lanzando nueva información, el ejercicio lo haremos en base a el ingreso de datos que hicimos en la tabla salarios y los nuevos datos que lanzaremos serán el descuento de IGSS (en Guatemala 4.83% sobre sueldo) y el salario líquido, es decir sueldo + bonificación - IGSS.

Paso No. 1 - Usamos sentencia if para mostrar el formulario de consulta.

<?
if(!$_POST) {
?>

Paso No. 2 - Creamos el formulario de consulta.

<form action="<? $_POST ?>" method=POST >
   ¿Qué dato buscas? <input type=text required name=dato />
   <input type=submit value=Buscar />
</form>

Paso No. 3 - Asignamos la variable $dato, luego conectamos con el servidor y seleccionamos la base de datos.

<?
} else {

$dato = $_POST['dato'];

$db = mysql_connect("localhost", "root", "123456") or die ("No conectó el servidor");

mysql_select_db("ejemplo") or die ("No se puede seleccionar la base de datos ejemplo");

Paso No. 4 - Hacemos la consulta (para ello bastará con escribir solamente parte del nombre del empleado que buscamos, por ejemplo Juan o car).

$consulta = "SELECT * FROM salarios WHERE nombre LIKE '%".$dato."%'";
$resultado = mysql_query($consulta);


while($row = mysql_fetch_array($resultado)) {
   $id = $row['IdEmpleado'];
   $nombre = $row['Nombre'];
   $cargo = $row['Cargo'];
   $sueldo= $row['Sueldo'];
   $bono = $row['Bonificacion'];

   $igss = $sueldo * 0.0483;
   $liquido = $sueldo + $bonificación - $igss;

   echo "No. $id <br>";
   echo "Nombre $nombre <br>";
   echo "Cargo $cargo <br>";
   echo "Sueldo $sueldo <br>";
   echo "Bonificación $bono <br>";
   echo "IGSS $igss <br>";
   echo "Sueldo Líquido $liquido <br>";
   echo "------------------------<br>";
}

}
?>


Bien, ahora como siempre les dejo el ejemplo para que lo prueben y espero que les sirva mucho.  Hasta la próxima.




Ejemplo: Consultar una tabla de datos

CONSULTAS SQL

Hola como están? espero que muy bien, en esta ocasión voy a trabajar en un programita para que puedan consultar sus tablas de datos desde php y vamos a utilizar instrucciones sql, condiciones if y ciclos for.  La consulta la haremos en base al ejemplo de la entrada anterior (Formulario para guardar datos), recordemos que la base de datos se llama ejemplo y la tabla se llama salarios.

Paso No. 1 - Conectar con el servidor y seleccionar la base de datos.

<?

$db = mysql_connect("localhost", "root", "123456") or die ("No conectó el servidor");

mysql_select_db("ejemplo") or die ("No se puede seleccionar la base de datos ejemplo");

Paso No. 2 - Hacer la consulta

$consulta = "SELECT * FROM salarios";
$resultado = mysql_query($consulta);
$numero_resultados = mysql_num_rows($resultado);

Paso No. 3 - Crear un ciclo con for para recuperar los resultados y mostrarlos.

echo "<h2>Resultados encontrados: </h2>";
for($i=1; $i<=$numero_resultados; $i++) {
   $registros = mysql_fetch_array($resultado);
   $nombre = $registros['Nombre'];
   $cargo = $registros['Cargo'];
   $sueldo = $registros['Sueldo'];
   $bono = $registros['Bonificacion'];

   echo "No. $i <br>";
   echo "Nombre $nombre <br>";
   echo "Nombre $cargo <br>";
   echo "Nombre $sueldo <br>";
   echo "Nombre $bono <br>";
   echo "----------------------------<br><br>";
}

Bueno, ya se que es bastante básico, pero les aseguro que si logran entenderlo les será de mucha utilidad, en la próxima oportunidad veremos como hacer una consulta utilizando formularios, siempre les dejo el ejemplo para que lo vean, solamente hagan clic en el botón Mostrar Datos.  Hasta pronto.


Ejemplo de Formulario: Capturar y guardar datos

FORMULARIO, PHP Y MYSQL

Hola que tal, les deseo un buen día.  Hoy vamos a escribir un programita que nos permitirá capturar datos (Nombre, Cargo, Sueldo y Bonificación) y luego los guardará en una base de datos, debo aclarar que en este programa voy a escribir la instrucción que permitirá crear esta base de datos en caso de que no exista.

Paso No. 1 - Usamos la sentencia if para mostrar el formulario.

<?
if(!$_POST) {
?>

Paso No. 2 - Hacemos el formulario en HTML

<form action="<? $_POST ?>" method=POST>
   Nombre: <input type=text name=nombre required /><br>
   Cargo: <input type=text name=cargo required /><br>
   Sueldo: <input type=text name=sueldo required /><br>
   Bonificación: <input type=text name=bono required /><br>
   <input type=submit value=Procesar />
</form>

Paso No. 3 - Asignación de variables con los datos del formulario.

<?
} else {
$nombre = $_POST['nombre'];
$cargo= $_POST['cargo'];
$sueldo= $_POST['sueldo'];
$bono = $_POST['bono'];

Paso No. 4 - Conectamos con el servidor y seleccionamos la base de datos (en este caso nuestra base de datos se llamará ejemplo y la tabla salarios.)

$db = mysql_connect("localhost", "root", "123456") or die ("No conectó con el servidor");

mysql_select_db("ejemplo") or die ("No se pudo seleccionar la base de datos ejemplo");

Paso No. 5 - Verificamos que la tabla salarios exista en la base y si no la creamos.


$tabla =  mysql_list_tables("ejemplo");
   $num_tabla = mysql_num_rows($tabla);
   $existe = "NO";
   
   for ($i=0; $i<$num_tabla; $i++) {
      if (mysql_tablename($tabla, $i) == "salarios") {
         $existe = "SI" ;
      }
   }
   if ($existe == "NO") {
      $tabla_nueva = "CREATE TABLE salarios (IdEmpleado INT(3) NOT NULL 
      AUTO_INCREMENT PRIMARY KEY, Nombre VARCHAR(35), Cargo VARCHAR(20), 
      Sueldo DOUBLE(6,2), Bonificacion DOUBLE(6,2), UNIQUE (IdEmpleado))";
      mysql_query($tabla_nueva);
   }

Paso No. 6 - Insertamos los datos en la tabla.

$insertar = "INSERT INTO salarios (Nombre, Cargo, Sueldo, Bonificacion) VALUES (
'$nombre', '$cargo', '$sueldo', '$bono')";
$resultado = mysql_query($insertar);

Paso No. 7 - Confirmamos que los datos hayan sido insertados y luego los mostramos.

if(!$resultado) {
   echo "No se guardaron datos, vuelva a intentarlo más tarde";
} else {
   echo "$nombre <br>$cargo <br>$sueldo <br>$bono<br>Los datos fueron guardados con 
   éxito";
}
}
?>

Eso es todo, como siempre les dejo el ejemplo para que lo prueben y deseo que todo salga bien. Hasta la próxima.



Ejemplo de formulario: Fecha de nacimiento

FORMULARIOS Y PHP

Hola que tal, una vez más vamos a adentrarnos en la programación de PHP y en esta ocasión haremos un ejemplo de un formulario que solicite el nombre de una persona, presente las opciones para que el usuario ingrese el día, mes y año en que nació.  Para esto vamos a utilizar las sentencias if, for, switch y los formularios de html.

Paso No. 1 - Usamos el condicional if para mostrar el formulario y luego procesarlo.

<?
if(!$_POST) {
?>

Paso No. 2 - Escribimos el código de formulario y los campos dia, mes y año los procesamos con un ciclo for.

<form action="<? $_POST ?>" method=POST >
   Nombre: <input type=text required name=nombre /><br>
   Fecha de Nacimiento: <br>
   Día: <select name=dia>
      <?
      for($i=1; $i<=31; $i++) {
         echo "<option value=$i>$i</option>";
      }
      ?>
   </select> 
   Mes: <select name=mes>
      <?
      for($i=1; $i<=12; $i++) {
         echo "<option value=$i>$i</option>";
      }
      ?>
   </select>
   Año: <select name=anio>
      <?
      for($i=1960; $i<=2013; $i++) {
         echo "<option value=$i>$i</option>";
      }
      ?>
   </select><br>
   <input type=submit value=Mostrar>
</form>

Paso No. 3 - Asignamos a nuestras variable de php el valor de cada uno de los campos del formulario.

<?
} else {
$nombre = $_POST['nombre'];
$dia= $_POST['dia'];
$mes = $_POST['mes'];
$anio = $_POST['anio'];

Paso No. 4 - Ahora convertiremos los meses de número a texto.

switch($mes) {
   case 1:
      $mestexto = "enero";
      break;
    case 2:
      $mestexto = "febrero";
      break;
    case 3:
      $mestexto = "marzo";
      break;
    case 4:
      $mestexto = "abril";
      break;
    case 5:
      $mestexto = "mayo";
      break;
    case 6:
      $mestexto = "junio";
      break;
    case 7:
      $mestexto = "julio";
      break;
    case 8:
      $mestexto = "agosto";
      break;
    case 9:
      $mestexto = "septiembre";
      break;
    case 10:
      $mestexto = "octubre";
      break;
    case 11:
      $mestexto = "noviembre";
      break;
    case 12:
      $mestexto = "diciembre";
      break;
}

Paso No. 5 - Mostramos los resultados

echo "$nombre usted nació el $dia de $mestexto de $anio";
}
?>

Bien eso es todo espero que al ejecutarlo no les de ningún problema.  Siempre le dejo un ejemplo del funcionamiento aquí.