Ola galera boa noite, não sou muito bom em postar em foruns mais vou tentar especificar o melhor possivel o meu problema!
é o seguinte:
Eu estou criando um sistema de webmail para minha universidade este sistema funcionara da seguinte forma:
Pagina de Cadastro (O usuario vai preencher um formulario com dados como: nome, cpf, nome de usuario (para o email, por ex: o usuario vai colocar so o username o @xxx.com é inserido automatico), senha, confirmar senha, pergunta secreta e resposta secreta (para recuperar a senha). Bom esses dados vao para um banco de dados armazeno os seguintes dados vindo do formulario de cadastro: nome, cpf, email(já formatado: usuario@xxx.com), senha, pergunta e resposta, o motivo de eu querer armazenar estes dados no banco de dados e porque o sistema de webmail vai ter uma pagina para o professor que ira enviar emails para os alunos ai os recipientes vao vir do banco de dados.
Ate ai tudo bem, já criei o formulario de cadastro, já criei a tabela no bd, e o formulario já esta funcionando perfeitamente já esta armazenando todos os dados que eu quero no banco de dados.
So que agora eu preciso criar realmente o email no cpanel, e isso tem que ser de forma automatica para isso eu desenvolvi um sisteminha simples em php que cria emails no cpanel este sistema funciona da seguinte forma:
Usuario desejado: input text /@dominio.com.br
Senha: input text
button submit
somente isso! o usuario digita o nome de usuario para o email desejado, cria a senha e clika no botao submit e já automaticamente o sistema cadastra o nome de email solicitado no cpanel. O sistema ta funcionando perfeitamente tambem.
Agora chega no meu problema:
Eu preciso tipo agrupar estes dois sistemas em 1 por exemplo quero que ao preencher o formulario de cadastro e envia-lo quero que já cadastre o email no cpanel, ou seja quero que o sistema de cadastro (que apenas insere os dados no bd) rode junto o sistema php que desenvolvi para criar o email no cpanel ai no caso o sistema iria pegar os valores no banco de dados (já inseridos pelo form de cadastro) por exemplo ao invés de usar $_POST para pegar os valores dos inputs $email e $senha, quero que ele pegue o valor da string do formulario de cadastro por exemplo ele vai pegar o valor $email e o valor $senha do formulario de cadastro e com esses valores inserir no cpanel. Mas para pegar estes 2 valores (senha e email) eu quero que esse sistema php que cria as contas de email no cpanel faca uma busca no bd (dos usuarios cadastrados) e pegue esses 2 valores la atraves das strings $email e $senha que estao no formulario de cadastro e assim cadastrar o email que o usuario pretente criar.
Os sistemas estao funcionando corretamente mais estao funcionando individualmente, ai eu preciso de alguma forma agrupa-los para que o form de cadastro já automaticamente crie o email no cpanel.
Codigo do formulario Cadastro.php
<?php
require("config.php");//arquivo de config para acessar o phpmyadmin
$acao = strip_tags( $_GET['acao'] );
?>
<p><span style="color:#F00">Atenção:</span> O cadastro aqui somente poderá ser efetuado por alunos IFMG, caso contrário sua conta será automaticamente excluída sem nenhum aviso prévio!</p>
<br />
<?php if( empty( $acao ) ) { ?>
<form action="cadastro.php?acao=add" class="formCadastro" name="formcadastre" id="formCadastro" onsubmit="return validateForm()" method="post">
<label>Nome</label>
<div class="inputsCadastro">
<input name="nome" title="Preencha com seu Nome" type="text" class="validate[required,custom[onlyLetterSp]]" id="nome" value="" />
</div><br />
<label>CPF</label>
<div class="inputsCadastro">
<input name="cpf" title="Preencha com seu CPF" type="text" id="cpf" class="validate[required]" value="" maxlength="11" />
</div><br />
<label>Login Desejado</label>
<div class="inputNmail">
<input name="xmail" title="Digite o login desejado" type="text" id="nMail" class="validate[required,custom[nMail]]" value="" maxlength="50" /><div class="mailinfo">@adm.ifmg.br</div>
</div><br />
<label>Senha</label>
<div class="inputsCadastro">
<input name="senha" title="Informe uma Senha" type="password" class="validate[required,minSize[8],custom[onlyLetterNumber]]" id="password" value="" maxlength="20" />
</div><br />
<label>Confirme a Senha</label>
<div class="inputsCadastro">
<input name="confirma_senha" title="Redigite a senha informada acima" type="password" class="validate[required,equals[password]]" id="password2" value="" maxlength="10" />
</div><br />
<p>Responda abaixo uma pergunta secreta que será solicitada para recuperação de senha</p><br />
<label>Pergunta Secreta</label>
<!-- We are going to use jQuery to hide the select element and replace it -->
<select name="pergunta" class="makeMeFancy" title="Escolha uma pergunta secreta para responder">
<!-- Notice the HTML5 data attributes -->
<option value="" selected="selected" data-skip="1">Escolha uma Pergunta</option>
<option value="1" data-html-text="Melhor amigo de infância?">Melhor amigo de infância?</option>
<option value="2" data-html-text="Local onde nasceu?">Local onde nasceu?</option>
<option value="3" data-html-text="Personagem histórico favorito?">Personagem histórico favorito?</option>
<option value="4" data-html-text="Professor favorito?">Professor favorito?</option>
</select>
<br />
<label>Resposta</label>
<div class="inputsCadastro">
<input name="resposta" title="Informe a Resposta para a pergunta escolhida" type="text" id="resposta" class="validate[required]" value="" />
</div><br />
<center><input class="inputCadastrar_off" title="Cadastrar" type="submit" value="Cadastrar" /></center>
</form>
<?php
} // fim da ação EMPTY
if( $acao == 'add')
{
extract( $_POST, EXTR_OVERWRITE); // extrai os dados do POST, transformando os indices em nomes. Sobrescreve as variaveis existentes, se houver
////Pegamos os valores do formulario
$nome = $_POST['nome'];
$cpf = $_POST['cpf'];
$xmail = $_POST['xmail'];
$senha = $_POST['senha'];
$pergunta = $_POST['pergunta'];
$resposta = $_POST['resposta'];
////Agrupamos o User + Endereco final do dominio
$xmailUsr="$xmail";
$xmailEnd="@adm.ifmg.br";
$xmailCp="$xmailUsr"."$xmailEnd";
//Aqui validamos o cpf para não duplicar
$sql1 = mysql_query("SELECT id FROM usuarios WHERE cpf='$cpf'");
$vcpf = mysql_num_rows($sql1);
if( !empty( $cpf ) && $vcpf > 0){
echo "<script language='javascript' type='text/javascript'>
alert('Ops, este CPF já está registrado em nosso banco de dados! Tente outro CPF!');
window.location.href='java script:history.go(-1)'
</script>";
echo "<script language='javascript' type='text/javascript'>
window.location.href='java script:history.go(-1)'
</script>";
exit;
}
//Aqui validamos o usuariomail para não duplicar
$sql1 = mysql_query("SELECT id FROM usuarios WHERE xmail='$xmailCp'");
$xmail = mysql_num_rows($sql1);
if( !empty( $xmailCp ) && $xmail > 0){
echo "<script language='javascript' type='text/javascript'>
alert('Ops, o nome de usuário $xmailCp já está em uso! Tente um outro nome de usuário!');
window.location.href='java script:history.go(-1)'
</script>";
echo "<script language='javascript' type='text/javascript'>
window.location.href='java script:history.go(-1)'
</script>";
exit;
}
$data = date( "d/m/Y" );
$hora = date( "H:i:s" );
$sql = mysql_query("INSERT INTO usuarios (nome, cpf, xmail, senha, pergunta, resposta) VALUES ('$nome', '$cpf', '$xmailCp', '$senha', '$pergunta', '$resposta')") or print(mysql_error());
$ultimo_id = mysql_insert_id();
echo '<script language="javascript" type="text/javascript">
alert("Seu cadastro foi realizado com Sucesso! Clique em OK para se Logar.");
window.location.href="login.php"
</script>';
}
?>
Banco de dados usuarios.sql
-- phpMyAdmin SQL Dump
-- version 3.4.9
-- http://www.phpmyadmin.net
--
-- Host: localhost
-- Generation Time: Mar 27, 2012 at 09:33 PM
-- Server version: 5.0.95
-- PHP Version: 5.2.9
SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";
SET time_zone = "+00:00";
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;
--
-- Database: `ovdscomb_ifmg`
--
-- --------------------------------------------------------
--
-- Table structure for table `usuarios`
--
CREATE TABLE IF NOT EXISTS `usuarios` (
`id` int(20) NOT NULL auto_increment,
`nome` varchar(100) character set utf8 default NULL,
`cpf` varchar(100) character set utf8 default NULL,
`xmail` varchar(100) character set utf8 default NULL,
`senha` varchar(100) character set utf8 default NULL,
`pergunta` varchar(100) character set utf8 default NULL,
`resposta` varchar(100) character set utf8 default NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=27;
--
-- Dumping data for table `usuarios`
--
INSERT INTO `usuarios` (`id`, `nome`, `cpf`, `xmail`, `senha`, `pergunta`, `resposta`) VALUES
(23, 'Vinicius', '090.900.000-00', 'unmeanings@adm.ifmg.br', 'qwerty123', '2', 'não sei'),
(24, 'Teste', '433.333.333-33', 'vamostestar@adm.ifmg.br', '1q2w3e4r', '1', 'sa'),
(25, 'Okay', '121.111.111-11', 'tudookagr@adm.ifmg.br', 'qwerty231', '1', 'sassa'),
(26, 'wer', '325.544.445-55', 'qwertyu@adm.ifmg.br', '13090909', '1', 'adsd');
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
Pergunta
unmeanings
Ola galera boa noite, não sou muito bom em postar em foruns mais vou tentar especificar o melhor possivel o meu problema!
é o seguinte:
Eu estou criando um sistema de webmail para minha universidade este sistema funcionara da seguinte forma:
Pagina de Cadastro (O usuario vai preencher um formulario com dados como: nome, cpf, nome de usuario (para o email, por ex: o usuario vai colocar so o username o @xxx.com é inserido automatico), senha, confirmar senha, pergunta secreta e resposta secreta (para recuperar a senha). Bom esses dados vao para um banco de dados armazeno os seguintes dados vindo do formulario de cadastro: nome, cpf, email(já formatado: usuario@xxx.com), senha, pergunta e resposta, o motivo de eu querer armazenar estes dados no banco de dados e porque o sistema de webmail vai ter uma pagina para o professor que ira enviar emails para os alunos ai os recipientes vao vir do banco de dados.
Ate ai tudo bem, já criei o formulario de cadastro, já criei a tabela no bd, e o formulario já esta funcionando perfeitamente já esta armazenando todos os dados que eu quero no banco de dados.
So que agora eu preciso criar realmente o email no cpanel, e isso tem que ser de forma automatica para isso eu desenvolvi um sisteminha simples em php que cria emails no cpanel este sistema funciona da seguinte forma:
Usuario desejado: input text /@dominio.com.br
Senha: input text
button submit
somente isso! o usuario digita o nome de usuario para o email desejado, cria a senha e clika no botao submit e já automaticamente o sistema cadastra o nome de email solicitado no cpanel. O sistema ta funcionando perfeitamente tambem.
Agora chega no meu problema:
Eu preciso tipo agrupar estes dois sistemas em 1 por exemplo quero que ao preencher o formulario de cadastro e envia-lo quero que já cadastre o email no cpanel, ou seja quero que o sistema de cadastro (que apenas insere os dados no bd) rode junto o sistema php que desenvolvi para criar o email no cpanel ai no caso o sistema iria pegar os valores no banco de dados (já inseridos pelo form de cadastro) por exemplo ao invés de usar $_POST para pegar os valores dos inputs $email e $senha, quero que ele pegue o valor da string do formulario de cadastro por exemplo ele vai pegar o valor $email e o valor $senha do formulario de cadastro e com esses valores inserir no cpanel. Mas para pegar estes 2 valores (senha e email) eu quero que esse sistema php que cria as contas de email no cpanel faca uma busca no bd (dos usuarios cadastrados) e pegue esses 2 valores la atraves das strings $email e $senha que estao no formulario de cadastro e assim cadastrar o email que o usuario pretente criar.
Os sistemas estao funcionando corretamente mais estao funcionando individualmente, ai eu preciso de alguma forma agrupa-los para que o form de cadastro já automaticamente crie o email no cpanel.
Codigo do formulario Cadastro.php
<?php require("config.php");//arquivo de config para acessar o phpmyadmin $acao = strip_tags( $_GET['acao'] ); ?> <p><span style="color:#F00">Atenção:</span> O cadastro aqui somente poderá ser efetuado por alunos IFMG, caso contrário sua conta será automaticamente excluída sem nenhum aviso prévio!</p> <br /> <?php if( empty( $acao ) ) { ?> <form action="cadastro.php?acao=add" class="formCadastro" name="formcadastre" id="formCadastro" onsubmit="return validateForm()" method="post"> <label>Nome</label> <div class="inputsCadastro"> <input name="nome" title="Preencha com seu Nome" type="text" class="validate[required,custom[onlyLetterSp]]" id="nome" value="" /> </div><br /> <label>CPF</label> <div class="inputsCadastro"> <input name="cpf" title="Preencha com seu CPF" type="text" id="cpf" class="validate[required]" value="" maxlength="11" /> </div><br /> <label>Login Desejado</label> <div class="inputNmail"> <input name="xmail" title="Digite o login desejado" type="text" id="nMail" class="validate[required,custom[nMail]]" value="" maxlength="50" /><div class="mailinfo">@adm.ifmg.br</div> </div><br /> <label>Senha</label> <div class="inputsCadastro"> <input name="senha" title="Informe uma Senha" type="password" class="validate[required,minSize[8],custom[onlyLetterNumber]]" id="password" value="" maxlength="20" /> </div><br /> <label>Confirme a Senha</label> <div class="inputsCadastro"> <input name="confirma_senha" title="Redigite a senha informada acima" type="password" class="validate[required,equals[password]]" id="password2" value="" maxlength="10" /> </div><br /> <p>Responda abaixo uma pergunta secreta que será solicitada para recuperação de senha</p><br /> <label>Pergunta Secreta</label> <!-- We are going to use jQuery to hide the select element and replace it --> <select name="pergunta" class="makeMeFancy" title="Escolha uma pergunta secreta para responder"> <!-- Notice the HTML5 data attributes --> <option value="" selected="selected" data-skip="1">Escolha uma Pergunta</option> <option value="1" data-html-text="Melhor amigo de infância?">Melhor amigo de infância?</option> <option value="2" data-html-text="Local onde nasceu?">Local onde nasceu?</option> <option value="3" data-html-text="Personagem histórico favorito?">Personagem histórico favorito?</option> <option value="4" data-html-text="Professor favorito?">Professor favorito?</option> </select> <br /> <label>Resposta</label> <div class="inputsCadastro"> <input name="resposta" title="Informe a Resposta para a pergunta escolhida" type="text" id="resposta" class="validate[required]" value="" /> </div><br /> <center><input class="inputCadastrar_off" title="Cadastrar" type="submit" value="Cadastrar" /></center> </form> <?php } // fim da ação EMPTY if( $acao == 'add') { extract( $_POST, EXTR_OVERWRITE); // extrai os dados do POST, transformando os indices em nomes. Sobrescreve as variaveis existentes, se houver ////Pegamos os valores do formulario $nome = $_POST['nome']; $cpf = $_POST['cpf']; $xmail = $_POST['xmail']; $senha = $_POST['senha']; $pergunta = $_POST['pergunta']; $resposta = $_POST['resposta']; ////Agrupamos o User + Endereco final do dominio $xmailUsr="$xmail"; $xmailEnd="@adm.ifmg.br"; $xmailCp="$xmailUsr"."$xmailEnd"; //Aqui validamos o cpf para não duplicar $sql1 = mysql_query("SELECT id FROM usuarios WHERE cpf='$cpf'"); $vcpf = mysql_num_rows($sql1); if( !empty( $cpf ) && $vcpf > 0){ echo "<script language='javascript' type='text/javascript'> alert('Ops, este CPF já está registrado em nosso banco de dados! Tente outro CPF!'); window.location.href='java script:history.go(-1)' </script>"; echo "<script language='javascript' type='text/javascript'> window.location.href='java script:history.go(-1)' </script>"; exit; } //Aqui validamos o usuariomail para não duplicar $sql1 = mysql_query("SELECT id FROM usuarios WHERE xmail='$xmailCp'"); $xmail = mysql_num_rows($sql1); if( !empty( $xmailCp ) && $xmail > 0){ echo "<script language='javascript' type='text/javascript'> alert('Ops, o nome de usuário $xmailCp já está em uso! Tente um outro nome de usuário!'); window.location.href='java script:history.go(-1)' </script>"; echo "<script language='javascript' type='text/javascript'> window.location.href='java script:history.go(-1)' </script>"; exit; } $data = date( "d/m/Y" ); $hora = date( "H:i:s" ); $sql = mysql_query("INSERT INTO usuarios (nome, cpf, xmail, senha, pergunta, resposta) VALUES ('$nome', '$cpf', '$xmailCp', '$senha', '$pergunta', '$resposta')") or print(mysql_error()); $ultimo_id = mysql_insert_id(); echo '<script language="javascript" type="text/javascript"> alert("Seu cadastro foi realizado com Sucesso! Clique em OK para se Logar."); window.location.href="login.php" </script>'; } ?>Banco de dados usuarios.sql Sistema que cria o email automatico no cpanel<?php $cpmod = 'x3'; // Tema de seu CPANEL $host = 'site.com.br'; // Digite seu host $port = '2082'; // Porta do CPANEL $port_mail = '2095'; // Porta do EMAIL $ownername = "usuario"; // Usuário CPANEL $reseller_pass = "senha"; // Senha CPANEL $domain = "$host"; // ========================================================= // DADOS POSTADOS POR FORMULÁRIO //----------------------------------------------------------------- $email = $_POST[email]; $password = $_POST[pass]; $quota = $_POST[quota]; if ($_POST[email]) { $request = "/frontend/$cpmod/mail/doaddpop.html?email=$email&domain=$domain&password=$password"a=$quota"; $result = cprq($host,$port,$ownername,$reseller_pass,$request); $show = strip_tags($result); if (strpos($show, "already") !== false && strpos($show, "exists") !== false) { echo "Esta conta já existe!"; } else { echo"Conta criada com sucesso!"; } } function cprq($host,$port,$ownername,$reseller_pass,$request) { $sock = @fsockopen($host,$port); if(!$sock) { print('Erro de conexão com soquete'); exit(); } $authstr = "$ownername:$reseller_pass"; $pass = base64_encode($authstr); $in = "GET $request\r\n"; $in .= "HTTP/1.0\r\n"; $in .= "Host:$domain\r\n"; $in .= "Authorization: Basic $pass\r\n"; $in .= "\r\n"; fputs($sock, $in); while (!feof($sock)) { $result .= fgets ($sock,128); } fclose( $sock ); return $result; } ?> <style type="text/css"> <!-- .style1 { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 10px; } .style2 {font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 10px; font-weight: bold; } --> </style> <form id="form1" name="form1" method="post" action=""> <table width="100%" border="0" cellspacing="10" cellpadding="0"> <tr> <td width="30%" class="style1"> <div align="right"><b> <span class="style1">Conta:</span> <input name="email" type="text" id="email" /> </b></div> </td> <td width="70%" class="style2">@ <select name="select"> <option value="<?php echo $host; ?>"><?php echo $host; ?></option> </select> </td> </tr> <tr> <td class="style1"> <div align="right" class="style2">Senha:</div> </td> <td class="style1"> <input name="pass" type="text" id="pass" /> </td> </tr> <tr> <td class="style1"> <div align="right"><b>Cota:</b></div> </td> <td class="style1"> <input name="quota" type="text" id="quota" size="5" /> Megas ( vazio para ilimitado ) </td> </tr> <tr> <td class="style1"> </td> <td class="style1"> <input name="Submit" type="submit" class="style1" value="Submeter" /> </td> </tr> </table> </form>não sei se entendeream mais se não tiver entendido responda com uma pergunta perguntando o que não entendeu porque ai tento explicar melhor...
Espero que possam me ajudar
Link para o comentário
Compartilhar em outros sites
1 resposta 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.