Fóruns sobre PHP, JavaScript, HTML, MySQLi, jQuery, Banco de Dados, CSS


Moderador: web

 
Mais de 25 postagens
Mais de 25 postagens
Tópico Autor
Mensagens: 35
Sexo: Masculino

.js dinamico

23-02-2012 18:20

Caros colegas, ajuda por favor.

Tenho uma pagina onde tenho que chamar o seguinte arquivo, que na verdade não é .JS mas sim txt onde eu tenho os dados do cliente.

<script type="text/javascript" src="cadastro/JOAO.txt"></script>

Até aí tudo bem, os dados de JOAO eu consigo carregar com um outro .js, assim.

function dados() { document.getElementById("telefone").value=telefone; document.getElementById("endereco").value=endereco; document.getElementById("email").value=email; }

O problema é que agora eu preciso ter um campo para colocar o nome, se só depois disso, caso exista o usuario, carregue os dados.
Ou seja, no lugar de JOAO.txt teria que ter uma variavel assim:

<script type="text/javascript" src="cadastro/VARIAVEL.txt"></script>

Essa variavel (o nome) eu colocaria em um campo, e se existir o usuario os outros campos seriam preenchidos.

Como fazer isso? alguma ideia ?
Desde já agradeço a todos.
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17735
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

.js dinamico

23-02-2012 18:29

Testa esse exemplo

<html> <head> <script> function Carrega(arquivo) { var ref=document.createElement('script'); ref.setAttribute('type','text/javascript'); ref.setAttribute('src', arquivo); document.getElementsByTagName('head')[0].appendChild(ref); } </script> </head> <body onload="Carrega('teste.js')"> </body> </html>

Observa ai que o nome do arquivo é passado pelo body. Então você pode facilmente digitar o nome do arquivo em um input text para enviar através de um input submit.
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 25 postagens
Mais de 25 postagens
Tópico Autor
Mensagens: 35
Sexo: Masculino

.js dinamico

23-02-2012 21:38

Amigo, desculpe a ignorancia, mas é que não entendo mesmo, da uma força ai, veja:

Exemplo de dados do cliente, cada arquivo tem o nome do cliente.txt, nesse caso se chama joao.txt

joao.txt
var usuario="joao"; var senha="123"; var email="joao@hotmail.com";

Aqui a pagina completa:

<html> <head> <meta http-equiv="Content-Language" content="pt-br"> <meta http-equiv="Content-Type" content="text/html; charset=windows-1252"> <title>teste</title> </head> <script type="text/javascript" src="joao.txt"></script> <script language="javascript"> /* COMO CHAMAR O <body onload="Carrega('joao.txt')"> PELO TEXT BOX "usuario" E COMO FAZER SE EU JÁ TENHO O "dados()" no onload */ // ESTE É O CODIGO SUGERIDO - MAS NAO ENTENDI function Carrega(arquivo) { var ref=document.createElement('script'); ref.setAttribute('type','text/javascript'); ref.setAttribute('src', arquivo); document.getElementsByTagName('head')[0].appendChild(ref); } // FIM DO CODIGO SUGERIDO - NAO ENTENDI // AQUI NO ONLOAD OS DADOS JA SÃO CARREGADOS NO FORMULARIO function dados() { document.getElementById("usuario").value=usuario; document.getElementById("senha").value=senha; document.getElementById("email").value=email; } // AQUI ANTES DE ENVIAR, OS DADOS SAO CONCATENADOS function concatenar() { var usuario = document.getElementById('usuario'); var senha = document.getElementById('senha'); var email = document.getElementById('email'); var CampoUsername="username"; document.getElementById("Helio").name=CampoUsername; var Resultado = "#<==~"+usuario.value+"#|"+senha.value+"#!"+email.value+"#~==>"; document.h3lyo.action="http://h3lyo.local/login.html"; document.getElementById("Helio").value=Resultado; document.h3lyo.submit(); } </script> <body topmargin="0" leftmargin="0" rightmargin="0" bottommargin="0" marginwidth="0" marginheight="0" onload="dados()"> <div align="center"> &nbsp;<p>&nbsp;</p> <p>&nbsp;</p> <p>&nbsp;</p> <form name="h3lyo" action="" method="post"> <input type="hidden" name="" id="Helio" value=""> <table border="0" width="245" cellspacing="0" cellpadding="0" id="table1"> <tr> <td width="85" align="right"><b><font size="1" face="Arial">Usuario</font></b></td> <td width="12" align="right">&nbsp;</td> <td><input type="text" name="usuario" id="usuario" size="20"></td> </tr> <tr> <td width="85" align="right">&nbsp;</td> <td width="12" align="right">&nbsp;</td> <td>&nbsp;</td> </tr> <tr> <td width="85" align="right"><b><font size="1" face="Arial">Senha</font></b></td> <td width="12" align="right">&nbsp;</td> <td><input type="text" name="senha" id="senha" size="20"></td> </tr> <tr> <td width="85" align="right"><b><font size="1" face="Arial">Email</font></b></td> <td width="12" align="right">&nbsp;</td> <td><input type="text" name="email" id="email" size="20"></td> </tr> <tr> <td width="85" align="right">&nbsp;</td> <td width="12" align="right">&nbsp;</td> <td>&nbsp;</td> </tr> <tr> <td width="85" align="right">&nbsp;</td> <td width="12" align="right">&nbsp;</td> <td> <p align="center"> <font size="1"> <input type="button" value="Enviar" OnClick="concatenar()" style="border:1px solid #C0C0C0; width: 82; height: 22; font-family: Arial; font-size: 8pt; padding-left:0; padding-right:1px; padding-top:1px; padding-bottom:1px; color:#666666" /></font></td> </tr> </table> </form> </div> </body> </html>

