Ir para conteúdo
Fórum Script Brasil

RpgBoss

Membros
  • Total de itens

    10
  • Registro em

  • Última visita

Sobre RpgBoss

  • Data de Nascimento 15/03/1988

Perfil

  • Gender
    Male

RpgBoss's Achievements

0

Reputação

  1. RpgBoss

    Restringir extencao de email

    Deixa eu ver se entendi, emails comuns não podem ser usados, mas muitos emails institucionais contém ".br", ".com", etc. O mais pratico seria listar todas as possibilidades de emails institucionais, para confirmar o envio, você pode validar por Javascript mas se quer por PHP: <?php $listprov=["unicamp.br","pucsp.edu.br","@usp.br"]; $youprov=explode("@",$_POST['email'])[1]; $chkprov=false; for ($m=0; $m<=$listprov.length; $m++) { if($youprov == $listprov[m]){ $chkprov=true; } } if($chkprov==true){ echo "Email ".$_POST['email']." permitido"; }else{ echo "Você não pode se cadastrar com este email"; } ?>
  2. Não temos nem idéia de como é a tabela do seu MySql, mas se você ler rápidamente qualquer tutorial sobre o assunto vai saber como passar dados do DB para o PHP, no seu caso imagino que seja algo assim: https://www.w3schools.com/php/php_mysql_select.asp
  3. Mas o erro também está nas todos e nos A, nenhum deles está fechado, isso é HTML básico. <a href="" atributos>link</a> A maneira correta. foreach($sql->fetchAll() as $usuario){ // Montagem da tabela echo '<tr>'; echo '<td>'.$usuario['nome'].'</td>'; echo '<td>'.$usuario['email'].'</td>'; echo '<td><a href="editar.php?id='.$usuario['id'].'" class="btn btn-info">Editar<a/> <a href="excluir.php?id='.$usuario['id'].'" class="btn btn-danger"> Excluir</a><td/>'; echo '</tr>'; } Por que se não o primeiro link pode transformar a table toda num link ou parte dela.
  4. Primeiro você vai ter que aprender a ler o XML com parse: https://www.w3schools.com/xml/xml_parser.asp Depois para conferir o conteúdo selecionado: Como Bolean: function lerStatus() { var statusmsg = xmlDoc.getElementsByTagName('status')[0].firstChild.nodeValue; var statusmsg = eval(statusmsg); if(statusmsg == true){ //Caso True }else{ //Caso False } } Se quiser como String: function lerStatus() { var statusmsg = xmlDoc.getElementsByTagName('status')[0].firstChild.nodeValue; if(statusmsg == "true"){ //Caso True } if(statusmsg == "false"){ //Caso False } } Com Zero e Um: function lerStatus() { var statusmsg = xmlDoc.getElementsByTagName('status')[0].firstChild.nodeValue; (statusmsg == true) ? 1 : 0; if(statusmsg == 1){ //Caso 1 }else{ //Caso 0 } }
  5. Você teria que fazer o primeiro TEXTAREA ser uma DIV, por que não se pode estilizar partes de texto dentro de TEXTAREA. Confirmar pra mim se você que fazer um editor de códigos com HTML+Javascript.
  6. Eu fiz assim e testei no Firefox, Opera e IE11: <script> function dimensoes(t){ var w = t.naturalWidth; var h = t.naturalHeight; alert("Altura: "+w+"\nLargura: "+h); } </script> <img src="urldaimagem" onclick="dimensoes(this);" width="10" height="10" />
  7. Eu consegui descobrir a razão de alguns sites pegarem o IPV4 mesmo usando IPV6 ao mesmo tempo e a minha hospedagem não, as rotas usadas podem variar do servidor onde foi hospedado a script PHP, então não tem realmente como isso ser feito sem uso de serviço de terceiros. Agora uma solução alternativa, vale lembrar que não vou postar o serviço de terceiros que usei por que acredito que isso seja mal visto pela comunidade, e que também pode ser considerado um sistema mal feito. Para poder solucionar eu usei este serviço para converter em JSON o IPV4: http://<ipv4 ipv6 service>/json/widgetdata.php?callback=_jqjsp&_1518034744039= Ele retorna uma JSON: _jqjsp({"address":"XXX.XXX.XXX.XXX","proto":"ipv4","country_code":"BR","country":"Brazil"}) Mas não se pode usar xmlHTTPrequest para receber valores de outra um JSON de outra hospedagem, então através da URL dela eu alterei o termo da variavel **callback** de maneira que a gambiarra fazendo com que o PHP do serviço criasse uma variavel Javascript: http://<ipv4 ipv6 service>/json/widgetdata.php?callback=dataipv4= E chamando ele por HTML a variavel fica acessivel ao seu navegador como um objeto JSON: dataipv4=({"address":"XXX.XXX.XXX.XXX","proto":"ipv4","country_code":"BR","country":"Brazil"}) Então agora sim com xmlHTTPRequest bastou usar a variavel dataipv4.address para obter o IP e enviar por método GET pra um PHP que use o IP: function showIpv(ip) { var xmlhttp = new XMLHttpRequest(); xmlhttp.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { console.log() } }; xmlhttp.open("GET", "write_ipv4.php?ip="+ip, true); xmlhttp.send(); } O arquivo write_ipv4.php que fica na hospedagem: <?php if(isset($_GET['ip']) && !empty($_GET['ip'])){ /* User a variavel global $_GET['ip'] da maneira que preferir Por exemplo: echo $_GET['ip'] retorna o IP no formato XXX.XXX.XXX.XXX */ }else{ console.log('Acesso direto proibido'); } ?>
  8. Esse formato de data e hora não são contados como números e sim como STRING, então o IF ou CASE nunca irá conseguir saber quem é maior que quem. Não posso testar agora, mas tente usar strtotime() Antes da Swicth $hora = strtotime($hora); Um dos case, faça o mesmo no outro. case ($hora == strtotime('16:30:00') || $hora >= strtotime('16:30:00')):
  9. O erro está na sua linha da IF e da função mail(). Olha, vale lembrar que eu não concordo com uso de PHP para enviar EMAIL sem ter uma va.lidação perfeita que checa até o formato do email, sendo isso feito inicialmente em javascript e depois pelo próprio PHP. Mas como aparentemente você está fazendo testes existem essas duas maneiras. if(isset($vnome) && isset($vemail) && isset($vassunto) && isset($vmensagem)){ mail("emaildosite@provedor.com",$vassunto,"De ".$vnome."\n\n".$vmensagem); }else{ echo "Houve algum erro no preenchimento do formulário"; } Ou pra retornar o erro correto: if ($_SERVER['REQUEST_METHOD'] === 'POST') { $vnome=$_POST['nome']; $vemail=$_POST['email']; $vassunto=$_POST['assunto']; $vmensagem=$_POST['mensagem']; /* Declarar variavel para contar quantos campos foram preenchidos */ $validador = 0; if(!empty($vnome)){ $validador = $validador + 1; }else{ echo "ERRO: Preencha o seu nome<br>\n"; } if (!empty($vassunto)){ $validador = $validador + 1; }else{ echo "ERRO: Preencha o assunto<br>\n"; } if (!empty($vemail)){ $validador = $validador + 1; }else{ echo "ERRO: Preencha seu email<br>\n"; } if (!empty($vmensagem)){ $validador = $validador + 1; }else{ echo "ERRO: Preencha o corpo do email<br>\n<br>\n"; } /* Condição para enviar o email */ if ($validador == 4){ /** TUDO CERTO ENVIAR EMAIL **/ //coloque aqui o e-mail que deve receber a mensagem do formulário mail("email@provedordaempresa.com",$vassunto,"Email enviado por ".$vnome.".\n\n".$vmensagem."\n\n\nResponda para ".$vemail); echo "E-MAIL enviado com sucesso! Agora aguarde chegar na nossa caixa de entrada.<br>\n<br>\nMuito obrigado."; }else{ /** SE ALGUM DOS ITEMS ESTIVER VAZIO **/ echo "O seu email não foi enviado, veja acima os campos que faltaram preencher "; } }else{ echo "Você não pode acessar essa página diretamente, volte para o formulário, preencha o email e aperte ENVIAR"; } Eu ia colocar um método para enviar uma cópia para o cliente por garantia, mas o servidor limita a um chamado da função mail() por requisição. mail("email@provedordaempresa.com;".$vemail,... Então se quiser mandar uma cópia altere
  10. Eu sempre usei $_SERVER['REMOTE_ADDR'] para obter o IP do usuário/visitante em alguns sistemas. Porém comecei a usar um IP FIXO no trabalho, que é IPV4, mas quando vou ver o registro eu acessei com IPV6. Mas em sites como fóruns e blogs os sistemas em PHP deles registram o IPV4, e analisei os códigos e mesmo assim não consegui entender o algorítimo que consegue passar o IPV6 ou outro método para IPV4. Então acredito que seja possível somente com PHP, se alguém puder me ajudar.
×
×
  • Criar Novo...