-->
Mostrando entradas con la etiqueta php. Mostrar todas las entradas
Mostrando entradas con la etiqueta php. Mostrar todas las entradas

Crear URL amigables con PHP

Como crear URL amigables con PHP

Como ya he comentado en anteriores artículos, es muy importante para el posicionamiento de una página web que todas sus URL sean amigables. Hace un par de días escribí un post donde os explicaba cómo crear URL amigables con .htaccess, en este artículo explicaremos la manera de crear URL amigables con PHP.

1) Crear la función url_amigables()

La función url_amigable recibe como parámetro el título de un artículo y realiza las siguientes operaciones:
  • Transformar el título en minúsculas con strtolower()
  • Quita acentos, sustituimos la ñ con str_replace()
  • Reemplaza caracteres especiales por guiones y eliminamos caracteres raros con preg_replace()
El código resultante es el siguiente:
<?php
function urls_amigables($url) {
$url = strtolower($url);
$find = array('á', 'é', 'í', 'ó', 'ú', 'ñ');
$repl = array('a', 'e', 'i', 'o', 'u', 'n');
$url = str_replace ($find, $repl, $url);
$find = array(' ', '&', '\r\n', '\n', '+');
$url = str_replace ($find, '-', $url);
$find = array('/[^a-z0-9\-<>]/', '/[\-]+/', '/<[^>]*>/');
$repl = array('', '-', '');
$url = preg_replace ($find, $repl, $url);
return $url;
}
?>


2) Cambiar las URL con Mod Rewrite

Editamos nuestro fichero .htaccess y escribimos el siguiente código:
RewriteEngine on
Rewriterule ^articulo/(.+)/(.+) articulo.php?id =$1&title=$2


3) Cambiar los links dinámicamente

Esto lo conseguimos con el siguiente código:
// La variable del título de la noticia
$url = "Este es un título";
// mostramos el titulo editado
// echo urls_amigables($url);
// mostramos la url terminada
echo “http://tu.sitio.web/articulo/”.$id.”/”.urls_amigables($url).”/”;



Si te ha gustado el artículo sobre Crear URL amigables con PHP puedes colaborar visitando a alguno de nuestros patrocinadores, con esto me ayudarás a mantener el Blog y pueda escribir más artículos.

ARTÍCULOS QUE TE PUEDEN INTERESAR

Cómo guardar la configuración de una red wifi en Windows 7
Cómo abrir puertos windows 7
Atajos de teclado de Windows
Windows 7 no muestra la fecha

Como conectar php con mysql

Tutorial PHP: Como conectar php con mysql

En este artículo vamos a conectar PHP con MySQL mediante un ejemplo cuyo código incluiré más adelante para que todo aquel que quiera pueda reutilizarlo.

¿Qué es MySQL?

MySQL es un sistema de gestión de bases de datos ralacional, multihilo y por supuesto multiusuario. Existen dos modalidades o licencias del MySQL:
  1. GNU GPL: Una licencia GNU GPL es una licencia pública orientada a proteger la libre distribución, modificación y uso de softare.
  2. Licencia de pago: Para todas aquellas empresas que quieren utilizar MySQL en productos privativos, es decir, aquellos que no son de libre distribución.

¿Cómo funciona PHP?

PHP funciona como la mayoría de lenguajes de script cuando se trata de acceder y manipular bases de datos:
  1. En primer lugar se establece la conexión con la base de datos.
  2. En segundo lugar se ejecutan las consultas en la base de datos.
  3. Para finalizar se cierra la conexión.
Como hemos dicho anteriormente, con PHP podemos conectarnos a múltiples sistemas de bases de datos aunque cada una de las conexiones tiene su propia nomenclatura. Para realizar las conexiones a las bases de datos PHP utiliza funciones genéricas precedidas normalmente por el nombre del sistema de base de datos, de modo que las funciones que ofrece el lenguaje para el acceso a cada tipo de base de datos son diferentes.

Función para conectar una base de datos MySQL con PHP

mysql_connect("NombreServidor","Usuario","Contraseña")
Los parámetros que utiliza la función mysql_connect son los siguientes:
  1. NombreServidor: Indica el nombre del servidor o la IP del mismo donde está la base de datos.
  2. Usuario: Identifica al usuario con acceso a la base de datos.
  3. Contraseña: Contraseña de acceso del Usuario a la base de datos.
