jueves, 31 de mayo de 2012

Instalar Sublime Text 2 en Ubuntu 12.04

 
Agregamos el siguiente PPA:

sudo add-apt-repository ppa:webupd8team/sublime-text-2 

Actualizamos:

sudo apt-get update 

Instalamos:

sudo apt-get install sublime-text-2 

Y con ello tendremos Sublime Text instalado en:

/usr/lib/sublime-text-2

miércoles, 16 de mayo de 2012

Listar archivos de un directorio con php


Insertamos la Ruta con opendir() luego realizamos un bucle  while ($archivo = readdir($directorio))  para poder recorrer todo el directorio y seleccionar los archivos para mostrarlo en nuestro navegador.

EJEMPLO


<?php
$ruta = "../sitio/"; // Indicar ruta
$directorio=opendir($ruta);
echo "Directorio actual:<br>$ruta<br>";
echo "Archivos:<br>";
while ($archivo = readdir($directorio))
echo "$archivo<br>";
closedir($directorio);
?>

martes, 15 de mayo de 2012

Aumentar tamaño de archivo para subir en PHP

Cuando desarrollamos aplicaciones web en PHP, corriendo bajo Apache, existe una limitación por defecto en el tamaño de los archivos que se pueden subir desde el cliente (el navegador del usuario), que normalmente es de 2 MB. Es decir, si queremos subir una imagen de 3 MB, por ejemplo, el sistema nos devolvería un error a causa de este límite.
Ésto, a la hora de desarrollar ciertas aplicaciones web, como un blog con WordPress en el que tengamos que subir fotos o vídeos de más de 2 MB, o un sitio web corporativo donde los usuarios puedan enviar documentación a través de un formulario, etc., se convierte en un problema, con fácil solución como vemos a continuación.
Existen varias formas de evitar este límite impuesto en una aplicación basada en PHP y Apache. 

Vamos a ver 2 formas de resolver esta limitación:

1. Modificando el fichero de configuración php.ini global

Primero de todo tenemos que localizar el archivo de configuración (global) de PHP (php.ini) que puede estar ubicado en diferentes rutas dependiendo del sistema operativo o de la distribución Linux que usemos. Y una vez localizado, tenemos que editarlo y modificar las siguientes líneas:

upload_max_filesize = 10M
post_max_size = 20M
max_execution_time = 180


Donde:

upload_max_filesize = 10M
Aumenta el tamaño máximo del fichero a subir a 10 MB.

post_max_size = 20M
Indica el tamaño máximo de carga por envío, que debe ser igual o mayor al valor anterior. En este caso podríamos enviar varios ficheros en un sólo envío, hasta una capacidad máxima de 20 MB.

max_execution_time = 180
Tiempo máximo (en segundos) de ejecución de los scripts, que en nuestro ejemplo sería de 3 minutos para realizar el total de la carga (subida) de archivos.

Ahora sólo tenemos que guardar los cambios del fichero php.ini y reiniciar el servidor web Apache.

2. Utilizar .htaccess

Otra forma de ampliar el tamaño máximo de los ficheros a subir es indicándolo mediante un fichero de configuración de Apache .htaccess . Tenemos que crear o modificar el fichero .htaccess en la raíz del sitio web (lo que sería recursivo para todos los subdirectorios de la web), o en el directorio en el que quieres que tenga efecto (su efecto sería recursivo para los subdirectorios hijos de éste), y colocar las siguientes líneas:

php_value upload_max_filesize 10M
php_value post_max_size 20M
php_value max_execution_time 180


La interpretación de estas líneas son similares al caso anterior.

Autor: http://vitaminaweb.com/aumentar-el-tamano-maximo-de-archivo-para-subir-con-php-y-apache_557

viernes, 11 de mayo de 2012

Mostrar Imagen desde directorio con PHP


Abrimos el archivo con opendir(), luego recorremos la búsqueda con while ($file = readdir($filehandle))  en el directorio , luego verificamos si hay archivos en el directorio con la sentencia if() y por ultimo extraemos los archivos  con GetImageSize( ) para luego mostrarlos con <img>.


EJEMPLO