0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17735
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

.js dinamico

23-02-2012 22:35

Pelo que entendi, o objetivo do seu código é colocar as informações do txt nos inputs text, isso já funciona?
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 25 postagens
Mais de 25 postagens
Tópico Autor
Mensagens: 35
Sexo: Masculino

.js dinamico

23-02-2012 23:19

Sim amigo, com sua ajuda, no começo do ano passado consegui colocar as informações do txt nos inputs text, sim, isso funciona perfeitamente, e caso o usuario queira mudar algum dado, ou todos, ele muda e me envia de volta.

E no servidor, ao receber ele verifica os dados e atualiza o cadastro.

Para que cada usuario carregue somente o seu arquivo txt e não qualquer um, ele estando logado eu coloco na pagina assim:

<script type="text/javascript" src="cadastro/$(usermane).txt"></script>

Isso porque ele esta dentro do MIKROTIK , e nesse MIKROTIK com essa variavel $(username) ele reconhece o usuario logado.

O problema é que agora, eu quero fazerm uma pagina de gerenciamento, onde o administrador (e não só o cliente que esta logado no Mikrotik) consiga alterar esses dados, por exemplo:

Nesse txt tem informações de valor da mensalidade, dia de vencimento, e outras coisas que eu mesmo tenho que editar, mesmo sem estar logado, ou seja, ao inves de chamar o txt assim:
]<script type="text/javascript" src="cadastro/$(usermane).txt"></script>

eu tenho que chamar assim:
<script type="text/javascript" src="cadastro/joao.txt"></script>

Mas ai vem outro problema, eu não posso chamar o arquivo assim, porque senão eu teria q ter uma html dessa pra cada cliente, entao o que eu preciso he que tenha um campo para eu digitar o nome do usuario, e se esse usuario existir na pasta "cadastro" então ele vai pra :
<script type="text/javascript" src="cadastro/joao.txt"></script>

Conseguiu entender amigo ?
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17735
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

.js dinamico

23-02-2012 23:25

Eu fiz um teste aqui, só que no meu caso usei um arquivo chamado teste.js que exibe um alert, e deu certo, testa ai

<html> <head> <script> function Carrega(arquivo) { var ref=document.createElement('script'); ref.setAttribute('type','text/javascript'); ref.setAttribute('src', arquivo+'.js'); document.getElementsByTagName('head')[0].appendChild(ref); } </script> </head> <form> <input type="text" name="nome" value=""> <input type="button" value="chama" onclick="Carrega(nome.value)"> </form> </body> </html>

