enlaces utiles

Miguel Manchego

php, css, ajax y de todo un poco

  • Home
  • About
  • Agencia de Publicidad
  • Contactanos
  • Proyectos

Evitar hotlinking con httaccess

Posted by admin in May 25th 2009  

A veces ocurre que otros blogs roban la informacion que nosotros publicamos, incluso los graficos que subimos los jalan directamnte de nuestro servidor, aprovechándose de nuestros recursos y consumiendo nuestro ancho de banda, esto se llama hotlinking, para evitar esto lo mejor es usando un sencillo archivo httaccess:

1
2
3
4
5
6
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www\.)?domain\.com/.*$ [NC]
RewriteRule .*\.(gif|jpg)$ http://www.domain.com/eatme.jpe [R,NC,L]
</ifModule>

Donde dice domain.com colocas el dominio real de tu página web

No Comment
under: Otros
Tags: Posicionamiento, spam
Digg it Add to del.icio.us Stumble it add to technorati

PHP Como subir archivos de mas de 2Mb

Posted by admin in March 17th 2009  

A veces ocurre que queremos subir a nuestro servidor un archivo zip o algun diseño y estos jalan mas de 2 Mb pero nuestro hosting no lo permite, no es complicado solucionar este problema sin tener que editar el archivo php.ini, a menos que tengan un servidor virtual o uno dedicado (es raro que nosotros simples mortales tengamos uno asi).

Permitir subir archivos de mas de 2Mb

Para solucionarlo basta modificar al archivo .httacces

1
2
3
4
php_value upload_max_filesize 20M
php_value post_max_size 20M
php_value max_execution_time 200
php_value max_input_time 200

Con ese pequeño cambio ya deberias poder subir archivos de hasta 20Mb,

¿Cómo creo un formulario para subir archivos?

Hay varias formas de hacerlo, en mi blog puedes ver un par usando ajax

  • Subir archivos con AJAX
  • Subir multiples archivos
No Comment
under: PHP
Tags: formulario, PHP
Digg it Add to del.icio.us Stumble it add to technorati

Subir Multiples Archivos Ajax jquery

Posted by admin in March 17th 2009  

Siempre recordemos que no se puede subir archivos usando AJAX, porque el objeto ajax no soporta el enctype requerido para subir archivos asi que se usa un iframe para emular el proceso. Voy a explicar como hacer esto con jquery y ajax

El formulario para subir archivos

1
2
3
4
5
6
7
8
9
<form action="upload.php" id="frm_uploader" name="frm_uploader" method="post" enctype="multipart/form-data">
<ol>
    <li><label>Name:</label><input type="text" id="cfname" name="fname" size="30" class="required" /></li>
        <li><label>E-mail:</label><input type="text" id="cfemail" name="femail" size="30" class="required email" /></li>
    <li><label>Select Files</label><input name="ffoto[]" type="file" class="multi" accept="gif|jpg|jpeg|png|pdf|zip|rar|ai|eps|mp3|avi|wmv|mpg|mpeg|cdr" /></li>
        <li><p align="center"><input type="submit" name="submit" value="Upload Now" class="btn" /></p></li>
</ol>
</fieldset>
</form>

AJAX Jquery

Incluimos las librerias javascript, el script automaticamente buscará el campo con la clase multi

1
2
<script language="javascript" src="js/jquery-1.31.js"></script>
<script language="javascript" src="js/jquery.MultiFile.pack.js"></script>

PHP para recibir los archivos

