Comunidad de diseño web y desarrollo en internet online

asdf asdf probatorio

Citar            
MensajeEscrito el 24 Sep 2004 12:25 pm
¿ Por que buscar informacion si nos la pueden traer a casa ? ¿ Acaso no sera mejor para nuestros asiduos fans tener un 'newsletter' para nuestro BLOG ? Asi ellos se actualizaran a la vez que nosotros! Todo mas sencillo.

En flash tendremos un campo de texto llamado "email" y un boton "boton" este sera solo el codigo necesario, para hacer una minima comprobacion del email [si es valido o no] y mostrar la informacion referente.

Código :

/*esta funcion siempre esta bien, comprueba el texto que hay en el campo y si es el que viene por defecto, al hacer click se borra automaticamente. Cualquier facilidad al usuario es poca */
email.onSetFocus = function() { if(email.text == "Introduce tu email...") {email.text = ""; };};
   
boton.onRelease = function() {
/*validacion basica de todo email, la @ el punto y la longitud minima*/
   if(email.text.indexOf("@")==-1 || email.text.indexOf(".")==-1 || email.text.length<6) { email.text = "Introduce un email valido"; } else { 
//creamos unos loadVars
   delete  em;
   em = new LoadVars();
   em.email = email.text;
//avisamos al usuario de que estamos haciendo cosillas
   email.text = "Enviando la informacion";
//este sera el output que nos de el resultado de la operacion
   em.onLoad = function() {
      email.text = em.resultado;
   };
//llamamos al php
   em.sendAndLoad("mailme.php",em,"POST");
   };
};


Sencillo por el momento no?Ahora vayamos al mailme.php..... para evitar todo el SP4M [like 'Enlarge your P3N3' MWHAHAHAHA] tendremos que hacer un par de cosillas, la primera sera enviar un email de confirmacion al usuario con una clave-aunque el no lo sepa-, y un link para confirmar pero antes guardaremos sus datos en una DB [MWHAHAHAHA como los buenos sp4m34d0r3s] Un par de cosillas a tener en cuenta, un archivo "localconex.php" que nos servira para hacer la conexion sql, lo tendremos separado pues lo usaremos en todos nuestros PHP que requieran de esa conexion, tambien una tabla en sql, ambos codigos los pego aqui.

# SQL - NODANI.com
CREATE TABLE `mailsender` (
`id` int(11) NOT NULL auto_increment,
`mail` text,
`fecha` text,
`confi` int(11) default '0',
`activa` int(11) default '0',
PRIMARY KEY (`id`)
) TYPE=MyISAM AUTO_INCREMENT=7 ;

localconex.php

Código :

<?php 

function Conectarse() 
{ 
   if (!($link=mysql_connect("tuServidor","tuUsuario","tuPassword"))) 
   {
      echo "Error conectando a la base de datos."; 
      exit(); 
   } 
return $link; 
   
}

?>




Ahora si que podemos ir directamente a nuestro PRIMER PHP.


Código :

<?
//esta es nuestra clave secreta
$rcon = rand(1000000,10000000);
//esto es un simple mensaje
$sms = 'Estas recibiendo este e-mail de confirmacion a la subcripcion a las notificaciones de las nuevas entradas al Blog de NODANI.com, Si usted no ha deseado subscribirse y recibe este e-mail le pedimos mil disculpas.<br><br><b>Para confirmar su autorizacion pulse este link :</b><br> <a href="http://www.nodani.com/sublog.php?email='.$email.'&shoebox='.$rcon.'&DummyText=Ar9834FT5d5td%dxtsev7">CONFIRME SU SUBSCRIPCION</a>  <br><br>El email facilitado en ningun caso se facilitara a terceros ni se utilizara con fines propagandisticos y publicitarios [SPAM] solo y unicamente para las notificaciones antes dichas.';

//nos conectamos
include("localconex.php");
$link=Conectarse(); 
$fechoria=date("d/m/Y - H:i");
//recogemos los datos -por si ya estaba el email
$result=mysql_fetch_array(mysql_db_query("data_base","SELECT * FROM mailsender WHERE mail='$email'"));
print 'activate'.$result['activa'];

//si no devuelve nada es que no esta!! Lo añadiremos
if($result['activa']=="") {$query=mysql_db_query("data_base", "insert into mailsender (mail,fecha,confi) values ('$email','$fechoria','$rcon')");
mysql_close($link); 
         //headers del mail
         $headers = "MIME-Version: 1.0\r\n"; 
         $headers .= "Content-type: text/html; charset=iso-8859-1\r\n"; 
         $headers .= "From: NODANI <[email protected]>\r\n"; 
         $headers .= "Reply-To: [email protected]\r\n"; 
//enviamos el email
mail($email, 'Suscribete al Blog de NODANI.com', $sms,$headers);
    print '&resultado=Se envio el email correctamente&nodani=.com';

} else if($result['activa']==0) {
//si es 0 es que el email esta en la DB pero aun sin confirmar
print '&resultado=ERROR: El email es usado por otro usuario&nodani=nodani.com';
} else  {
/*en cualquier otro caso el email ya etara validado, asi que no haremos nada */
print '&resultado=ERROR: El email ya fue validado&nodani=nodani.com';
};