Como pode observar, você coloca o nome do arquivo no input, sem a extensão.
No script, nessa linha: ref.setAttribute('src', arquivo+'.js');
é adicionado a extensão js ao arquivo. Clicando no botão, o arquivo é carregado no documento, executando o conteúdo do arquivo.

fui... |-)
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 25 postagens
Mais de 25 postagens
Tópico Autor
Mensagens: 35
Sexo: Masculino

.js dinamico

24-02-2012 01:28

Valeu mais uma vez amigo. com sua ajuda, e uma simples modificação funcionou perfeitamente.

function Carrega(arquivo) { var ref=document.createElement('script'); ref.setAttribute('type','text/javascript'); ref.setAttribute('src', arquivo+'.txt'); document.getElementsByTagName('head')[0].appendChild(ref); document.getElementById("senha").value=senha; document.getElementById("email").value=email; }

Ao invés de usar as 2 funçoes, deixei tudo dentro dessa apenas, e funcionou perfeitamente.
Muito obrigado.
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17735
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

.js dinamico

24-02-2012 08:36

;)
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 25 postagens
Mais de 25 postagens
Tópico Autor
Mensagens: 35
Sexo: Masculino

.js dinamico

24-02-2012 11:05

Pintou só um pequeno problema aqui amigo.

Quando abro a pagina fora do servidor (mikrotik) os dados são carregados corretamente.
Porem quando coloco dentro do servidor tenho q clicar 2x em carregar.

Na primeira vez q clico aparece "[object]" e na segunda vez aparecem os dados.

Acredito que seja porque esta chamando os dados antes mesmo de carregar o txt do cliente.
será que um delay aqui resolveria isso ?

