ashburner Postado Outubro 19, 2004 Denunciar Share Postado Outubro 19, 2004 o que tem de errado nesse codigo? ele não envio o email. (sou iniciante em php)<? require ("include/global.php"); require ("include/colors.php"); function password(){ srand((double)microtime()*1000000); $numchar=rand(4,6); $temp=""; for($b=0;$b<$numchar;$b++){ $chrnum=rand(48,109); if($chrnum>57){ $chrnum+=7; } if($chrnum>90){ $chrnum+=6; } $temp=$temp.chr($chrnum); } return $temp; } function enviar_mail(){ ini_set("SMTP","smtp.netuno.com.br"); $remetente = "learnloop@learnloop.c-f-h.com"; $destinatario = $email; $assunto = "Bem vindo ao LearnLoop"; $msg = $mailbody; mail ($destinatario, $assunto, $msg, $remetente); } function mail_account(){ global $login,$email,$firstname,$surname,$cBGcolor; $passwd=password(); mysql_query("INSERT INTO users (active,login,password,email,firstname,surname) VALUES (1,'".$login."','".$passwd."','".$email."','$firstname','$surname');"); $id=mysql_insert_id(); $mailbody = "Hi!\n\nUse this login information:\nUser Name:".$login."\nPassword:".$passwd."\n\nWelcome to LearnLoop!"; if(mail($email,"Welcome to LearnLoop",$mailbody,"From:LearnLoop@$SERVER_NAME")){ ?> <html> <head> <link rel="STYLESHEET" type="text/css" href="css.php"> </head> <body bgcolor="<?echo $cBGcolor?>"> <p> </p> <div class="h3" align="center"><?php echo $GLOBALS["strLoginOk"] ?></div> <p> <div class="main" align="center"><b><?= $GLOBALS["strCheckYourEmail"] ?></b></div> </body> </html> <? }else{ ?> <html> <head> <link rel="STYLESHEET" type="text/css" href="css.php"> </head> <body bgcolor="<?echo $cBGcolor?>"> <p> </p> <div class="h3" align="center"><?= $language["error_sending_mail"] ?>.</div> <p> <div class="main" align="center"><?= $language["valid_email"] ?><a href="mailto:LearnLoop@<?echo $SERVER_NAME?>">LearnLoop@<?echo $SERVER_NAME?></a>.</div> </body> </html> <? } } if($newuser==""){ $newuser=0; } if((!$login || $login=="") && $newuser!=1){ // Check if the users is allowed to create a user. if($cfgAllowCreateUser){?> <html> <head> <link rel="STYLESHEET" type="text/css" href="css.php"> <script type="text/javascript" language="JavaScript" src="check_pass.js"></script> </head> <body bgcolor="<?echo $cBGcolor?>" leftmargin="0" topmargin="0"> <h1 class="h1"> <?= $language["new_login"]; ?> <hr size="1" noshade width="100%"> </h1> <div class="main" align="center"> <b><?= $language["login_fill_fields"] ?></b> <br> <form action="create_login.php" method="post" name="create_login" onSubmit="return verify(this);"> <table> <tr> <td class="main" align="right"><b><?= $language["firstname"]; ?>:</b></td> <td class="main"><input type="text" name="firstname" class="main"></td> </tr> <tr> <td class="main" align="right"><b><?= $language["surname"]; ?>:</b></td> <td class="main"><input type="text" name="surname" class="main"></td> </tr> <tr> <td class="main" align="right"><b><?= $language["username"]; ?>:</b></td> <td class="main"><input type="text" name="login" class="main"></td> </tr> <tr> <td class="main" align="right"><b><?= $language["e-mail"]; ?>:</b></td> <td class="main"><input type="text" name="email" class="main"></td> </tr> <tr> <td class="main" align="center" colspan=2><br><input type="submit" name="subm" value="<?= $language["createLogin"]; ?>" class="main"></td> </tr> </table> </form> </div> </body> </html> <? }else{ // Create a an instruction how the user should proceed to get a password. // Create the header echo '<html><head>'; echo '<link rel="STYLESHEET" type="text/css" href="css.php">'; echo '</head>'; // Create body and text echo '<body bgcolor="'.$cBGcolor.'">'; echo '<p> </p>'; echo '<div align="center">'.$strAskTheAdminForUser.'.</div>'; echo '</body>'; // Create the footer echo '</html>'; } }else{ if($newuser!=1){ $err=0; $users=mysql_query("SELECT id from users WHERE login='".$login."';"); if($check=mysql_fetch_array($users)){ $login_exists=1; // if user exists }else{ $login_exists=0; } $check_email=mysql_query("SELECT id FROM users WHERE email='".$email."';"); if(mysql_num_rows($check_email)!=0){ $email_exists=1; }else{ $email_exists=0; } if($email_exists==1 || $login_exists==1){ ?> <html> <head> <link rel="STYLESHEET" type="text/css" href="css.php"> <script type="text/javascript" language="JavaScript" src="check_pass.js"></script> </head> <body> <p> </p> <?if($email_exists==1 && $login_exists==0){?> <div class="h3" align="center"><?= $language["login_exists"]?> </div> <div class="main" align="center"><b><?=$language["select_action"]?>:</b></div> <div align="center"><form><input type="button" value="<?= $language["register_anyway"] ?>" class="menu" onClick="newAccount('<?echo $login?>','<?echo $email?>','<?echo $firstname?>','<?echo $surname?>');"> <input type="button" value="<?= $language["get_old_login"] ?>" class="menu" onClick="getOld('<?echo $email?>');"</form></div> <?}else{?> <div class="h3" align="center"><?= $language["user_exists"] ?></div> <p> <div class="main" align="center"><?= $language["account_creation_fail"] ?></div> <?}?> </body> </html> <? }else{ mail_account(); enviar_mail(); } }else{ // no existing user with that login and password mail_account(); enviar_mail(); } } ?> Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 kafunga Postado Outubro 19, 2004 Denunciar Share Postado Outubro 19, 2004 aparece algum error?o q acontece? posta o trem direito aew! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ashburner Postado Outubro 19, 2004 Autor Denunciar Share Postado Outubro 19, 2004 pow desculpa, eu esqueci de dizer, ele não da erro nenhum apenas não envia. enviei uns 5 e-mails ontem e nada de receber até agora. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 bigodines Postado Outubro 19, 2004 Denunciar Share Postado Outubro 19, 2004 pode ser no teu servidor. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ashburner Postado Outubro 19, 2004 Autor Denunciar Share Postado Outubro 19, 2004 é um servidor grátis, mas eu procurei no forum ai e vi um esquema de usar smtp de outro server, e eu fiz isso mas mesmo assim não tah funcionando. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Error404 Postado Outubro 19, 2004 Denunciar Share Postado Outubro 19, 2004 As vezes o servidor pede autenticação.Procure se informar com o servidor onde está rodando esse script pra ter mair informações sobre autenticação... Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Guest Guest Postado Outubro 19, 2004 Denunciar Share Postado Outubro 19, 2004 ele requer autenticação. como eu faço para autenticar no código? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 infinite Postado Outubro 20, 2004 Denunciar Share Postado Outubro 20, 2004 tem que escrever outro codigo utilizando socket, tem que acessar direto na pórta do e-mail e passar o usuario e senha para ele..da uma boa pesquisada aqui no Forum que acha sobre o assunto Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ashburner Postado Outubro 20, 2004 Autor Denunciar Share Postado Outubro 20, 2004 eu coloquei esse código de teste pra ver se ele envia o e-mail mas mesmo assim não está chegando. ali no socket onde eu informo o user e a senha, pois o servidor requer autenticação. <?php $con = fsockopen("smtp.servidor.com.br", 25, $errno, $errstr); if (!$con) { echo "Erro ao conectar em smtp.servidor.com.br\n<br>"; echo "Número do erro: $errno\n<br>Mensagem: $errstr"; } else { ini_set("SMTP","smtp.servidor.com.br"); $remetente = "email@servidor.com.br"; $destinatario = "email@servidor.com.br"; $assunto = "Bem vindo ao LearnLoop"; $msg = "test"; mail ($destinatario, $assunto, $msg, $remetente); echo "E-mail enviado com sucesso!"; } fclose($con); ?> Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Woody Postado Outubro 20, 2004 Denunciar Share Postado Outubro 20, 2004 Assim não vai funcionar...você vai ter que fazer toda a transação em linha de código..... tipoMAIL FROM nome_do_email RCPT TO email DATATudo isso você vai ter que fazer via socket e para poder mandar o e-mail....Se você quiser se aprofundar no SMTP, procure na NET sobre o RFC821 ( SIMPLE MAIL TRANSFER PROTOCOL)....Até + Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ashburner Postado Outubro 20, 2004 Autor Denunciar Share Postado Outubro 20, 2004 você não poderia me passar um exemplo de um código funcionando? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Woody Postado Outubro 20, 2004 Denunciar Share Postado Outubro 20, 2004 Eu não tenho...MAs acho que na NET tem... uma vez li um post que tinha uma classe que enviava até anexos....Da uma garibada....Até + Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 infinite Postado Outubro 20, 2004 Denunciar Share Postado Outubro 20, 2004 facilitando para voce :http://phpmailer.sourceforge.net/ Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
ashburner
o que tem de errado nesse codigo? ele não envio o email. (sou iniciante em php)
Link para o comentário
Compartilhar em outros sites
12 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.