?>


:shock: :shock: FIJEMONOS en un par de cosillas ...
&resultado=XXx aja! esto es para que en el output de Flash salga la informacion correspondiente, se haya enviado bien, mal o que pasa!

Despues otro punto importante es nuestro link que le facilitamos...
href="http://www.vuestroDominio.com/sublog.php?email='.$email.'&shoebox='.$rcon.'&DummyText=Ar9834FT5d5td%dxtsev7"
Hay DOS variable "email" y "shoebox" [que es $rcon - NUESTRA CLAVE SECRETA!!] El porque de esto es sencillo, imaginense que no hay que ser muy listo para ver que en sublog.php?email=XXx ahi podrias poner emails a porrillo sin control alguno y asi joder a la gente, pues entonces cuando se mete un registro en la DB se le añade en el campo "confi" un numero aleatorio, que se le envia al email, despues comprobaremos que el email y el numero coinciden, el usuario no se da cuenta de esto y el es FELIz :D :D y nosotros tenemos un sistema mucho mas seguro :| Por ultimo el dummyText, que como su nombre indica no es mas que un texto [la verdad que no supe como hacerlo aleatorio] para darle mas calidad y disimular un poco nuestro truki del shoebox-rcon, el usuario dira "Coño, que seguridad, un pedazo de clave del quince!" y nos amara eternamente :love: :love:

Ahorita solo nos faltan DOS php, el primero sera el que se encargue de comprobar la confirmacion y hacer los cambios necesarios, el ultimo, el sistema de envio.

Código :

<?php
//nos conectamos
include "localconex.php";
Conectarse();

$fecha=date("Y-m-d H:i:s");
//recogemos los datos referentes al email
$result=mysql_fetch_array(mysql_db_query("data_base","SELECT * FROM mailsender WHERE mail='$email'"));

$rcon=$result['confi'];
$id=$result['id'];
//hacemos la comprobacion... si es igual....
if($rcon==$shoebox) { 
$cantidad=1;
//cambiamos activa de 0 a 1 ! juas que makinones somos!
mysql_db_query("data_base","UPDATE mailsender SET activa=$cantidad WHERE id=$id");
//un output en pantalla para confirmarlo
print ' Se ha <b>agregado '.$email.' correctamente</b> a nuestra Base de Datos. Puede cerrar esta ventana';
//nos autoenviamos un email para saber que se ha añadido un nuevo usuario! :|
mail('[email protected]', 'Suscripcion al Blog de NODANI.com', $email,"From: [email protected]\nReply-To: [email protected]\nX-Mailer: PHP/" . phpversion());
/*en caso contrario... no dudemos en increpar al usuario, ya toco algo que no debia!! :|:|*/
} else { print 'Oups! Estas haciendo algo ilegal!!<br>Contacte con [email protected] para solucionar su problema'; };
?>


Hasta aqui creo que mas o menos sencillito no? ya solo nos falta el ultimo paso.... 8)8)
Este es el codigo php que añadiremos en nuestra pagina donde dejamos los posts....

Código :

<?
/*recortamos la noticias, si la ponemos entera ya no tendran porque entrar en el blog, oh dios mio n0000000 */
$corto = substr ($cuerpo_noticia, 0,215); 
/*creamos el mensaje y le añadiremos un link directo a nuestro blog */
$sms = 'Estas recibiendo este e-mail avisandote de que hay un nuevo tema en el Blog de NODANI.com <br><br>'.$n.'<br>'.$corto.'<a href="http://www.nodani.com/blog/index.php" >... Leer Mas</a><br><br>Si ya no desea seguir recibiendo estos avisos, por favor indiquenoslo en [email protected]';
   // los MIME headers
   $headers = "MIME-Version: 1.0\r\n"; 
   $headers .= "Content-type: text/html; charset=iso-8859-1\r\n"; 
   $headers .= "From: NODANI <[email protected]>\r\n"; 
   $headers .= "Reply-To: [email protected]\r\n"; 

//como siempre nos conectamos
include("localconex.php");
$link=Conectarse(); 
//recogemos todo de la DB
$result=mysql_db_query("data_base","select * from mailsender where 'activa'=1");

   while ($row=mysql_fetch_array($result)) 
   {
   $e=$row['mail'];


//envio del email
   mail($e,'Nuevo Tema: '.$asunto,$sms,$headers);


   }
   mysql_close($link); 

?>


Con eso enviara un email a todos aquellos que esten confirmados. Un sistema seguro que impide que hayan dos emails, que rse registren email sin permiso y demas. fACIL, SENCILLO y PARA TODA LA FAMILIA!! ^^ ^^

Por _CONEJO

BOFH

7639 de clabLevel

17 tutoriales
21 articulos

 

unknown
Citar            
MensajeEscrito el 24 Sep 2004 01:24 pm
WTF!?

Por TheOm3ga

267 de clabLevel

1 tutorial

1 ejemplo

 

To your south!!!

unknown
Citar            
MensajeEscrito el 24 Sep 2004 01:25 pm
ssshhhh

Por Freddie

BOFH

53 tutoriales
597 articulos
43 ejemplos

Genero:Masculino   Admin

Conserje de Cristalab

unknown

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.