Este script permite subir multiples archivos como un array, asi que empezemos por ahi

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?php
    $cuales="";
     /// Vemos cuantos archivos hemos subido
    $nro=count($_FILES["ffoto"]["name"]);
    /// Empezamos el array
    for ($i=1; $i<$nro; $i++) {
    $file_name=$_FILES["ffoto"]["name"][$i];
    $file_size=$_FILES["ffoto"]["size"][$i];
    $file_type=$_FILES["ffoto"]["type"][$i];
    if($file_name!=""){
        // verifica carpeta
        $nombre_archivo=$_POST['femail'];
        if (!file_exists('userfiles'.$nombre_archivo)) {
            mkdir('userfiles/'.$nombre_archivo,0777);
        }
        $path="userfiles/".$nombre_archivo;    
        // sube archivo
        copy($_FILES["ffoto"]['tmp_name'][$i], $path.'/'.$file_name) ;
        echo '<p align="center">Your file <b>'.$file_name.'</b> was successfully uploaded</p>';
        $cuales.=$file_name." ";
    } else {
        echo '<br><br><p align="center"><b>Error with '.$file_name.'</b></p>';
    }

Puedes decargar este plugin jquery y ver mas ejemplos desde la pagina de su creador

No Comment
under: AJAX
Tags: AJAX, jquery, PHP
Digg it Add to del.icio.us Stumble it add to technorati

Incluir tooltip en mapa de imagenes jquery

Posted by admin in March 16th 2009  

Usando un plugin para jquery voy a explicar como colocar tooltips en un mapa de imagen.

HTML del mapa de imagenes

Es practicamente igual que cualquier mapa de imagenes, title es la descripcion

1
2
3
4
5
6
7
8
9
10
11
12
<p align="center">
    <img src="mapa.gif" border="0" usemap="#mimapa" id="map" width="480" height="269" />
<map name="mimapa" id="mimapa">
  <area shape="circle" coords="199,51,9" href="http://www.koblenz.de/" alt="" title="Toboganes" />
  <area shape="circle" coords="169,53,9" href="http://www.wiesbaden.de/" alt="" title="Mamut" />
  <area shape="circle" coords="137,28,9" href="http://www.mainz.de/" alt="" title="Pistas Blandas" />
  <area shape="circle" coords="123,60,9" href="http://www.frankfurt.de/" alt="" title="Super Tobogan Gigante" />
  <area shape="circle" coords="88,24,9" href="http://www.mannheim.de/" alt="" title="Black Hole" />
  <area shape="circle" coords="89,76,9" href="http://www.heidelberg.de/" alt="Heidelberg" title="Piscina Cadetes" />
  <area shape="circle" coords="83,97,9" href="http://www.stuttgart.de/" alt="" title="Piscina Infantes" />
</map>
</p>

Agregar el plugin

Para agregar jquery y e plugin bastan un par de lineas de codigo

1
2
<script language="javascript" src="jquery-1.3.2.min.js" type="text/javascript"></script>
<script language="javascript" src="jquery.tooltip.min.js" type="text/javascript"></script>

Al plugin lo podemos configurar con una sola linea de codigo, pero yo voy a agregarle algunos detalles adicionales

1
2
3
4
5
6
7
8
9
10
11
12
<script language="javascript" type="text/javascript">
$(function() {
    $("map *").tooltip({
        positionLeft: true,
        delay: 0,
        fade: 250,
        extraClass: "pretty",
        fixPNG: true,
        opacity: 0.95,
     });
});  
</script>

Estilos para el tooltip

Estos varian segun lo que querramos hacer, lo mas importante es la position absolute y el z-index

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#tooltip {
    position: absolute;
    z-index: 3000;
    border: 1px solid #111;
    background-color: #eee;
    padding: 5px;
    opacity: 0.85;
}
#tooltip h3, #tooltip div { margin: 0; }
#tooltip.pretty {
    border: none;
    width: 210px;
    padding:20px;
    height: 135px;
    opacity: 0.8;
    background: url('shadow.png');
}






No Comment
under: AJAX, CSS
Tags: AJAX, jquery
Digg it Add to del.icio.us Stumble it add to technorati

Clase PHP login simple con cookies

Posted by admin in March 13th 2009  

Este es un ejemplo de una clase para el manejo de login, el objetivo de esta clase es solo didactico para poder usarla en nuestras aplicaciones deberiamos implementar una verificacion de usuario basada en una base de datos, además deberiamos crear un algoritmo de codificacion y decodificacion del id de usuario.

Clase para el manejo de login

Como puedes ver en la linea 25 no esta implementada la verficacion del login con la base de datos eso ya depende de la clase que usas para tu base de datos, puedes probar el script usando usuario=user y clave= password

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
<?php
class login {
// Inicia sesion
public function inicia($tiempo=3600, $usuario=NULL, $clave=NULL) { 
    if ($usuario==NULL && $clave==NULL) {
        // Verifica sesion
        if (isset($_SESSION['idusuario'])) {
            //echo "Estas logeado";
        } else {
            // Verifica cookie
            if (isset($_COOKIE['idusuario'])) {
                // Restaura sesion
                $_SESSION['idusuario']=$_COOKIE['idusuario'];
            } else {
                // Si no hay sesion regresa al login
                header( "Location: index.php" );
            }
        }
    } else {
        $this->verifica_usuario($tiempo, $usuario, $clave);
    }
}  
//  Verifica login
private function verifica_usuario($tiempo, $usuario, $clave) {
    if ($usuario=="user" && $clave=="password") {
        // Si la clave es correcta
        $idusuario=$this->codificar_usuario($usuario);
        setcookie("idusuario", $idusuario, time()+$tiempo);
        $_SESSION['idusuario']=$idusuario;
        header( "Location: logeado.php" );
    } else {
        // Si la clave es incorrecta
        header( "Location: index.php?error=1" );
    }
}
// Codifica idusuario
private function codificar_usuario($usuario) {
    return md5($usuario);
}
}
?>