Si se realiza con éxito la conexión la función devuelve un identificador del enlace con el sistema de bases de datos. Una vez establecida la conexión tenemos que indicar al sistema la base de datos con la que se queremos trabajar mediante la siguiente función.

Función para identificar la base de datos MySQL con PHP

mysql_select_db("NombreBaseDatos")
Identificada la base de datos MySQL con la que conectaremos y realizadas las consultas pertinentes deberemos cerrar la conexión entre MySQL y PHPY.

Función para cerrar la conexión entre la base de datos MySQL y PHP

mysql_close($conexion)

Ejemplo: Realizar conexión con MySQL y PHP

<?php

#Conectamos con MySQL
$conexion = mysql_connect("NombreServidor","Usuario","Contraseña")
or die ("Se ha producido un error al conectar con la bbdd");

#Seleccionamos la base de datos a utilizar
mysql_select_db("NombreBaseDatos")
or die("No se ha encontrado la bbdd");

# ####################################################### #
# Aquí insertaríamos las consultas sobre la base de datos #
# ####################################################### #

#Cerramos la conexión con la base de datos
mysql_close($conexion);

?>

Artículos que te pueden interesar

Como obtener las coordenadas de una dirección con Google maps

Tutorial: Como obtener las coordenadas de una dirección con Google maps

Buenos días, en este artículo voy a explicar como obtener las coordenadas de una dirección utilizando la API de Google maps.

Para realizar la conversión de coordenadas a dirección utilizaré el objeto Geocoder. El objeto Geocoder tiene otras utilidades como por ejemplo traducir direcciones en coordenadas, por lo tanto podemos concluir diciendo que el objeto geocorder es el encargado de la traducción de coordenadas a direcciones y viceversa.

Google no impone a todos los desarrolladores que quereamos utilizar el servicio de Geocoding incluir un mapa de Google en nuestra web.

Ejemplo: Obtener las coordenadas de una dirección (escrita en un input text), centrar la localización del mapa en pantalla y mostrar un marker.

<script type="text/javascript">
var geocoder;
var map;
function initialize() {
 geocoder = new google.maps.Geocoder();
 var latlng = new google.maps.LatLng(-34.397, 150.644);
 var myOptions = {
    zoom: 8,
    center: latlng,
    mapTypeId: google.maps.MapTypeId.ROADMAP
 }
 map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
}

function codeAddress() {
 var address = document.getElementById("address").value;
 geocoder.geocode( { 'address': address}, function(results, status) {
    if (status == google.maps.GeocoderStatus.OK) {
       map.setCenter(results[0].geometry.location);
       var marker = new google.maps.Marker({
          map: map,
          position: results[0].geometry.location
       });
    } else {
       alert("Geocode was not successful for the following reason: " + status);
    }
 });
}
</script>


Si te ha gustado el artículo sobre cómo corregir error "Apache shutdown unexpectedly" al iniciar Xampp te pido un favor: Haz clic sobre uno de los anuncios, con esto me ayudarás a mantener el Blog y pueda escribir más artículos.

ARTÍCULOS QUE TE PUEDEN INTERESAR

Cómo guardar la configuración de una red wifi en Windows 7
Cómo abrir puertos windows 7
Atajos de teclado de Windows
Windows 7 no muestra la fecha

Reducir cadena de texto mostrando puntos suspensivos

Tutorial PHP: Reducir cadena de texto mostrando puntos suspensivos

En ocasiones disponemos de una cadena de texto cuyo tamaño es superior al contenedor donde ésta debe mostrarse, en estas ocasiones viene muy bien disponer de la función reducir_texto.

La función reducir_texto tiene dos parámetros: La cadena de texto que se quiere reducir y el tamaño del texto que queremos mostrar.

A continuación os muestro el código mediante el cual podréis reducir una cadena de texto mostrando puntos suspensivos al final de la misma.

function recortar_texto($texto, $limite=100){
   $texto = trim($texto);
   $texto = strip_tags($texto);
   $tamano = strlen($texto);
   $resultado = '';
   if($tamano <= $limite){
      return $texto;
   }
   else{
      $texto = substr($texto, 0, $limite);
      $palabras = explode(' ', $texto);
      $resultado = implode(' ', $palabras);
      $resultado = '...';
   }
   return $resultado;
}

Ejemplo: Vamos a mostrar los primeros 24 caracteres de la siguiente cadena de texto; "En un lugar de la Mancha, de cuyo nombre no quiero acordarme"

// Asignamos el texto que queremos reducir a una variable
$CadenaTexto = En un lugar de la Mancha, de cuyo nombre no quiero acordarme;

// Realizamos la llamada a la función para mostrar 20 caracteres
echo recortar_texto($cadena, 24);

// Resultado mostrado en pantalla
En un lugar de la Mancha...


Como dibujar rutas en Google maps

Tutorial PHP: Como dibujar rutas en google maps

Google maps es el servicio de mapas de Google que ofrece imágenes vía satélite de todo el planetas junto con mapas de casi todas las ciudades de aquellos países que han colaborado y permiten que Google muestre a los millones de usuarios que utilizan este servicio gratuito de Google.

A continuación mostraremos un ejemplo práctico sobre como dibujar rutas en Google maps utilizando coordenadas o direcciones indistintamente.

Ejemplo: Como dibujar rutas en Google maps.



Para realizar el ejemplo sobre como dibujar rutas en Google maps utilizaremos dos clases básicas:

DirectionsServiceDirectionsRenderer : Donde la primera es la que realiza la petición del servicio al servidor y devuelve los datos y la segunda la encargada de mostrar la ruta seleccionada en nuestro mapa.

1) En primer lugar deberemos inicializar:
directionsService = new google.maps.DirectionsService();
directionsDisplay = new google.maps.DirectionsRenderer();
directionsDisplay.setMap(map);

2) En segundo lugar crearemos un objeto del tipo Request de la siguiente manera:
var request = {
 origin:start,
 destination:end,
 travelMode: google.maps.DirectionsTravelMode.DRIVING
};

3) En tercer lugar llamamos a la función que dibuja la ruta en Google maps
directionsService.route(request, function(result, status) {
   if (status == google.maps.DirectionsStatus.OK) {
      directionsDisplay.setMap(map);
      var mystr="";
      for(var i in result.routes){
         var mylegs=result.routes[i].legs
         for(var j in mylegs){
            mystr += mylegs[j].distance.text;
            mystr += " " + mylegs[j].duration.text+ " <br/> ";
         }
         mystr+=" <br/>";
         $(“#infoRecorrido).html(mystr);
      }
      directionsDisplay.setDirections(result);
   }
});


4) En este punto ya tenemos el ejemplo finalizado y estamos en disposición de dibujar rutas en Google maps.

El resultado de dibujar rutas con Google maps es el siguiente:



Si te ha gustado el artículo sobre cómo corregir error "Apache shutdown unexpectedly" al iniciar Xampp te pido un favor: Haz clic sobre uno de los anuncios, con esto me ayudarás a mantener el Blog y pueda escribir más artículos.

ARTÍCULOS QUE TE PUEDEN INTERESAR

Cómo guardar la configuración de una red wifi en Windows 7
Cómo abrir puertos windows 7
Atajos de teclado de Windows
Windows 7 no muestra la fecha

Mostrar últimos tweets de un usuario con PHP

Tutorial PHP: Mostrar últimos tweets de un usuario

A continuación mostramos una funcion PHP que devuelve los últimos tweets de un determinado usuario. El funcionamiento de la función PHP que muestra los últimos tweets de un usuario es muy sencillo, simplemente hay que pasarle dos parámetros:

  1. El nombre de la cuenta de twitter. Por ejemplo masetru
  2. El número de tweets que queremos mostrar. Por ejemplo mostrar los últimos 10 tweets de @masetru
A continuación os mostramos el código de la función php que muestra los últimos tweets de un determinado usuario:

<?php
$json = file_get_contents("http://twitter.com/status/user_timeline/masetru.json?count=10", true);
$decode = json_decode($json, true);
print_r($decode);
?>


MOSTRAR ÚLTIMOS TWEETS CON PHP: AÑADIDO 04/06/2013

function getTweets($tweetsToDisplay, $user_id) {

$twitterrequest = 'http://api.twitter.com/1/statuses/user_timeline.json?user_id=' . $user_id . '&include_rts=true&count=' . $tweetsToDisplay;
$twitterci = curl_init($twitterrequest);
curl_setopt($twitterci, CURLOPT_RETURNTRANSFER, TRUE);
$twitterinput = curl_exec($twitterci);
curl_close($twitterci);
return ($twitterinput);

}

$user_id = '99999999';
$var = json_decode(getTweets(1, $user_id));
$txt = $var[0]->text;
$txt = preg_replace('%(https?://)[^\s]*%', '$1...', $txt);
echo $txt;



Si te ha gustado el artículo sobre cómo corregir error "Apache shutdown unexpectedly" al iniciar Xampp te pido un favor: Haz clic sobre uno de los anuncios, con esto me ayudarás a mantener el Blog y pueda escribir más artículos.

ARTÍCULOS QUE TE PUEDEN INTERESAR

Cómo guardar la configuración de una red wifi en Windows 7
Cómo abrir puertos windows 7
Atajos de teclado de Windows
Windows 7 no muestra la fecha

Calcular distancia entre dos puntos con PHP

Tutorial PHP: Calcular distancia entre dos puntos

A través de la siguiente función PHP podremos obtener la distancia en kilómetros, millas o millas náuticas entre dos puntos.


Obtener color aleatorio con PHP

Tutorial PHP: Obtener color aleatorio

A continuación os muestro una función PHP que devuelve un color aleatorio en formato hexadecimal.



Generar clave aleatoria en php

Tutorial PHP: Como generar contraseñas aleatorias

En ocasiones nos será muy útil poder disponer de un método de generación automática de contraseñas, en mi caso en particular he necesitado generar contraseñas de manera aleatoria cuando he abordado proyectos web donde se requería que el usuario se diera de alta.

El procedimiento que sigo para generar contraseñas aleatorias es el siguiente:
  1. El futuro usuario registra su mail en una web o aplicación móvil.
  2. El sistema manda al usuario un correo electrónico con la contraseña que hemos generado de manera aleatoria y un link a la página de logueo.
  3. El usuario ingresa en el sistema y cambia su contraseña aleatoria por la que él quiera.
A continuación os muestro el código php que genera claves aleatorias:

Detectar idioma del visitante de tu web

Tutorial PHP: Como detectar el idioma del visitante de una web

En ocasiones nos puede interesar conocer el idioma del visitante de una web, imaginad que tenemos una web donde queremos mostrar el contenido en el idioma del visitante. 

La idea es muy sencilla: Si conocemos el código ISO del país del visitante podemos seleccionar el idioma del contenido de nuestra web.

En primer lugar recogemos el idioma del visitante de la siguiente manera:

$idioma ($_SERVER['HTTP_ACCEPT_LANGUAGE']02);

En segundo lugar, conociendo el código ISO del país, redireccionamos a nuestro visitante a la página que se nos antoje:

$idioma ($_SERVER['HTTP_ACCEPT_LANGUAGE']02);
if($idioma=='es'){
   ("Location: es.php");
}elseif($idioma=='fr'){
   ("Location: fr.php");
}else{
   ("Location: en.php");
}

En el ejemplo anterior podemos observar que redirigimos al visitante a la página es.php si el código ISO pertenece a 'España', lo redirigimos a fr.php si pertenece a 'Francia' y si el visitante es de otro país lo redirigimos a en.php

Tutorial PHP: Recibir notificación cuando Google visita tu web

Como recibir notificación cuando Google visita tu web

El siguiente script php detecta el User Agent de cada visitante de tu página web, cuando se trata de Google manda un correo electrónico notificándote que tu página web ha sido visitada por Google.
<?php
   if ( strpos( $_SERVER['HTTP_USER_AGENT'], 'Googlebot' ) !== false ) {
  mail('mail@micorreo.com','Google ha visitado tu web','Google ha visitado tu página web: http://www.tu_dominio.com'. $_SERVER['REQUEST_URI']);
   }
?>
Si observáis el código php anterior podéis comprobar que se puede personalizar, indicando el texto que deseáis recibir así como cambiar la cuenta de correo donde recibiréis la notificación.