<?php
$ruta = "img/galeria/"; // Indicar ruta
$filehandle = opendir($ruta); // Abrir archivos
while ($file = readdir($filehandle)) {
if ($file != "." && $file != "..") {
$tamanyo = GetImageSize($ruta . $file);
       ?>
<img src="<?php echo $ruta.$file ?>" width="30px">Img Uno<br>    
      <?php


closedir($filehandle); // Fin lectura archivos
?>

lunes, 7 de mayo de 2012

Extraer archivo con "file_get_contents()" y luego darle valor "constr_replace()"


Usando (diccionario = array) para poder almacenar todo los valores que voy a reemplazar, luego realizo un function para poder ejecutar el html , primero voy a extraer el archivo index1.php con "file_get_contents('index1.php')", luego realizo "foreach" para buscar y luego reemplazarlo con el "str_replace($clave, $valor, $html)" y por ultimo ejecuto el "ejecutarHtml()".


controlador.php


<?php
$diccionario = array(
        '{titulo}'=>'Titulo de Desarrollo Geek',
        '{slogan}'=>'slogan de Desarrollo Geek',
        '{subtitulo}'=>'Subtitulo de Desarrollo Geek',
        '{autor}'=>'Juan Carlos Rivera Poccomo');


function ejecutarHtml(){
    global $diccionario;
    $html = file_get_contents('index1.php');
    foreach ($diccionario as $clave => $valor) {
    $html = str_replace($clave, $valor, $html);
    }
    echo $html;
}


ejecutarHtml();
?>

index1.php


<!DOCTYPE html>
<html lang="es">
<head>
<meta charset="utf-8">
<title>{titulo} - {subtitulo}</title>
</head>
<body>
<header id="contenedor-cabecera">
<hgroup>
   <h1>{titulo}</h1>
   <h2>{slogan}</h2>
    <h3>{autor}</h3>
</hgroup>
</header>
</body>
</html>

miércoles, 2 de mayo de 2012

fetch_assoc en PHP


Retorna una matriz de strings asociativa que representa a la fila obtenida del resultset, donde cada llave de la matriz corresponde al nombre de una de las columnas de éste; o NULL si es que no le quedan filas.
Si dos o más columnas del resultado tienen el mismo nombre de campo, la última columna tomará precedencia. Para acceder a la(s) otra(s) columna(s) con el mismo nombre, se necesita ya sea acceder al resultado usando los índices numéricos gracias a mysqli_fetch_row(), ya sea añadirle alias a los campos.
Estilo por procedimientos


Estilo orientado a objetos
mysqli_result::fetch_assoc ( void )


Estilo por procedimientos
mysqli_fetch_assoc ( mysqli_result $result )

EJEMPLO 1


<?php
$mysqli = new mysqli("localhost", "root", "admin", "demo");

/* verificar la conexión */
if (mysqli_connect_errno()) {
    printf("Conexión fallida: %s\n", mysqli_connect_error());
    exit();
}

$consulta = "SELECT nombre, apellido FROM usuarios";

if ($result = $mysqli->query($consulta)) {

    /* obtener array asociativo */
    while ($row = $result->fetch_assoc()) {
        printf ("%s (%s)\n", $row["nombre"], $row["apellido"]);
    }

    /* liberar el resultset */
    $result->free();
}

/* cerrar la conexión */
$mysqli->close();
?>

EJEMPLO 2

<?php
$mysqli = new mysqli("localhost""root""admin""demo");

/* verificar la conexión */
if (mysqli_connect_errno()) {
    printf("Conexión fallida: %s\n"mysqli_connect_error());
    exit();
}

$consulta "SELECT nombre, apellido FROM usuarios";

if ($result = mysqli_query($link, $query)) {

    /* obtener array asociativo */
    while ($row = mysqli_fetch_assoc($result)) {
        printf ("%s (%s)\n", $row["nombre"], $row["apellido"]);
    }

    /* liberar el conjunto de resultados */
    mysqli_free_result($result);
}

/* cerrar la conexión */
mysqli_close($link);
?>




sábado, 3 de marzo de 2012

Activar cURL

Pasos:
  1. Ir al phpinfo(). Si no saben cómo hacerlo, hagan lo siguiente: vayan a su navegador, escriben localhost, y luego en la parte izquierda dice phpinfo(), dan clic ahí, y tendrán toda la info del php instalado en su máquina.

  2. Una vez ahí, ubicarse en el campo Loaded configuration file, en esa ruta que en mi caso es así: C:\xampp\apache\bin\php.ini (a partir de la versión 1.7 del XAMPP dicha ruta cambió a C:\xampp\php\php.ini) tienen el archivo de configuración que usa el php para cargar las librerías, extensiones, etc.

  3. Abrir el php.ini con cualquier editor de texto según la ruta vista en el paso 2 y buscar la siguiente línea: ;extension=php_curl.dll

  4. Como ya se dieron cuenta, la línea que buscaron está comentada con < ; >. Quiten el punto y coma y guarden los cambios hechos en el archivo. Luego, reinician el servidor apache. Con esto lo que se ha logrado es que nuestras aplicaciones puedan usar normalmente cURL. Para comprobar que la librería está correctamente activada, pueden echar una mirada nuevamente al phpinfo() como se explica en el paso 1.

  5. Ahora que si lo que quieren es trabajar con cURL a través de la línea de comandos de win2, deberán buscar los archivos libeay32.dll yssleay32.dll que se encuentran dentro del directorio donde está instalado nuestro php, si usaron xampp, lo encuentran generalmente en C:\xampp\php y buscan dentro de ese dir dichos archivos. Sirven también los archivos que se encuentran dentro de C:\xampp\apache\bin, son los mismos archivos, no hay diferencia.

  6. Una vez hayan encontrado dichos archivos, los deberán copiar y pegar dentro de la carpeta SYSTEM de su máquina windows (por ejemplo: C:\winnt\system32 ó C:\windows\system).

  7. Finalmente podemos probar yendo a la línea de comandos de windows y probar escribiendo: curl. Tendrán una respuesta similar a esto:curl: try 'curl --help' or 'curl --manual' for more information