Formulario del login index.php

Usamos un formulario simple que invocará al archivo login.php para generar la sesión o enviar un codigo de error

1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
session_start();
?>
<form name="frm_login" method="post" action="login.php">
Usuario: <input type="text" size="10" name="user" /><br />
Clave: <input type="text" size="10" name="pass" />
<input type="submit" name="submit" value="Login" />
</form>
<?php
if (isset($_GET['error'])) {
    echo '<b>Usuario o clave incorrecta</b>';
}
?>

login.php

Este archivo nos servirá de puente para iniciar o no la sesión

1
2
3
4
5
6
<?php
session_start();
include("login.class.php");
$login=new login();
$login->inicia(3600, $_POST['user'], $_POST['pass']);
?>

Nuestros archivos protegidos

Para proteger cualquier archivo del acceso por parte de usuarios no logeados basta agregar las siguientes lineas de codigo al inicio

1
2
3
4
5
6
<?php
session_start();
include("login.class.php");
$login=new login();
$login->inicia();
?>

Por regla de php estas lineas que verifican la sesion deben estar antes de cualquier codigo html y de espacios en blanco, de lo contrario generará el error “Headers already sent”






Para verificar que nuestro script funciona correctamente podemos instalar una extensión de firebug llamada Firecookie que nos permite revisar las sesiones y cookies

No Comment
under: PHP
Tags: PHP
Digg it Add to del.icio.us Stumble it add to technorati
« Older Entries

Feeds

feeds
Suscribete y mantente actualizado

Suscribete

  • Ahora también puedes suscribirte via correo electrónico

    Ingresa tu dirección de correo:

    Delivered by FeedBurner

Busqueda

Categories

    • AJAX
    • CSS
    • Diseño
    • Flash
    • Otros
    • PHP
    • Posicionamiento
    • Wordpress

Tags

  • action script Add new tag AJAX blog cadenas clases combos correos CSS dependiente downloader editor expresiones filemanager firefox Flash form formulario games herramientas html ilustracion jquery juegos mailer maquetación menu modular mysql nicedit photoshop PHP Posicionamiento rating regulares seo spam sql star tutorial Wordpress WYSIWYG youtube

Links

    • Descuentos, recetas, pueblos, poesías…de todo
    • Directorio web
    • Marketing Mega Virtual
    • porAquiMeAndo

Subscribes

  • PageRank Checker
  • stumble
  • technorati add aol netvibes rojo myyahoo modern freedictionary subrss chicklet plusmo newsburst ngsub wwgthis subscribes

Directorios

  • Add to Technorati Favorites
    Blogs
    Vuelos Baratos
    Directorio Webs
    DigNow.org

Recent Entries

  • Evitar hotlinking con httaccess
  • PHP Como subir archivos de mas de 2Mb
  • Subir Multiples Archivos Ajax jquery
  • Incluir tooltip en mapa de imagenes jquery
  • Clase PHP login simple con cookies
  • Flashvars enviarle datos html a pelicula Flash
  • Validar formularios ajax jquery
  • Agrega graficos estadisticos pie ajax
  • Como subo una pagina web a internet ftp
  • ¿Como hacer esquinas redondeadas?
  • Tutorial DOM html javascript
  • Subir archivos usando ajax jquery
  • IE Tester 0.3 prueba tus paginas

Recent Comments

  • Alberto in Centrar elementos con css
  • admin in Centrar elementos con css
  • Alberto in Centrar elementos con css
  • KattyBlackyard in IE Tester 0.3 prueba tus paginas
  • admin in Centrar elementos con css
  • Arianna in Dar formato a formulario con CSS
  • Arianna in Dar formato a formulario con CSS
  • Arianna in Centrar elementos con css
  • admin in PHP Diseño Web Modular Parte 2
  • Johnny in PHP Diseño Web Modular Parte 2

Most Comments

  • PHP Diseño Web Modular Parte 2 (7)
  • Diseño web modular PHP chau frames (6)
  • Centrar elementos con css (5)
  • Dar formato a formulario con CSS (4)
  • DropDown menu desplegable ajax (4)
  • Intercambio de elementos entre 2 listas jquery (3)
  • Envia correos sin recargar jquery ajax (3)
  • Subir archivos usando ajax jquery (3)
  • Flash Mailer envia correos (2)
  • File Manager para NicEdit (2)
  • Combos dependientes AJAX (2)
  • Ajax enviar formularios sin recargar jquery (2)
Box-Tube Box Modulize WordPress Theme By Dezzain Studio
©2006-2009 Miguel Manchego
Powered by WordPress 2.8    Valid XHTML    Valid CSS