Estoy creando una pagina para flogs multiusuarios en php pero el problema es que ya cree el sistema de registro y el de validacion etc pero a muchos no les llega el correo y a otros les llega pero vacio quisiera me ayudaran a remediarlo aqui les dejo el codigo del archivo.
o si alguien se quiere unir a mi proyecto y ayudarme a terminarlo por fin se lo agradeceria mucho.
Código (php) [Seleccionar]
<?php
include('config.php');
################################
# F U N F L O G V 1.0.0 #
################################
#>>>
#>>
#>
################################
# C O N E C T A M Y S Q L #
################################
#> $DOC - Conecta a uma base de
# dados sendo informado respecti
# vamente : tabela / campo ordem
# campo da ordem / limite
function conecta_mysql($tabela, $campo_ordem, $ordem , $limite){
if($tabela == ""){
$erro = "Tabla no seleccionada!";
return $erro;
}
else{
if($campo_ordem == "" && $limite != ""){
$query = mysql_query("SELECT * FROM $tabela LIMIT $limite") or die(print(mysql_error()));
return $query;
}
else if($campo_ordem != "" && $limite == ""){
switch($ordem){
case cres : $ordem_def = "ASC"; break;
case decr : $ordem_def = "DESC"; break;
}
$query = mysql_query("SELECT * FROM $tabela ORDER BY $campo_ordem $ordem_def") or die(print(mysql_error()));
return $query;
}
else if ($campo_ordem != "" && $limite != ""){
switch($ordem){
case cres : $ordem_def = "ASC"; break;
case decr : $ordem_def = "DESC"; break;
}
$query = mysql_query("SELECT * FROM $tabela ORDER BY $campo_ordem $ordem_def LIMIT $limite") or die(print(mysql_error()));
return $query;
}
else {
$query = mysql_query("SELECT * FROM $tabela") or die(print(mysql_error()));
return $query;
}
}
}
################################
# B L O Q U E I O S #
################################
function retorna_bloqueio($id){
global $tab_users;
$query = mysql_query("SELECT * FROM $tab_users WHERE id='$id'") or die(print(mysql_error()));
$data = mysql_fetch_array($query);
return $data['bloq'];
}
function bloquear($id){
$login = des_idealizar($id);
$bloq = retorna_bloqueio($id);
if ($bloq != 1){
rename("./$login/index.php", "./$login/$login_bloqueado.php");
copy("./bloqueada.php", "./$login/index.php");
}
else{
echo "Este usuário ya está bloqueado!";
br2(2);
return "erro";
}
}
function desbloquear($id){
$login = des_idealizar($id);
$bloq = retorna_bloqueio($id);
if($bloq == 1){
unlink("./$login/index.php");
rename("./$login/$login_bloqueado.php", "./$login/index.php");
}
else{
echo "Este usuário no está bloqueado para ser desbloqueado!!!";
br2(2);
return "erro";
}
}
################################
# P L A N O #
################################
function plano($login){
global $tab_users;
$id = idealizar($login);
$query = mysql_query("SELECT * FROM $tab_users WHERE id='$id'") or die(print(mysql_error()));
$data = mysql_fetch_array($query);
return $data['plano'];
}
function permite($login){
global $tab_restri;
global $data;
global $plano_livre;
global $plano_mini;
global $plano_super;
$plano = plano($login);
if ($plano == 0){
$data_agora = date("d/m/Y");
$id = idealizar($login);
$query = mysql_query("SELECT * FROM $tab_restri WHERE id_user='$id' ORDER BY data LIMIT 1") or die(print(mysql_error()));
$data = mysql_fetch_array($query);
if($data['fotos'] >= $plano_livre && stamp2str($data['data'], "/") == $data_agora ){
return "não";
}
else{
return "sim";
}
}
if ($plano == 1){
$data_agora = date("d/m/Y");
$id = idealizar($login);
$query = mysql_query("SELECT * FROM $tab_restri WHERE id_user='$id' ORDER BY data LIMIT 1") or die(print(mysql_error()));
$data = mysql_fetch_array($query);
if($data['fotos'] >= $plano_mini && stamp2str($data['data'], "/") == $data_agora ){
return "não";
}
else{
return "sim";
}
}
if ($plano == 2){
$data_agora = date("d/m/Y");
$id = idealizar($login);
$query = mysql_query("SELECT * FROM $tab_restri WHERE id_user='$id' ORDER BY data LIMIT 1") or die(print(mysql_error()));
$data = mysql_fetch_array($query);
if($data['fotos'] >= $plano_super && stamp2str($data['data'], "/") == $data_agora ){
return "não";
}
else{
return "sim";
}
}
}
################################
# T I R A < B R > #
################################
function unclean($val) {
$val = str_replace("<br>","\n",$val);
//$val = strtr($val,array_flip(get_html_translation_table(HTML_ENTITIES,ENT_QUOTES)));
return $val;
}
function clean($val) {
$val = str_replace("\n","<br>",$val);
//$val = strtr($val,array_flip(get_html_translation_table(HTML_ENTITIES,ENT_QUOTES)));
return $val;
}
################################
# V E R Y L I M P O #
################################
function limpo($f, $id){
global $tab_preferencias;
$query_fav = mysql_query("SELECT * FROM $tab_preferencias WHERE id_user='$id'") or die(print(mysql_error()));
while($data_fav = mysql_fetch_array($query_fav)){
if(empty($data_fav['favorito_'.$f])){
return "limpo";
}
else{
return "nao";
}
}
}
################################
# I D R A N K I N G #
################################
function id_ranking($user){
global $tab_fotos;
$id = idealizar($user);
$query = mysql_query("SELECT * FROM $tab_fotos WHERE id_user='$id' ORDER BY id DESC LIMIT 0,1") or die(print(mysql_error()));
$data = mysql_fetch_array($query);
$retorno = "<a href= \"./$user/anteriores.php?id=".$data['id']."\"><img src=\"mini.php?foto=".$user."/".$data['url']."\" border=\"0\"></a>";
return $retorno;
}
################################
# C R I A P A S T A #
################################
function cria_pasta($nome){
mkdir("./$nome");
}
################################
# M U D A I N D E X #
################################
function mudaindex($login){
unlink("./$login/index.php");
copy("./index_pronta.php", "./$login/index_pronta.php");
rename("./$login/index_pronta.php", "./$login/index.php");
}
################################
# E N V I A V A L I D A Ç Ã O #
################################
function valida($email, $nome, $login){
$rand = rand(0, 100);
$cod = md5($rand);
$pag = "valida.php?cod=$cod&login=$login";
global $tab_valida, $url_site;
mysql_query("INSERT INTO $tab_valida (cod , login) VALUES ('$cod' , '$login')") or die(print(mysql_error()));
mkdir("./$login");
if(!copy("./anteriores.php", "./$login/anteriores.php")){echo "error copiando arquivo";}
if(!copy("./valida.php", "./$login/valida.php")){echo "error copiando archivo";}
if(!copy("./config.php", "./$login/config.php")){echo "error copiando archivo";}
if(!copy("./fun.php", "./$login/fun.php")){echo "errorcopiando archivo";}
if(!copy("./index_individual.php", "./$login/index_individual.php")){echo "error copiando archivo";}
if(!copy("./imagenes/bg.gif", "./$login/bg.gif")){echo "error copiando archivo";}
if(!copy("./mini.php", "./$login/mini.php")){echo "error copiando archivo";}
if(!copy("./grande.php", "./$login/grande.php")){echo "error copiando archivo";}
if(!copy("./mostrartodas.php", "./$login/mostrartodas.php")){echo "erro copiando archivo";}
#############################
# C R I A N D O I D E N T #
#############################
$arquivo = fopen("./$login/dono.php","w");
fwrite($arquivo, '<? $dono="'.$login.'"; ?>');
fclose($arquivo);
#############################
//br2(2);
//echo "Para testes a ativação pode ser feita clicando no link a seguir ou no link enviado para seu email, caso o email não chegue por favor informe pontox@pontox.net";
br2(2);
//echo "<a href = \"./$login/$pag\">Clique AQUI para ativar su FLOG</a>";
br2(2);
##colocar envio de email aqui !
############################
#E N V I A N D O E M A I L#
############################
$headers = "De:<noreply@xtreme-foros.com> \nContent-type: text/html\n";
$sub = "[VALIDACION FLOG - $login]";
$enviar = "
<html>
<head>
</head>
<body>
<p><font face=\"Verdana\" size=\"1\">
<hr>
.:: Fotolog :: Xtreme ::.<br>
Usted solicitó un registro en el sitio <b>$url_site</b><br>
Para concluir su registro es necesario ingresar en la siguiente URL :<br><br>
<a href = \"$url_site/$login/$pag\">$url_site/$login/$pag</a>
<br>
<hr>
Este es un mensage automático, no lo responda!<br>
$url_site!<br>
</font></p>
</body>
</html>";
if(!mail($email,$sub,$enviar,$headers)){
br();
echo "Ocurrió un error al enviar el email de validación. Por favor, contacte con el administrador - karl@fifa-xtreme.com.org";
br();
"Su email de validación fue enviado correctamente a su email - $email";
br();
"Cuando reciba el email, clique el link para validar su login.";
br();
}
}
################################
# I D E A L I Z A R #
################################
function idealizar($login){
global $tab_users;
$query = conecta_mysql($tab_users, "","","");
while($data = mysql_fetch_array($query)){
if($data['login'] == $login){
$id = $data['id'];
}
}
return $id;
}
function des_idealizar($id){
global $tab_users;
$query = conecta_mysql($tab_users, "","","");
while($data = mysql_fetch_array($query)){
if($data['id'] == $id){
$login = $data['login'];
}
}
return $login;
}
################################
# M E N U #
################################
function conf($login){
$id_user = idealizar($login);
global $tab_preferencias;
$query = $query = mysql_query("SELECT * FROM $tab_preferencias WHERE id_user='$id_user'") or die(print(mysql_error()));
while($data = mysql_fetch_array($query)){
$cor_fundo = $data['cor_fundo'];
$cor_letra = $data['cor_letra'];
$cor_titulo = $data['cor_titulo'];
$tamanho_titulo = $data['tamanho_titulo'];
$titulo_flog = $data['titulo_flog'];
$tipo_letra = $data['tipo_letra'];
$f1 = $data['favorito_1'];
$f2 = $data['favorito_2'];
$f3 = $data['favorito_3'];
$f4 = $data['favorito_4'];
$f5 = $data['favorito_5'];
$f6 = $data['favorito_6'];
$f7 = $data['favorito_7'];
$f8 = $data['favorito_8'];
$f9 = $data['favorito_9'];
$f10 = $data['favorito_10'];
}
echo "
<script language=\"javascript\">
<!--
function MM_openBrWindow(theURL,winName,features) { //v2.0
window.open(theURL,winName,features);
}
//-->
</script>
<form name=\"form1\" enctype=\"multipart/form-data\" method=\"post\" action=\"panel.php?config=ok&login=$login\">
<p><b>»Preferéncias del Flog </b><br>
<br>
Título del Flog :
<input name=\"flog_title_flog\" type=\"text\" value=\"$titulo_flog\" id=\"flog_title_flog\">
<br>
<br>
Color de Letra :
<input name=\"flog_corletra\" type=\"text\" value=\"$cor_letra\" id=\"flog_corletra\">
<br>
<br>
Color de Título :
<input name=\"flog_cortitulo\" type=\"text\" value=\"$cor_titulo\" id=\"flog_cortitulo\">
<br>
<br>
Tamaño de Titulo : ";
echo "<select name=\"flog_tamtitulo\">";
for($i=1;$i<=7;$i++){
if($i == $tamanho_titulo){
echo "<option selected>".$i."</option>";
}
else{
echo "<option>".$i."</option>";
}
}
echo "</select>";
echo"
<br>
<br>
Fuente :
<select name=\"flog_tipoletra\">";
$fonte = array("Verdana, Arial, Helvetica, sans-serif", "Arial, Verdana, Helvetica, sans-serif", "Times New Roman, Verdana, Helvetica, sans-serif", "Comic Sans MS, Verdana, Helvetica, sans-serif", "Trebuchet MS, Arial");
$count = count($fonte);
for($i=0;$i<$count;$i++){
if($fonte[$i] == $tipo_letra){
/*Pegando somente antes da , */
$exp = explode(",", $fonte[$i]);
$dis = $exp[0];
echo "<option value=\"".$fonte[$i]."\"selected>".$dis."</option>";
}
else{
/*Pegando somente antes da , */
$exp = explode(",", $fonte[$i]);
$dis = $exp[0];
echo "<option value=\"".$fonte[$i]."\">".$dis."</option>";
}
}
echo "
</select>
<br>
<br>
<a href=\"#\" onclick=\"MM_openBrWindow('tab_colores.htm','','scrollbars=no,width=250,height=208')\"><b>» Tabla de Colores</b></a><br><br>
<b>» Flogs Favoritos! Escriba los nombres de usuario del los propietarios de sus Flogs favoritos!</b></p>
<p>Favorito 1 :
<input name=\"flog_f1\" type=\"text\" value=\"$f1\" id=\"flog_f1\">
</p>
<p>Favorito 2 :
<input name=\"flog_f2\" type=\"text\" value=\"$f2\" id=\"flog_f2\">
</p>
<p>Favorito 3 :
<input name=\"flog_f3\" type=\"text\" value=\"$f3\" id=\"flog_f3\">
</p>
<p>Favorito 4 :
<input name=\"flog_f4\" type=\"text\" value=\"$f4\" id=\"flog_f4\">
</p>
<p>Favorito 5 :
<input name=\"flog_f5\" type=\"text\" value=\"$f5\" id=\"flog_f5\">
</p>
<p>Favorito 6 :
<input name=\"flog_f6\" type=\"text\" value=\"$f5\" id=\"flog_f6\">
</p>
<p>Favorito 7 :
<input name=\"flog_f7\" type=\"text\" value=\"$f5\" id=\"flog_f7\">
</p>
<p>Favorito 8 :
<input name=\"flog_f8\" type=\"text\" value=\"$f5\" id=\"flog_f8\">
</p>
<p>Favorito 9 :
<input name=\"flog_f9\" type=\"text\" value=\"$f5\" id=\"flog_f9\">
</p>
<p>Favorito 10 :
<input name=\"flog_f10\" type=\"text\" value=\"$f5\" id=\"flog_f10\">
</p>
<p>
<input type=\"submit\" name=\"Submit\" value=\"Modificar Configuración\">
<br>
</p>
</form>
<br><br><a href=\"panel.php?login=$login\"><b>«« Volver</b></a>";
}
function enviar_foto($login){
echo "<b><br><br>Enviar Fotos : </b><br><br>";
echo "
<form name=\"form1\" enctype=\"multipart/form-data\" method=\"post\" action=\"panel.php?envia=ok&login=$login\">
<p>
Dirección de la Foto :
<input name=\"arquivo\" type=\"file\" id=\"arquivo\">
<br>
</p>
<p>
Título :
<input name=\"flog_title\" type=\"text\" id=\"flog_title\">
</p>
<p>Descripción de la foto :</p>
<p>
<textarea name=\"flog_coment\" id=\"flog_coment\"></textarea>
</p>
<p><br>
<input type=\"submit\" name=\"Submit\" value=\"Enviar\">
<input name=\"field\" type=\"hidden\" value=\"sdfsdfsdf\">
</p
></form>
<br><br><a href=\"panel.php?login=$login\"><b>«« Volver</b></a>";
}
################################
# C H E C A L O G I N #
################################
function checa_login($login){
global $tab_users;
$query = conecta_mysql($tab_users, "","","");
//$query = mysql_query("SELECT * FROM tab_users") or die(print(mysql_error()));
while($data = mysql_fetch_array($query)){
if($data['login'] == $login){
$contem = "sim";
return $contem;
}
}
}
################################
# E S P A Ç O < B R > #
################################
function br2($quantos){
for($i=0;$i<$quantos;$i++){
echo "<br>";
}
}
function br(){
echo "<br>";
}
################################
# P R E E N C H E R R E D #
################################
/*function red($numero_erro){
if($erro_vazio['$numero_erro'] == "" && $_GET['cad'] == "ok"){
echo "<span class=\"style2\">";
echo "*";
echo "</span>";
}
}*/
################################
# C O N V E R T E D A T A #
################################
function stamp2str($s,$div)
{
return $s[6].$s[7].$div.$s[4].$s[5].$div.$s[0].$s[1].$s[2].$s[3];
}
################################
# C O N V E R T E H O R A #
################################
function stamp3str($s,$div)
{
return $s[8].$s[9].$div.$s[10].$s[11].$div.$s[12].$s[13];
}
################################
# P E G A D I A #
################################
function pega_dia(){
$dia = date("d");
/*if ($dia < 10){
$dia = "0".$dia;
}*/
return $dia;
}
################################
# V E R I F I C A A D M I N #
################################
function verifica_admin($login, $senha){
$dia = pega_dia();
$nome = "flogue_".$dia;
global $tab_admin;
$query = mysql_query("SELECT * FROM $tab_admin WHERE nome='$nome'") or die(print(mysql_error()));
$data = mysql_fetch_array($query);
if($login == $data['nome'] && $senha == $data['senha']){
$_SESSION['adm'] = "sim";
return "sim";
}
else{
return "não";
}
}
################################
# C O N V E R T E D A T A #
################################
function unstamp($data){
return "2005/".$data[3].$data[4]."/".$data[0].$data[1];
}
################################
# C A L C U L A T E M P O #
################################
function getmicrotime(){
list($sec, $usec) = explode(" ",microtime());
return ($sec + $usec);
}
##############################################
# M O S T R A I M A G E M P E Q U E N A #
##############################################
function mostraimg($onde){
define(MAX_WIDTH, 90);
define(MAX_HEIGHT, 70);
# Carrega a imagem
$img = @imagecreatefromjpeg($onde);
// Se a imagem foi carregada com sucesso, testa o tamanho da mesma
if ($img) {
// Pega o tamanho da imagem e proporção de resize
$width = imagesx($img);
$height = imagesy($img);
$scale = min(MAX_WIDTH/$width, MAX_HEIGHT/$height);
// Se a imagem é maior que o permitido, encolhe ela!
if ($scale < 1) {
$new_width = floor($scale*$width);
$new_height = floor($scale*$height);
// Cria uma imagem temporária
$tmp_img = imagecreatetruecolor($new_width, $new_height);
// Copia e resize a imagem velha na nova
imagecopyresampled($tmp_img, $img, 0, 0, 0, 0,
$new_width, $new_height, $width, $height);
imagedestroy($img);
$img = $tmp_img;
}
}
// Cria uma imagem de erro se necessário
if (!$img) {
$img = imagecreate(MAX_WIDTH, MAX_HEIGHT);
imagecolorallocate($img,204,204,204);
$c = imagecolorallocate($img,153,153,153);
$c1 = imagecolorallocate($img,0,0,0);
imageline($img,0,0,MAX_WIDTH,MAX_HEIGHT,$c);
imageline($img,MAX_WIDTH,0,0,MAX_HEIGHT,$c);
imagestring($img, 2, 12, 55, 'Sin Foto',$c1 );
}
// Mostra a imagem
//header('Content-type: image/jpeg');
imagejpeg($img);
}
########################################
# M O S T R A I M A G E M T U M B #
########################################
function mostraimg_small($onde){
define(MAX_WIDTH, 400);
define(MAX_HEIGHT, 400);
# Carrega a imagem
$img = @imagecreatefromjpeg($onde);
// Se a imagem foi carregada com sucesso, testa o tamanho da mesma
if ($img) {
// Pega o tamanho da imagem e proporção de resize
$width = imagesx($img);
$height = imagesy($img);
$scale = min(MAX_WIDTH/$width, MAX_HEIGHT/$height);
// Se a imagem é maior que o permitido, encolhe ela!
if ($scale < 1) {
$new_width = floor($scale*$width);
$new_height = floor($scale*$height);
// Cria uma imagem temporária
$tmp_img = imagecreatetruecolor($new_width, $new_height);
// Copia e resize a imagem velha na nova
imagecopyresampled($tmp_img, $img, 0, 0, 0, 0,
$new_width, $new_height, $width, $height);
imagedestroy($img);
$img = $tmp_img;
}
}
// Cria uma imagem de erro se necessário
if (!$img) {
$img = imagecreate(MAX_WIDTH, MAX_HEIGHT);
imagecolorallocate($img,204,204,204);
$c = imagecolorallocate($img,153,153,153);
$c1 = imagecolorallocate($img,0,0,0);
imageline($img,0,0,MAX_WIDTH,MAX_HEIGHT,$c);
imageline($img,MAX_WIDTH,0,0,MAX_HEIGHT,$c);
imagestring($img, 2, 12, 55, 'Sin Foto',$c1 );
}
// Mostra a imagem
//header('Content-type: image/jpeg');
imagejpeg($img);
}
#############################################
# M O S T R A I M A G E M G R A N D E #
#############################################
function mostraimg_grd($onde){
define(MAX_WIDTH, 400);
define(MAX_HEIGHT, 400);
# Carrega a imagem
$img = @imagecreatefromjpeg($onde);
// Se a imagem foi carregada com sucesso, testa o tamanho da mesma
if ($img) {
// Pega o tamanho da imagem e proporção de resize
$width = imagesx($img);
$height = imagesy($img);
$scale = min(MAX_WIDTH/$width, MAX_HEIGHT/$height);
// Se a imagem é maior que o permitido, encolhe ela!
if ($scale < 1) {
$new_width = floor($scale*$width);
$new_height = floor($scale*$height);
// Cria uma imagem temporária
$tmp_img = imagecreatetruecolor($new_width, $new_height);
// Copia e resize a imagem velha na nova
imagecopyresampled($tmp_img, $img, 0, 0, 0, 0,
$new_width, $new_height, $width, $height);
imagedestroy($img);
$img = $tmp_img;
}
}
// Cria uma imagem de erro se necessário
if (!$img) {
$img = imagecreate(MAX_WIDTH, MAX_HEIGHT);
imagecolorallocate($img,204,204,204);
$c = imagecolorallocate($img,153,153,153);
$c1 = imagecolorallocate($img,0,0,0);
imageline($img,0,0,MAX_WIDTH,MAX_HEIGHT,$c);
imageline($img,MAX_WIDTH,0,0,MAX_HEIGHT,$c);
imagestring($img, 2, 12, 55, 'Sin Foto',$c1 );
}
// Mostra a imagem
//header('Content-type: image/jpeg');
imagejpeg($img);
}
################################
#F U N C T I O N C O N N E C T#
################################
function conecta_config(){
global $dbhost,$dbuser, $dbpass;
global $dbname;
$conexao = @mysql_pconnect($dbhost, $dbuser, $dbpass) or die ("No fue posible conectarse al servidor MySQL");
$db = @mysql_select_db($dbname) or die ("No fue posible seleccionar la base de datos <b>$dbname</b>");
}
?>
o si alguien se quiere unir a mi proyecto y ayudarme a terminarlo por fin se lo agradeceria mucho.