28 de noviembre de 2011

Aprendiendo jQuery Lección 2 - Selectores

En esta parte voy a explicar como seleccionar los elementos que vamos a trabajar llamados selectores.
Los selectores son una forma de permitirnos elegir un elemento (o varios) entre todos los que tenemos en nuestro documento HTML. ¿Para qué? Para luego poder aplicar sobre los elementos seleccionados diversas funciones.



Ejemplo de Selectores:

Selectores de Clase
  
$(".banner")
$(".galeria")
Aqui seleccionamos todos los elementos que tienen la clase banner y galeria.

Selectores Identificadores
$("#formulario")
$("#oculto")
Aqui seleccionamos solo el elemento con el id formulario y el id oculto.

Selectores Jerárquicos
$("div img")
$("div li")
Aqui seleccionamos todos las etiquetas img y li dependientes de un div.

Selectores de elementos de Formulario
$(":radio")
$(":text")
Aqui seleccionamos todos lo elementos del formulario de tipo radio y text.

Selectores de Etiquetas
$("h1")
$("p")
Aqui seleccionamos todos los elementos con etiquetas h1 y p.


26 de noviembre de 2011

Aprendiendo jQuery Lección 1 - Introducción y Uso

Antes que nada voy a realizar una breve introducción sobre lo que es jQuery, y también explicar los conceptos básicos de como se debe usar este magnifico framework javascript.






Que Es jQuery?
Puedo decir que jQuery es un framework Javascript, y qué es un framework. Pues es una plataforma que sirve como base para la programación avanzada de aplicaciones, que aporta una serie de funciones o códigos
para realizar tareas habituales. Por decirlo de otra manera, framework son unas librerías de
código que contienen procesos o rutinas ya listos para usar.

Instalacción
Para comenzar a trabajar con jQuery, primero necesitamos descargar la versión mas actual de la librería.
Puedes descargar la última versión de jQuery desde jquery.com. Una vez que descarges  la librería ya tendrás todo lo necesario para comenzar a trabajar.

Uso
Lo primero que debemos hacer para poder utilizar jQuery, es añadir la librería en el archivo HTML en el que quieras utilizarlo. Para ello, añade la siguiente línea dentro de la etiqueta HEAD de tu HTML.

                                                                
<html>
   <head>
      <title>Documento sin título</title>
      <script src="js/jquery.js" type="text/javascript"></script>
   </head>
   <body>
   </body>
</html>                                                              

Aquí estamos suponiendo que el archivo jquery.js está en la carpeta js/ que esta en la raíz del archivo html.
Y para empezar a trabajar con jQuery solo falta registrar el evento que nos indica que el DOM está listo, para esto hay 2 formas de hacerlo.

  
$(document).ready(function() {

   //Aquí va lo que vamos hacer

 });

Esto es similar a la típica llamada "window.onload" que se hace en Javascript cuando queremos que algo se ejecute al terminar de cargar la página. Y la otra forma es.
  
$(function() {

    //Aquí va lo que vamos hacer

 });


Yo  personalmente uso la segunda forma, ya que es menos código y hace exactamente lo mismo que la primera.

12 de noviembre de 2011

Actualizar datos de MYSQL con PHP

En esta oportunidad voy a realizar una actualización a los datos de  una tabla creada en mysql, usando la palabra reservada UPDATE.

Para este ejemplo voy a crear una  tabla llamada clientes, y 2 archivos php. La conexión la pueden ver en este post que publique hace días.





Clientes.sql