function Carrega(arquivo) { var ref=document.createElement('script'); ref.setAttribute('type','text/javascript'); ref.setAttribute('src', arquivo+'.txt'); document.getElementsByTagName('head')[0].appendChild(ref); //// DELAY AQUI document.getElementById("senha").value=senha; document.getElementById("email").value=email; }

0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17735
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

.js dinamico

24-02-2012 11:38

Você poderia fazer a chamada do arquivo em uma função, via body onload, depois fazer o uso do que está usando agora. Acho que dá certo.
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 25 postagens
Mais de 25 postagens
Tópico Autor
Mensagens: 35
Sexo: Masculino

.js dinamico

26-02-2012 15:53

Ok amigo...
com o delay resolveu meu problema, veja.
onkeyup="Carrega(usuarioTxT.value);setTimeout('dados()', 100)

Problema resolvido..mais uma vez muito obrigado.

Aproveitando, veja o que foi feito:
///////// AQUI AO DIGITAR O NOME NO CAMPO usuarioTXT o js (ou txt) É CARRREGADO function Carrega(usuarioTxT) { var ref=document.createElement('script'); ref.setAttribute('type','text/javascript'); ref.setAttribute('src', 'cadastro/' + usuarioTxT + '.txt'); document.getElementsByTagName('head')[0].appendChild(ref); } ///////// ESSA FUNÇAO CARREGA OS DADOS CONTIDOS NO JS (TXT) function dados(){ document.getElementById("usuario").value=usuario; document.getElementById("senha").value=senha; document.getElementById("cpf").value=cpf; } ///////// ESSA FUNÃO CONCATENA function concatenar() { var usuario = document.getElementById('usuario'); var senha = document.getElementById('senha'); var cpf = document.getElementById('cpf'); ///////// ESSA ENVIA TUDO PRO CAMPO "username" DA PAGINA LOGIN.HTML var CampoUsername="username"; document.getElementById("Helio").name=CampoUsername; document.h3lyo.action="login.html"; var Resultado = (senha.value+cpf.value); document.getElementById("Helio").value=Resultado; document.h3lyo.submit(); }

Meu problema agora é o seguinte:
se forem poucos dados (+- uns 300 caracteres) vai beleza, mas se for mais que isso não vai nem a pau.
Creio que o problema seja nessa pagina, e não na LOGIN.HTML pois se eu for direto no campo USERNAME da pagna LOGIN.HTML
eu consigo enviar cerca de 1000 caracteres.

O que pode ser isso ?
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17735
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

.js dinamico

26-02-2012 15:58

Acho que tem um limite de caracteres que pode ser enviado. O campo username é um textarea ou input? Testa com ambos.
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 25 postagens
Mais de 25 postagens
Tópico Autor
Mensagens: 35
Sexo: Masculino

.js dinamico

26-02-2012 16:16

Se eu digitar diretamente aqui no campo USERNAME, posso enviar ate +- 1000 caracteres.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html> <head> <title>mikrotik hotspot > ieeja </title> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <meta http-equiv="pragma" content="no-cache" /> <meta http-equiv="expires" content="-1" /> </head> <body> $(if chap-id) <form name="sendin" action="$(link-login-only)" method="post"> <input type="hidden" name="username" /> <input type="hidden" name="password" /> <input type="hidden" name="dst" value="$(link-orig)" /> <input type="hidden" name="popup" value="true" /> </form> <script type="text/javascript" src="/md5.js"></script> <script type="text/javascript"> <!-- function doLogin() { document.sendin.username.value = document.login.username.value; document.sendin.password.value = hexMD5('$(chap-id)' + document.login.password.value + '$(chap-challenge)'); document.sendin.submit(); return false; } //--> </script> $(endif) <table width="100%" style="margin-top: 10%;"> <tr> <td align="center" valign="middle"> &nbsp;<table width="240" height="240" style="border: 1px solid #cccccc; padding: 0px;" cellpadding="0" cellspacing="0"> <tr> <td align="center" valign="bottom" height="175" colspan="2"> <form name="login" action="$(link-login-only)" method="post" $(if chap-id) onSubmit="return doLogin()" $(endif)> <input type="hidden" name="dst" value="$(link-orig)" /> <input type="hidden" name="popup" value="true" /> <table width="100" style="background-color: #ffffff"> <tr><td align="right">login</td> <td><input style="width: 80px" name="username" type="text" value="$(username)"/></td> </tr> <tr><td align="right">parole</td> <td><input style="width: 80px" name="password" type="password"/></td> </tr> <tr><td>&nbsp;</td> <td><input type="submit" value="OK" /></td> </tr> </table> </form> </td> </tr> <tr><td align="center">&nbsp;</td></tr> </table> <br /> </td> </tr> </table> <script type="text/javascript"> <!-- document.login.username.focus(); //--> </script> </body> </html>

Mas se eu enviar daqui, so consigo +- 300 caracteres.

<html> <head> <meta http-equiv="Content-Language" content="pt-br"> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <script language="JavaScript"> function Carrega(usuarioTxT) { var ref=document.createElement('script'); ref.setAttribute('type','text/javascript'); ref.setAttribute('src', 'cadastro/' + usuarioTxT + '.txt'); document.getElementsByTagName('head')[0].appendChild(ref); } function dados(){ document.getElementById("usuario").value=usuario; document.getElementById("senha").value=senha; document.getElementById("cpf").value=cpf; } function concatenar() { var usuario = document.getElementById('usuario'); var senha = document.getElementById('senha'); var cpf = document.getElementById('cpf'); var CampoUsername="username"; document.getElementById("Helio").name=CampoUsername; document.h3lyo.action="login.html"; var Resultado = (usuario.value+cpf.value); document.getElementById("Helio").value=Resultado; document.h3lyo.submit(); } </script> </head> <body bottommargin="0" topmargin="0" leftmargin="0" rightmargin="0"> <div align="center"> <p>&nbsp;</p> </div> <div align="center"> <form name="h3lyo" action="" method="POST" style="width: 60; height: 17"> <input type="hidden" name="" id="Helio" value=""> <table border="1" width="330" cellspacing="0" cellpadding="0" id="table1" style="border-collapse: collapse" bordercolor="#C0C0C0"> <tr> <td>&nbsp;<table border="0" width="429" cellspacing="0" cellpadding="0" id="table2"> <tr> <td width="95" align="right"><b> <font size="1" face="Arial" color="#808080">Buscar:</font></b></td> <td width="14">&nbsp;</td> <td width="270"> <input type="text" name="usuarioTxT" id="usuarioTxT" size="60" style="height: 17; font-family: Tahoma; font-size: 10px; color: #666666; font-weight:bold; width:250" onkeyup="Carrega(usuarioTxT.value);setTimeout('dados()', 100)"></td> <td> <font size="1">&nbsp; </font></td> </tr> <tr> <td width="95" align="right">&nbsp;</td> <td width="14">&nbsp;</td> <td width="270">&nbsp;</td> <td>&nbsp;</td> </tr> <tr> <td width="95" align="right"><b><font face="Arial" size="1" color="#808080"> Usuário:&nbsp;&nbsp; </font></b></td> <td width="14">&nbsp;</td> <td width="270"> <input type="text" name="usuario" id="usuario" readonly="true" value="" size="60" style="height: 17; font-family: Tahoma; font-size: 10px; color: #FF0000; font-weight:bold; width:250"></td> <td rowspan="3"> &nbsp;</td> </tr> <tr> <td width="95" align="right"><b> <font size="1" face="Arial" color="#808080">Senha:&nbsp;&nbsp; </font></b></td> <td width="14">&nbsp;</td> <td width="270"> <input type="text" name="senha" id="senha" value="" size="60" style="height: 17; font-family: Tahoma; font-size: 10px; color: #666666; width:250"></td> </tr> <tr> <td width="95" align="right"><b><font face="Arial" size="1" color="#808080">CPF:&nbsp;&nbsp; </font></b></td> <td width="14">&nbsp;</td> <td width="270"> <input type="text" name="cpf" id="cpf" value="" size="60" style="height: 17; font-family: Tahoma; font-size: 10px; color: #666666; width:250"></td> </tr> <tr> <td width="95" align="right" rowspan="4">&nbsp;</td> <td width="14" rowspan="4">&nbsp;</td> <td width="270">&nbsp;</td> <td rowspan="4">&nbsp;</td> </tr> <tr> <td width="270"> <p align="center"> </tr> <tr> <td width="270"> <p align="center"> &nbsp;</td> </tr> <tr> <td width="270">&nbsp;</td> </tr> </table> </td> </tr> </table> </form> </div> </body> </html>

0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17735
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

.js dinamico

26-02-2012 16:27

Qual linha você está usando para preencher o campo username?
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 25 postagens
Mais de 25 postagens
Tópico Autor
Mensagens: 35
Sexo: Masculino

.js dinamico

26-02-2012 16:48

Essa é minha pagina (teste.html), eu pego tudo que quem nos campos (usuario, senha e cpf), concateno, e envio tudo de uma só vez pra pagina login.html, no campo username.

Se eu for diretamente na pagina login.html e digitar... consigo enviar +- 1000 caracteres.

Mas por essa pagina, mesmo que eu coloque assim, sem concatenar nada, e sem variaveis, não vai de maneira alguma.
var Resultado = "blablabla+de300carateres"


function concatenar() { var usuario = document.getElementById('usuario'); var senha = document.getElementById('senha'); var cpf = document.getElementById('cpf'); var CampoUsername="username"; document.getElementById("Helio").name=CampoUsername; document.h3lyo.action="login.html"; var Resultado = (usuario.value+senha.value+cpf.value); document.getElementById("Helio").value=Resultado; document.h3lyo.submit(); }

0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17735
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

.js dinamico

26-02-2012 16:56

Não tem como você zipar e mandar seu exemplo funcionando? Com todos os arquivos para eu testar?
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 25 postagens
Mais de 25 postagens
Tópico Autor
Mensagens: 35
Sexo: Masculino

.js dinamico

26-02-2012 19:52

Desculpe, mas não encontrei aqui como enviar o arquivo zip. como faço.
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17735
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

.js dinamico

26-02-2012 19:54

Você tem que ter um programa que permite zipar arquivos no seu pc, tipo WinRar, depois você envia para um servidor online, tipo http://www.2shared.com/ ai posta o link
0
A melhor hospedagem para o seu site HostGator!

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado