Estas viendo entradas relacionadas a ‘PHP’


Clase para conectar PHP y MySL

Miércoles, Julio 7th, 2010

En PHP existen funciones para trabajar cómodamente con bases de datos MySQL, sin embargo, usar estas funciones puede llegar a hacer que nuestro código se alargue un poco más de lo que en realidad debería, por eso es bueno siempre utilizar la orientación a objetos cuando necesitamos hacer cosas que requieren de varios usos. A continuación, crearemos una clases para conectar PHP con una base de datos MySQL:

<?php
class ConSQL{
 private $conexion;
 public function Conectar() {
  $this->conexion = mysql_connect("localhost","root","");
  if(!$this->conexion){
   echo "No se ha podido conectar a la base de datos.";
  }
  else{
   mysql_select_db("control",$this->conexion);
  }
 } /* Aqui termina el metodo Conectar */

 public function Consulta($sql){
  $resultado = mysql_query($sql,$this->conexion);
  if(!$resultado){
   echo "Error en la base de datos: ".mysql_error();
   exit;
  }
  return $resultado;
 } /* Aqui termina el metodo Consulta */

}
?>

Creamos una clase y dos funciones (en este caso son métodos) y de ahí podemos hacer los siguiente, que sería un ejemplo de uso de esta clase.

<?php
include('config.php');
$db = new ConSQL();
$db->Conectar();

$nombre = $_POST['nombre'];
$correo = $_POST['correo'];
$passw = $_POST['passw'];

$db->Consulta("INSERT INTO usuarios (nombre, email, contrasenia, tipo) VALUES('$nombre','$correo','$passw',1)");
?>

Básicamente permite realizar consultas a la base de datos y obviamente conectarse.

Generar números aleatorios en PHP

Lunes, Mayo 3rd, 2010

Para generar números aleatorios en PHP vamos a usar la función rand(), que permite dentro de un rango de números, elegir uno cualquiera y mostrarlo o usarlo. Su sintaxis es simple, si no le ponemos parámetros, elige cualquier número entero, pero si le agregamos sus dos parámetros (mínimo o máximo) claramente nos mostrará un número dentro de ese rango. Sin embargo, con el número que retorna la función nosotros podemos utilizarlo para otras cosas, como para hacer otras operaciones, ejemplo:

for ($i=0; $i<6; $i++) {
    $d=rand(1,30)%2;
    echo $d;
}

Que mostrará una cadena de no más de 6 caracteres con números de entre 1 y 30 pero nos mostrará el residuo de ese número usando la división por 2. Otro ejemplo de su uso es por medio de los arreglos en PHP, podemos acceder aleatoriamente a un arreglo en PHP a través de la función rand() de la siguiente manera:

<?php
$arreglo = array("a","e","i","o","u");
echo $arreglo[rand(0,4)];
?> 

El código anterior nos devuelve una letra aleatoria de un arreglo utilizando la función rand() que retorna un entero, que es como se definen las posiciones de los arreglos. Otro ejemplo claro de su uso es como para generar números de serie, he aquí un ejemplo de la página oficial de PHP:

<?php
for ($i=0; $i<6; $i++) {
    $d=rand(1,30)%2;
    echo $d ? chr(rand(65,90)) : chr(rand(48,57));
}
?> 

Enlace | Función Rand

Reemplazar caracter de una cadena con PHP

Martes, Abril 20th, 2010

En PHP existe una función llamada str_replace(); que permite reemplazar caracteres de una cadena. Pero que pasa si por ejemplo nos entregan una cadena de caracteres y queremos reemplazar una letra específica de la misma, pues para esto utilizamos un ciclo que recorra toda la cadena y un condicional que identifique la letra que estamos buscando. Bastante parecido a un algoritmo de búsqueda.

La sintaxis de la función str_replace(); tiene 3 parámetros, el primero es la cadena a buscar, el segundo es la cadena por la que se va a reemplazar y por último se pasa como parámetro la cadena original. Veamos un ejemplo:

<?php
$cadena = "Hola programadores del mundo";

for($i=0;$i<strlen($cadena);$i++){
	if($cadena[$i] == "a"){
                $cadena[$i] = "@";
	}
}
echo $cadena;
?>

Las cadenas de texto en PHP funcionan como un arreglo de caracteres, por lo que podemos acceder a partes de él como si de un arreglo se tratara. Eso sería una forma, sin embargo la función str_replace() nos simplifica ese trabajo:

$cadena = str_replace("a","@",$cadena);

Solo con la función anterior podemos reemplazar la cantidad de código que hemos utilizado anteriormente para prácticamente lo mismo.

Enlace | Función str_replace(); desde la página oficial de PHP