RSS
Facebook
Twitter

martes, 26 de julio de 2016


luego de un largo tiempo de poder desarrollar remit donde cuente casi las misma funcionalidades que un framework de php capaz de personalizar el acceso a rutas y hacer templates y con el fin de manejar código de javascript solo donde sea necesario en rutas elegidas, sobre todo generar una vista para el usuario.

entre las cualidades de remit destaca, pasar datos a la vista, incluir un archivo oh extender de otra plantilla html, otra de las cualidades es de crear grupos de rutas y sobre todo simular métodos como:

sábado, 30 de abril de 2016

Engine redis Php

hoy les vengo a presentar mi nuevo proyecto es fue lanzado hace unas semanas, se trata de un template engine para php, si ha utilizado la plantilla de laravel llamado blade sabrás como funciona los template.

es muy sencillo y fácil de utilizar, puedes extender archivos y crear bloques de para la salida el archivo compilado, se puede utilizar también como la funciones de php como un if, else, elseif también como lo iteradores de foreach, for y while.

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.
  • 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