RSS
Facebook
Twitter

lunes, 24 de agosto de 2015

CURSO DE PHP - SESIONES Y COOKIE

seguimos con nuestro curso de php, donde veremos las sesión y cookie pero primero ¿que son las sesiones? las sesiones consiste en guardar datos almacenándolos en una variable global llamada $_SESSION esto con el fin de personalizar la aplicación y mejorar el control del sitio web.

las sesiones pueden almacenar cualquier cantidad de datos dándole su clave, valor de la sesión pero primero antes que todo se debe llamar primero la función session_start() esto inicia la sesión si no utilizamos esto no funcionara.

ahora ¿que son las cookie? las cookies son un mecanismo por el que se almacenan datos en el navegador remoto y poder así monitorizar o identificar a usuarios que vuelven al sito web, esto también nos permite almacenar cualquier valor, para eso utilizamos la función setcookie(clave, valor, tiempo,path, dominio, protocolo).

crearemos un archivo de login.php donde haremos nuestro esqueleto de html, aquí les dejo el link de descarga del archivo login.php

una vez que se han descargado el archivo que les deje y hayan echo su propia estructura comenzaremos a programar, ahora crearemos otro archivo llamado session_user.php comencemos:


//escapar caracteres raros que viene por post
$email = addslashes($_POST['email']);
$password = addslashes($_POST['password']);
//la validación si hay algo por post valida los campos
if (!empty($_POST['sbt_login'])) {
  if(empty($email) && empty($password)){
    echo "verifica que los campos esten completos";
  }else {
    //conectar a la base de datos
    $conect = new mysqli('localhost', 'root', 'root', 'registro');
     //en caso de que haya un error al conectarse
    if($conect->connect_error){
      echo "ocurrio un error al conectarse a la base de datos";
    }
     //verificar si el email existe
    $sql = "SELECT * FROM users WHERE email = '{$email}' AND password = '".md5($password)."'";
    $query = $conect->query($sql);
     //si existe porcederemos a inicar la sesion
    if ($query->num_rows > 0) {
      //inicializar la sesin
      session_start();
      //guardamos el email en una sesion 
      $_SESSION['USE'] = base64_encode($email);

      while ($user = $query->fetch_assoc()) {
        //con eso procederemos a guardar su id de la base de datos en la sesion
        //esto nos sirve con el fin de querer recuperar el id de usuario para usarlo en otra parte del codigo
        $_SESSION['USI'] = base64_encode(md5($user['id']));
      }
      //creamos una cookie con eso para verificar que el usuario haya iniciado sesion con existo
      //con un limite de 1 hora
      setcookie('LOG', base64_encode('us_lg'), time() + 3600, '/');

    } else {
      echo "verifica tu correo y contraseña";
    }

    $conect->close();
  }
}else {
  header('Location: /');
}





esto es todo lo que necesitamos para hacer que un usuario se logee, con esto nuestra aplicación básica esta echa, hemos aprendido muchas cosa y sobre todo conectarnos a nuestra base de datos mediante objetos y no por funciones, espero que le haya servido nos vemos en un próximo curso de php.

domingo, 16 de agosto de 2015

segiremos con nuetra pequeña aplicacion de php, donde ahora veremos las conexiones a la base de datos, pero aqui no veremos como utilizar las funciones que nos permite conectar a la nuestro phpmyadmin, trabajaremos sobre objetos, tal vez mucho no se sepan y otros sepan pero creo que es mucho mejor aprender a programar sobre objetos, poco a poco veremos como funciona esto.

bien ahora regresamos a nuestro código en el archivo registre.php donde añadiremos mas funciones:

$name = addslashes($_POST['name']);
$email = addslashes($_POST['email']);
$password = addslashes($_POST['password']);

if (!empty($_POST['sbt_registre'])) {
  if(empty($name) && empty($email) && empty($password)){
    echo "verifica que los campos esten completos";
  }elseif (strlen($password) < 6) {
    echo "el la contraseña debe de tener mas de 6 digitos";
  }
   // nuevo código que vamos añadir
   //después que todos los datos se validen procederemos a nuestra conexión a la bd
  else {
      // instanciamos el objeto mysqli que nos permite conectar a la BD o base de datos.
      //este objeto recibe 4 parámetros principales que son:
      //el host, usuario, contraseña y la base de datos
      //si tu phpmyadmin no tiene contraseña puedes dejarlo entre comillas asi ''
      $conect = new mysqli('localhost', 'root', 'root', 'registro');
       //si existe un error en la conexión mandara el error
      if($conect->connect_error){
        echo "ocurrio un error al conectarse a la base de datos";
     }
      //si existe un usuario en la base de datos cuando se envia el email.
      $sql = "SELECT * FROM users WHERE email = '{$email}'";
       // ejecutamos nustro query para la consulta.
      $query = $conect->query($sql);
      // affected_rows obtiene el numero de filas afectada
      if ($conect->affected_rows > 0) {
         echo "usuario existente";
     }else {
         //el query para insertar los datos 
         //utiliza md5 para encriptar la contraseña 
   $insert = $conect->query("INSERT INTO users (name, email, password) VALUES ('{$name}','{$email}','".md5($password)."')");

           if ($insert) {
             echo "registrado";
           }else {
             echo "hubo un error al registrarte";
           }
        $conect->close();
    }
  }
}else {
  header('Location: /');
}


aquí esta todo nuestro código que nos permitirá registrar a un usuario, aquí les dejo el link de la documentación de php donde se trabaja con objetos al conectarnos en el phpmyadmin.

asta aquí el tutorial nos vemos en la siguiente parte donde veremos como hacer un inicio de sesiones las sesiones y las cokie.



viernes, 14 de agosto de 2015

este tutorial es algo corto ya que solo nos vamos a limitar añadir unas lineas de código, donde haremos que cuando se envié los datos por post, eliminar cualquier tipo de caracteres raro para evitar ataque a nuestra bases de datos oh evitar que se ejecute código raro en nuestra aplicación.

hay varios tipos de funciones en php que nos permiten escapar caracteres raros una de ellas es addslashes que escapa un string con barras invertidas, aquí el link de la documentación de php para que lo lean y vean ejemplos.

otras funciones son como trim, htmlentities, cada cual son diferente, con distintos funcionamientos, otra que me gusta utilizar es str_replace donde yo le puedo indicar que escapar, pero ahora veremos un ejemplo corto.

si tenemos esto:

$scape = array('<','script','%20%','--','\\','>');
str_replace($scape, ' ', $_POST['item']);

bien esto lo que hace es que str_replace recibe 3 parámetros el primero es el escape que va a recibir que esta en la variable $scape que contiene un array donde le dije que si hay algún carácter raro que viene por post que es el 3 parámetro, lo replace por nada que es el segundo parámetro.
str_replace recibe: el escape, la sustitución, y el string a escapar.

con esto regresamos a nuestro código, si recién estas viendo este post mira la entrada anterior a qui el link donde teníamos esto en nuestro código.

$name = $_POST['name'];
$email = $_POST['email'];
$password = $_POST['password'];

le añadiremos la función de addslashes para escapar caracteres y mantener la seguridad de la aplicación.

$name = addslashes($_POST['name']);
$email = addslashes($_POST['email']);
$password = addslashes($_POST['password']);

o también puede crear una función donde puedan utilizar str_replace asi:

function escape($param) {
     $scape = array('<','script','%20%','--','\\','>');
      return str_replace($scape, ' ', $param);
}

$name = escape($_POST['name']);
$email = escape($_POST['email']);
$password = escape($_POST['password']);

esto le retorna el valor con los caracteres a escapados donde se le especifico en la variable scape si quieres añadir mas carácter de escape recuerda hacerlo en la variable scape dentro del array separado por comas. 


esto es todo nos veremos en el siguiente tutorial donde veremos las sesiones asta pronto.

viernes, 7 de agosto de 2015

comenzamos con el curso de php donde veremos hoy como hacer un registro de usuario con php y mysql, pero primera haremos la maquetacion del html algo sencillo donde crearemos varios input donde contendremos campos como nombre, email y el password.

bien lo primero que tienen que tener para correr con el servidor de php es el programa de xampp que es mas conocido puedes descargar tambien wampserver, tambien tiene una opcion mucha mas lijera que es un servidor portable como lo es uniform server que no pesa mucho apenas unos 160 mb mas o menos xampp pesa 1.28 gb pueden descargarse cualquiera de los 2 es muy facil la instalacion.

después de la instalación de nuestro server en caso de tener instalado xampp se irán a disco local c > xampp > htdocs y crean una carpeta donde contendremos el proyecto, pueden llamarlo como quieran yo la llamare registro y si tienen se han descargado uniform server le dejara un archivo donde tendrán que descomprimirlo donde quieran una vez descomprimido les dejara una carpeta llamada
UniServerZ entran y donde dice www hay tendrán que crear el proyecto.

una vez creada su carpeta abren su editor favorito yo utilizare atom

jueves, 23 de julio de 2015

en este temas me centraré en los ide gratis que Eh utilizado, sobre cuales son los mejores para el trabajo en si en php.

¿QUE ES UN IDE? 

primero que nada IDE en sus siglas en ingles significa integrated development environment(ambiente de desarollo integrado), bueno un ide es un editor de código fuente para la creación de aplicaciones ya se web oh software, también existe IDE donde se dedican aun solo lenguaje de programación así como hay otros IDE donde integran muchos lenguajes de programación.
ahora veremos los 4 editores que a mi me gustan mucho y sobre todo porque tiene una muy buena interfaz, instalación de theme, package etc.

BRACKETS 

este es un ide lanzado por adobe lo cual es casi casi un nuevo proyecto porque ya lleva un tiempo en el mercado.
hablemos sobre su interfaz es muy limpia, bonito tiene varios complementos que son únicos en este editor ya que tiene para exportar los diseños hechos en .psd que son archivos de photoshop, tiene digamos una copia del navegador Chrome ya que a la hora de escribir código muestra automáticamente en tiempo real lo que estas editado, esto porque tiene integrado nodejs en su navegador, tiene su propio server para ejecutar archivos en html, también puedes proporcionarle la url del proyecto php que tienes, en los archivos css a la hora de escribir background puedes poner el puntero donde esta el color le das clic derecho > edicion y te saldrá una ventana donde te aparecerán los colores.
en los package tiene varios que son muy buenos sobre todo de php donde hay documentación para las funciones, autocompletados y mas.

ATOM

no hace mucho se lanzó la versión 1 donde hay muchas mejores es un ide interesante sobre todo los autocompletados en html, css, javascript creo que también lo tiene y de php, una muy buena interfaz tiene incluido el package control, cosa que no es necesario instalarlo como sublime text lo único malo que me cabe decir es que no tiene vista previa como brackets pero de hay esta muy bien este ide muy interesante todo.

NETBEANS

un potente ide para los distintos proyectos ya sea de java oh del mismo php, en lo principal me gusta porque es lo mejor para trabajos así de php donde tienes que implementar interfaces definidas y el propio ide te dice que tienes que implementar le das clic y ya, te aparece sin tanto trabajo, tiene un muy buen autocompletado de metodo, atributos, clases etc.
puedes personalizar tu tema, cambiar de forma las distintas interfaces que trae NetBeans los package, también te da la posibilidad de instalar frameworks desde el propio netbeans que traen, tiene incluido el composer que sirve para installar las independencias, contiene incluido en debugger para la depuración.
también a la hora de crear un proyecto te ofrece distintas formas donde puedes crear un proyecto vacío o existente en tu servidor local así como también ofrece soporte para conectarte aun tu servidor por ftp, conectarte también a tu base de datos, vista previa, es un ide totalmente completo.
estos son los ide que eh utilizado son muy buenos cada uno pero en lo principal para proyectos así que contiene muchas clases interfaces le recomendaría NetBeans es muy potente y es lo mejor para trabajos en php algo grande y a lo largo del curso de php que veremos vamos a necesitar netbeans, llegara el momento en el que tendremos un proyecto algo grande con muchos archivos y carpetas ustedes me verán con cualquiera de estos editores ustedes elijen el que quieren utilizar estas son opiniones propias sobre lo que ofrece cada uno de estos ide, aquí no nombre a sublime text porque es uno lo mas conocidos y utilizados, a mi me gusta probar los distintos productos que hay en el mercado sobre estos ide que nos ofrecen cada uno.

lunes, 20 de julio de 2015

CURSO DE PHP

TEMARIO DEL CURSO PHP


Después de una larga ausencia, Eh vuelto para ofrecerles los distintos temas que veremos en PHP, donde aprenderan lo básico, asta saber la programación orientados a objetos, también crearan su propio cms etc.
aquí les dejare el temario de PHP que veremos a lo largo de esta semana, también les dejare que IDE podremos utilizar por que hay varias cantidad de editores que son muy buenos, pronto haré un articulo donde que pequeñas ventajas hay sobre un editor. 

TEMARIO 1

Nivel: Basico

Sistemas de registro de usuarios
  1. Validar un formulario en PHP
  2. Seguridad de envió de datos
  3. Sesiones
  4. Cookie
  5. Insertar usuario
  6. Autenticación de usuario

TEMARIO 2

Nivel: Basico

aplicaciones crud

  1. Conexión a la base de datos mysqli
  2. Crear o insertar registros
  3. Leer registros.
  4. Eliminar registros.
  5. Actualizar registros

domingo, 3 de mayo de 2015

PLANTILLAS HTML

Recursos

bueno este no es un tutorial como los que voy hacer próximamente, como dije no solo me centrare en un solo temas como php, xml, etc. si no también que esta web se centrara en publicar recursos para ustedes o mejor dicho publicare también plantillas html echa por mi espero que les guste mis diseños.

esto lo hago con el fin de se ahorren tiempo en hacer plantillas para su web cosa que se ahorran un poco a la hora de escribir código, incluso puedes implementar las plantillas que hago en tu wordpress, también puedes cambiar un poco el diseño si algo no te gusta poco a poco iré subiendo plantillas html.

sábado, 2 de mayo de 2015

Aprender a utilizar xml

Que es xml

desde ahora comenzare hacer tutoriales ya que quiero enseñar lo poco que se para ustedes habran cosas interesantes ya que los cursos se trata de diferentes temas y creo que les gustara!.

empecemos un poco de información desde wikipedia haber que no dice.

XML, siglas en inglés de Extensible Markup Language (lenguaje de marcas extensible), es un lenguaje de marcas desarrollado por el World Wide Web Consortium (W3C) utilizado para almacenar datos en forma legible. Deriva del lenguaje SGML y permite definir la gramática de lenguajes específicos (de la misma manera que HTML es a su vez un lenguaje definido por SGML) para estructurar documentos grandes. A diferencia de otros lenguajes, XML da soporte a bases de datos, siendo útil cuando varias aplicaciones deben comunicarse entre sí o integrar información.

  • Seguidores

  • Blogroll

  • Acerca de

    este blog fue creado con un fin de la personas aprendan el manejo de la programación, aprenda sus ventajas y desventajas y aprender los recursos que hay para que una pagina web sea dinámica