CREATE TABLE IF NOT EXISTS `clientes` (
  `id_cliente` int(11) NOT NULL AUTO_INCREMENT,
  `cliente` varchar(200) NOT NULL,
  `direccion` varchar(200) NOT NULL,
  `dni` char(8) NOT NULL,
  `telefono` char(9) DEFAULT NULL,
  PRIMARY KEY (`id_cliente`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;

index.php

<?php 
include_once("class/Conexion.php");
include_once("class/Clientes.php");
$link= new Conexion("localhost","root","","blog");
$clientes = new Clientes();
$array_cliente = $clientes->GetClientes();
switch ($_GET['accion']) {
    case "edit" : $datos = $clientes->GetClientes($_GET['id']);
        break;
    case "update" : $clientes->UpdateClientes($_GET['id']);
        break;
}
?>
<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title>Documento sin título</title>
    </head>
    <body>
        <table width="700" border="1" cellpadding="0" cellspacing="0">
            <tr align="center">
                <td width="172">CLIENTE</td>
                <td width="201">DIRECCIÓN</td>
                <td width="109">DNI</td>
                <td width="107">TELEFONO</td>
                <td width="99">OPCIONES</td>
            </tr>
            <?php
            if ($array_cliente) {
                foreach ($array_cliente as $value):
                    ?>
                    <tr>
                        <td><?php echo $value['cliente'] ?></td>
                        <td><?php echo $value['direccion'] ?></td>
                        <td align="center"><?php echo $value['dni'] ?></td>
                        <td align="center"><?php echo $value['telefono'] ?></td>
                        <td align="center"><a href="index.php?accion=edit&id=<?php echo $value['id_cliente'] ?>">EDITAR</a></td>
                    </tr>
                    <?php
                endforeach;
            }
            ?>
        </table>

        <br />
        <form name="frmclientes" method="post" action="index.php?accion=update&id=<?php echo $datos[0]['id_cliente'] ?>">
            <table width="247">
                <tr>
                    <td width="69"><label>Cliente:</label></td>
                    <td width="166"><input type="text" name="cliente" value="<?php echo $datos[0]['cliente'] ?>" /></td>
                </tr>
                <tr>
                    <td><label>Dirección:</label></td>
                    <td><input type="text" name="direccion" value="<?php echo $datos[0]['direccion'] ?>" /></td>
                </tr>
                <tr>
                    <td><label>Dni:</label></td>
                    <td><input type="text" name="dni" value="<?php echo $datos[0]['dni'] ?>" /></td>
                </tr>
                <tr>
                    <td><label>Telefono:</label></td>
                    <td><input type="text" name="telefono" value="<?php echo $datos[0]['telefono'] ?>" /></td>
                </tr>
                <tr>
                    <td colspan="2" align="center"><input type="submit" name="btneditar" value="EDITAR DATOS" /></td>
                </tr>
            </table>
        </form>
    </body>
</html>

Clientes.php

class Clientes {

    private $datos = array();

    public function GetClientes($id=0) {

        $where = ($id > 0) ? "where id_cliente=" . $id : "";
        $sql = mysql_query("SELECT * FROM clientes " . $where . " ORDER BY 1");
        while ($res = mysql_fetch_array($sql)) {
            $datos[] = $res;
        }
        return $datos;
    }

    public function UpdateClientes($id=0) {

        $sql = mysql_query("UPDATE clientes SET cliente = '" . $_POST["cliente"] . "', direccion = '" . $_POST["direccion"] . "', dni = '" . $_POST["dni"] . "', telefono = '" . $_POST["telefono"] . "' WHERE id_cliente = " . $id . "");


        header("location:index.php");
    }

}

Insertar Datos a MYSQL con PHP


Conectar PHP con MYSQL

En esta oportunidad voy a realizar una conexión a una base de datos creada con una clase que te permite conectar tu base de datos de una forma fácil y sencilla, usando php orientado a objetos:


En mi archivo Conexion.php he creado mi clase llamada Conexion, y he declarado mis atributos para asignarle los valores de mi conexion (nombre del host, usuario de l bd, password de la bd, nombre de la bd), y un metodo constructor para que al llamar a mi clase Conexion automaticamente me ejecute el codigo que contiene el constructor.
class Conexion {

    var $link = 0;
    var $host;
    var $user;
    var $psw;
    var $db;

    function Conexion($host, $user, $psw, $db) {
        $this->host = $host;
        $this->user = $user;
        $this->psw = $psw;
        $this->db = $db;
        $this->link = mysql_connect($this->host, $this->user, $this->psw) or die(mysql_error() . "No Pudo conectarese al servidor");
        if ($db == "") {
            mysql_select_db($this->db, $this->link) or die(mysql_error() . "No existe la base de datos ".$this->db);
        } else {
            mysql_select_db($db, $this->link) or die(mysql_error() . "No existe la base de datos ".$this->db);
        }
        return $this->link;
    }

}
para realizar la conexion solo llamo ami clase y les paso los parametros que por defecto me pide el constructor.
$link= new Conexion("localhost","root","","bdclientes");
esto seria todo para poder conectar su base de datos. aunque a esta clase le podemos crear mas metodos para realizar consultas a la bd.