Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Kharel

interação com frameset

Recommended Posts

Bom dia galera,

sou novo na área e basicamente um feto no que tange programação web.

 

Gostaria de pedir ajuda a vocês com relação a uma dificuldade que estou enfrentando. Eu nunca parei para estudar javascript, creio que ajax seja o local certo a postar.

Estou desenvolvendo um micro-software para automatizar uma função de verificação, onde preciso verificar uma data disponível.

 

Fiz o sistema em PHP em um frameset, onde o top executa as funções e manda para o main exibir.

neste caso estou trabalhando com meu local server provendo o top e o main é um site puxado da web, nesse site eu preciso valida vários forms antes de verificar se tenho agendamentos disponíveis no mês atual. Então o top vai provendo as informações pra validação desses forms e o main exibindo como se o usuário estivesse clicando em avançar.

 

na ultima etapa é exibido um calendário e caso tenha dias disponíveis no mês corrente eles tem uma cor diferenciada.

 

Tentei usar o fopen para capturar a página após as validações passei esse conteúdo para um txt para verificar se estava compatível com a página exibida, mas infelizmente a estrutura utilizada não me permitiu sucesso.

 

imaginei que a maneira mais simples de executar essa verificação seria um JavaScript no top frame(página local) que acesse o atual da página carregada no mainframe (página terceira) e assim ele verifique se a code da cor que referencia dia disponível está presente na página.

 

Alguém poderia me ajudar a criar esta função em JS ? acessar a página não local que esta no meu frameset e verificar se codigo X no caso o valor da cor está presente.

 

agradeço pela atenção.

 

Kharel

Compartilhar este post


Link para o post
Compartilhar em outros sites

por questões básicas de segurança, os browsers impedem esse tipo de interação porque as páginas dos frames estão em domínios diferentes.

Compartilhar este post


Link para o post
Compartilhar em outros sites

por questões básicas de segurança, os browsers impedem esse tipo de interação porque as páginas dos frames estão em domínios diferentes.

 

Humm...

entendi... isso complica bastante as coisas, tem alguma dica de como posso verificar uma resposta de um dominio separado do meu? tentei também com o cURL mas infelizmente ele retornou a página simples também. Tem um sistema similar que fez essa função mas ele foi feito em vb acho que tive uma pequena desvantagem nessa questão do bloqueio do browser.

 

Se tiver alguma dica de o que procurar para tentar implementar essa função eu ficaria imensamente grato.

 

Kharel

Compartilhar este post


Link para o post
Compartilhar em outros sites

qq coisa que tentar para resolver isso uisando javascript será gambiarra..

 

usar fopen, curl, etc.. também...

 

não sei a real necessidade em fazer a aplicação desse modo que está fazendo mas não poderia re-estruturar, usar algo simples e prático ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Essa de fato era a intenção inicial.

Mas no caso o foco da aplicação seria obter a data disponível no mês corrente, talvez pela minha inexperiência mas... não me ocorre outra possibilidade de como fazer funcionar. Pois a unica maneira com que a empresa mostra a disponibilidade é por site, sem emails, sem quadro de avisos nem nada do gênero.

 

Você comentou sobre o navegador bloquear o JS entre frameset por quesito de segurança...

 

me ocorreu hoje duas possibilidades.

pensei no iframe, mas pelos quesitos de segurança creio que também seria bloqueado, isso se abrir pq o site é bem chato, mesmo com frameset foi um pé chegar no calendário, o site redireciona d+ pra frameset proprio e tem varios forms a serem validados para poder exibir a url final com sucesso, se os forms não forem validados qndo você pede a url final ele da falha ao comunicar com o server... então lembrei um ocorrido,

Colega meu outro dia fez um mini navegador apenas a titulo de teste em vb... poderia implantar o sistema encima deste navegador. Nesse caso faltaria o js.

 

 

Para este site em específico existe apenas 1 sistema que conheço operando... O dono dele não vende nem aluga, por que o fato de poder fazer as verificações da data de agendamento por software lhe da vantagem comercial já que o foco da empresa é trabalhar com as desistências e antecipações de datas.

 

Creio que para ter o funcionamento mesmo uma "gambiarra" seria válida, desde que ela não seja "out of law" (pq dai é dose!) -> pq realmente n tenho idéia de outra maneira de fazer essas verificações se automatizarem.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Terceiro,

falando em gambiarra,

jogando esse site no iframe e dando ctrl+s eu consigo um documento com o conteúdo que preciso! que no caso é a página com o conteúdo atual que visualizamos.

 

é possível eu fazer uma simulação desse ctrl + s encima da pagina que está sendo visualizada? isso deixaria as coisas bem simples pro fopen procurar encima do contedudo salvo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

não bastaria criar uma página p´ropria com os mesmos campos do original e apontar o "action" do <form> para o mesmo "action" original dessa página terceira ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

essa parte já está feita que é pra valida os dados e permitir exibir o calendário. a dificuldade está em analizar o calendário e saber automaticamente se tem a data livre. ele pede pra validar os forms, exige que uma sequência de págias tenha sido validada ou da erro de comunicação como servidor caso tente pular algum, então essas páginas vao abrindo em frameset, qndo chega na ultima página além do frameset o sistema está abrindo no iframe. É onde eu empaquei http://forum.imasters.com.br/public/style_emoticons/default/ermm.gif na tentativa de verificar o dia de agendamento disponível. essa página é exibida de acordo com escolhas nos formulários então creio se por isso que funções como curl e fopen não tiveram sucesso e voltaram uma página praticamente sem informação.

Então lembrei que o control + s. Salva o momento atual da página, permitindo que um fopen local possa verificar se tem dia disponivel que pode ser identificado por uma cor diferenciada no calendar.

Creio que a maior dificuldade nesse caso é que trabalho apenas com PHP e ainda assim a pouco tempo...

como php é processado no server, não tenho como ou pelo menos creio que nao tenho como capturar um arquivo igual ao que estou visualizando na minha maquina.

É onde me entro a ideia de pedir um help com javascript pra pegar esse momento atual da minha page...

pegando esse momento atual posso usar o fopen pra analizar e retornar o resultado.

 

Khal

Compartilhar este post


Link para o post
Compartilhar em outros sites

É onde eu empaquei  [img]http://forum.imasters.com.br/public/style_emoticons/<#EMO_DIR#>/ermm.gif[/img]  na tentativa de verificar o dia de agendamento disponível.

tá explicado..

 

pelo que descreveu nos posts acima.. tudo que tentar fazer será de certo modo em vão..

 

provavelmente a data disponível para agendametno é validada server-side, talvez por consulta ao banco de dados ou algo do tipo..

nesse caso teria 3 alternativas:

 

1. possuir os dados desse banco de dados sempre atualizado (creio que nao seja possível)

2. ler o retorno das mensagens de erro ou sucesso (também acho inviavel e muito inseguro)

3. entrar em contato com o webmaster desse site terceiro e pedir para que disponibilize algum webservice (API)

Compartilhar este post


Link para o post
Compartilhar em outros sites

é..

os 3 entrão na situação de inviável. A 3a nem se cojita, os caras dificultam o agendamento para que a pessoa n tenha paciencia e nao agende. rsrs (nao é piada)

como programo apenas em php. acho que vou pegar uma parceria pra fazermos um sistema local que tenha a capacidade de abrir a pagina (coisa que em php o sistema já faz) e após a leitura desses dados consiga dar um salvar no estado atual da página. Dessa maneira ficará simples de trabalhar com os dados.

 

Obrigado pela atenção Hinom.

 

Khal

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.