Author Archive for:

Expresiones Regulares con PHP

Categories: PHP - Tags: , ,

La idea es poder manipular cadenas para hace cosas como por ejemplo modificar una cadena para convertirla en una URL amigable, evitar el uso de ciertos parametros en etiquetas HTML, validar correos y mil y un aplicaciones mas.
Por ejemplo si quisieramos validar un correo electronico:

1
2
3
4
$email="mio@mail.com"
$pattern = "^([A-Za-z0-9\.|-|_]{1,60})([@])";
$pattern .="([A-Za-z0-9\.|-|_]{1,60})(\.)([A-Za-z]{2,3})$";
ereg($pattern,$email)

El ejemplo anterior comprueba que solo se permita una arroba, que hay al menos dos letras en la extension del dominio, solo permite numeros, letras, guiones y subguiones ademas de una longitud minima de 6 caracteres.
Para eso se usa la funcion ereg() de php, los parametros mas usados son:

Tipo de Operador Ejemplo Descripción
Caracteres literales

Localización de un carácter concreto

a A y 6 % @ Letras, digitos y cualquier carácter especial
\$ \^ \+ \\ \? Precede un caracter especial con el signo \ para cancelar su significado
\n \t \r Nueva linea, tabulación y retorno de carro
\cJ \cG Códigos de control
\xa3 Códigos hexadecimales
Delimitadores ^ Empieza con
$ Termina con
Grupo de carácteres [aAeEiou] cualquier carácter incluído en [ ]
[^aAeEiou] cualquier carácter excepto aAeEiou
[a-fA-F0-9] cualquier carácter hexadecimal (’0′ a ’9′ o ‘a’ a ‘f’)
. cualquier carácter
[[:space:]] cualquier espacio (espacio \n \r o \t)
[[:alpha:]] cualquier letra
[[:digit:]] cualquier digito
[^[:space:]] cualquier carácter que no sea un espacio
Agrupaciones aplicadas a elementos + 1 o mas (”algunos”)
* 0 o mas (”quizas algunos”)
? 0 0 1 (”quizas a”)
{4} 4 exactos
{4,} 4 o más
{4,8} entre 4 y 8
Alternar | una u otra
Agrupando ( ) agrupación almacenandola a una variable
(?: ) agrupacion sin almacenar en variable

Eliminar HTML con PHP

Categories: PHP - Tags: , , ,

Cuando creamos una pequeña aplicacion donde los usuarios puedan dejar comentarios ya sea un blog un guestbook, etc; siempre corremos el riesgo que usuario maliciosos peguen etiquetas html con propaganda, links a otros sitios, codigo javascript etc, etc. En PHP es realmente simple evitar eso basta con usar una funcion PHP que nos hará muy fácil la vida llamada strip_tags().

Por ejemplo:

1
2
3
$saludo= '<strong>Hola mundo!</strong>';
echo strip_tags($saludo) ;
/// Eso nos devuelve Hola mundo!

Hasta ahi bastante util pero que ocurre si deseamos permitir alguna etiquetas inofensivas como <b>, <i>, <p>, etc.

Pues la solucion es:

1
2
// Se permite la etiqueta <p>
echo strip_tags($texto, '<p>');

Buscador en PHP parte 1

Categories: PHP - Tags: ,

Voy a hacer un tutorial basico de como crear un buscador en PHP

La base de datos

Usando el PHPMyAdmin creamos una base de datos llamada biblioteca, dentro de esta creamos las tablas:

  • libros con los campos: libro_id(int 10), libro_nombre(varchar 100), libro_fecha(date)
  • autores con los campos: autor_id(int 10), autor_nombre(varchar 35), autor_apellido(varchar 35), autor_bio(text)
  • categorias con los campo: categoria_id(int 10), categoria_nombre(varchar 35)

Establecemos como clave primaria libro_id para libros, autor_id para autores y categoria_id para categorias, estos campos tipo integer y con el extra auto_increment y con una longitud de 10.
Luego llenamos algunos datos para libro, autores y categorias

Puedes descarga la base de datos aqui

Conectar a la Base de Datos

Para eso vamos a crear un archivo llamado conexion.inc.php el cual vamos a incluir en cada pagina que necesitemos conectarnos a la base de datos.

1
2
3
4
5
6
7
8
9
10
<?php
$servidordb="localhost"; // nombre del servidor po lo general localhost
$usuariodb="root"; // usuario de la base de datos
$clavedb=""; // la clave si es tu pc por lo general va en blanco
$db="biblioteca"; // la base de datos
// aqui conecta al servidor sql, usuario y clave
$conexio = mysql_connect($servidordb, $usuariodb, $clavedb);
// conecto a la base de datos
mysql_select_db ($db, $conexio) OR die ("No se puede conectar");
?>

Envia correos con PHP

Categories: PHP - Tags: , ,

Enviar correos con PHP es sencillo, basta un solo comando “mail”, a continuación muestro un ejemplo incluyendo el formulario de contacto, el formulario esta sin hoja de estilos, en un nuevo post explicare como darle formato.

1
2
3
4
5
6
7
8
9
10
11
<form action="mailer.php" method="post"> <fieldset>
<legend>Contacto</legend>
<ul>
    <li><label>Nombre:</label>
<input name="fnombre" size="25" type="text" /></li>
    <li><label>Email:</label>
<input name="femail" size="25" type="text" /></li>
    <li><label>Mensaje:</label><textarea cols="30" rows="6" name="fmensaje"></textarea></li>
</ul>
</fieldset>
</form>

Y nuestro archivo mailer.php

1
2
3
4
5
6
7
8
9
10
$mensaje="";
$mensaje.="COntacto". "\n\n";
$mensaje.="Nombre: ".$_POST['fnombre']."\n";
$mensaje.="E-mail: ".$_POST['femail']."\n";
$mensaje.="Mensaje: ".$_POST['fmensaje']."\n";

$mail="mio@mail.com";
$subject="Contactenos";
mail($mail,$subject,$mensaje,"From: Contact&lt;".$_POST['femail']."&gt;");
?&gt;

Descarga todo el codigo aqui

Descarga videos youtube

Categories: Otros, PHP - Tags: , ,

Hemos visto varias paginas para bajar videos de youtube pero alguna vez nos gustaría crear nuestro propio downloader, bueno si sabemos un poco de PHP veremos que la cosa no es muy complicada, puedes ver como aqui