[CodeIgniter] CI+Rapyd: Executar ação após upload de arquivo
Edinho Almeida
edinhoalmeida em gmail.com
Quinta Abril 10 10:18:47 BRT 2008
Oi Mike,
Parece que na hora 'H' o rapyd utiliza a library upload do CI para
afetivar o upload.
A solucão para você então seria extender a library Upload
Sem mexer no core do ci e nem do radyd
Abs
Edinho
2008/4/10 Mike Maciel <mike em bionobres.com.br>:
> Eu concordo com o Felipe... e a opinião dele reflete bem o que eu estou
> passando.
>
> Agora estou a fuçar os fontes do rapyd pra ver se descubro alguma coisa.
> O rapyd é uma ótima pedida para quem precisa se rápido na simplicidade.
> Mas se vc precisar fazer algo mais complexo, vc corre o risco de passar
> sérios apuros como eu.
>
> []'s
>
>
> Felipe Diesel escreveu:
>
>
> > Eu testei o rapyd, mas não me adaptei, justamente por ele facilitar as
> > coisas de mais. A coisa é muito automática e não se tem o controle
> > sobre o código.
> >
> > Claro que se está sendo feito um site com form de contato ou mesmo um
> > pequeno sistema que não precisa de muito javascript e ajax ele é uma
> > mão na roda, mas para mim ele não serviu!
> >
> > Abraços
> >
> > 2008/4/10 Mike Maciel <mike em bionobres.com.br>:
> >
> >> Marco,
> >>
> >> Realmente o Rapyd facilita mto a nossa vida. No sie oficial
> >> (www.rapyd.com) vc encontra mtas informações. A documentação é boa, pena
> >> que o fórum oficial seja (muito) parado.
> >>
> >> Atualmente, eles estão lançando um novo Rapyd (o Rapyd SA) que é
> >> compatível com outros frameworks além do CI, e pode tb ser utilizado
> >> como um si
> >> Eu te aconselho usar uma versão do rapyd que já vem integrada ao CI.
> >> Pena que a versão utilizada ainda seja a 1.5.4. Mas se vc usa a versão
> >> mais atual, pode baixar e instalar o SA. Os dois funcionam da mesma
> >> maneira, a diferença é que o SA pode se integrar mais facilmente com
> >> outros frameworks, e até msm ser utilizada como um simples script.
> >>
> >> Em http://test.rapyd.com/sa/demo/ vc pode encontrar vários exemplos
> >> funcionais do rapyd.
> >>
> >> Como vc diz: Muia sorte pra nós!
> >>
> >> []'s
> >>
> >>
> >> Marco Telles escreveu:
> >>
> >>
> >>
> >>> A recíproca é verdadeira, Mike.
> >>>
> >> > Como não estava entendendo a complexidade da situação, já que se fez o
> >> > upload, ele vai estar em algum canto. Se ele está em algum canto, basta
> >> > tratar/manipular ele. Tratado e manipulado, é só introduzir o dito cujo
> >> > no ponto g ou x.. Bem mais isso é outra história.. :)
> >> >
> >> > Agora voltando aos frangos e patos, fiz uma leitura (olhada) dinâmica (e
> >> > como) no tal rapidão, e me interessou o lance do "Rapyd Language Class".
> >> > Tenho um site em construção que vai precisar trabalhar com br/en tanto
> >> > no layout como no conteúdo, fato que já até postei e recebi várias dicas
> >> > aqui. Vc já usou ? Sabe dizer algo ?
> >> >
> >> > Abs
> >> >
> >> >
> >> >
> >> > Mike Maciel escreveu:
> >> >
> >> >> Cara! Vc mirou no pato e acertou o frango! :-P
> >> >>
> >> >> Em outras palavras, vc tentou me ajudar com um problema mas acabou me
> >> >> ajudando a matar um outro problema! rsrs
> >> >>
> >> >> Ainda tenho aquela dificuldade do outro email, mas esse lance do
> >> >> maintain_ratio me deu um verdadeiro farol pra resolver outro problema aqui.
> >> >>
> >> >> Vlw!
> >> >>
> >> >>
> >> >>
> >> >> Marco Telles escreveu:
> >> >>
> >> >>
> >> >>> Esqueci um detalhe. Se precisar da imagem no tamanho exato de 340 x 255
> >> >>> e se a imagem original tiver vários tamanhos, então é melhor colocar
> >> >>> $config['maintain_ratio'] = FALSE; conforme o guia:
> >> >>>
> >> >>>
> >> >>>
> >> >>>
> >> >>>> Since the maintain_ratio option is enabled, the thumb will be as close
> >> >>>> to the target width and height as possible while preserving the
> >> >>>> original aspect ratio
> >> >>>>
> >> >>>>
> >> >>>>
> >> >>> Marco Telles escreveu:
> >> >>>
> >> >>>
> >> >>>
> >> >>>> Mike essa eu não capitchei não :)
> >> >>>>
> >> >>>> Nunca usei rapyd e nem sei como funciona e para que serve, então nesse
> >> >>>> ponto não tenho como ajudar muito, porém, levando em consideração seu
> >> >>>> relato:
> >> >>>>
> >> >>>> 1.
> >> >>>>
> >> >>>>
> >> >>>>
> >> >>>>
> >> >>>>> o principal deles é as dimensões da imagem
> >> >>>>> que devem ser exatamente 340x255.
> >> >>>>> Eu precisava executar uma ação após o upload que verificasse se a imagem
> >> >>>>> enviada atende a esses padrões.
> >> >>>>>
> >> >>>>>
> >> >>>>>
> >> >>>>>
> >> >>>> Isso resolve com php, nem precisa CI => list($w, $h) = getimagesize(
> >> >>>> $imagemEnviada );
> >> >>>>
> >> >>>> 2.
> >> >>>>
> >> >>>>
> >> >>>>
> >> >>>>
> >> >>>>> A dificuldade começa agora: Caso a
> >> >>>>> imagem enviada seja em outra proporção (640x480, por exemplo), ela seria
> >> >>>>> redimensionada para 340x255.
> >> >>>>>
> >> >>>>>
> >> >>>>>
> >> >>>>>
> >> >>>> Nesse caso o CI é mais prático =>
> >> >>>> $this->load->library('image_lib');
> >> >>>> //Configura o thumb
> >> >>>> $config['image_library'] = 'GD2';
> >> >>>> $config['source_image'] = $imagemEnviada;
> >> >>>> $config['create_thumb'] = TRUE;
> >> >>>> $config['maintain_ratio'] = TRUE;
> >> >>>> $config['width'] = 340;
> >> >>>> $config['height'] = 255;
> >> >>>> $this->image_lib->initialize($config);
> >> >>>> $this->image_lib->resize();
> >> >>>>
> >> >>>> Espero ter ajudado, senão delete-me :)
> >> >>>>
> >> >>>> Valeu e abs.
> >> >>>>
> >> >>>> Muita sorte para nós!
> >> >>>>
> >> >>>> Marco Telles
> >> >>>>
> >> >>>>
> >> >>>>
> >> >>>>
> >> >>>> Mike Maciel escreveu:
> >> >>>>
> >> >>>>
> >> >>>>
> >> >>>>
> >> >>>>> Já verifiquei... acho que não consegui passar meu problema com claridade.
> >> >>>>> Com relação à manipulação da imagem, está td beleza. O meu problema é
> >> >>>>> como executar a manipulação em um uploadField. Este seria um evento que
> >> >>>>> deve ocorrer somente após o upload, e naquele determinado arquivo...
> >> >>>>> algo como "onUploadSucess", ou "afterUpload", sei lá...
> >> >>>>>
> >> >>>>> Capitche?
> >> >>>>>
> >> >>>>>
> >> >>>>> Marco Telles escreveu:
> >> >>>>>
> >> >>>>>
> >> >>>>>
> >> >>>>>
> >> >>>>>
> >> >>>>>> Dá uma olhada no guia do CI, especificamente a classe de imagens que vc
> >> >>>>>> vai ter uma luz :)
> >> >>>>>>
> >> >>>>>> Muita sorte para nós!
> >> >>>>>>
> >> >>>>>> Marco Telles
> >> >>>>>>
> >> >>>>>> #############
> >> >>>>>> # Pier de Ipanema ( http://www.pierdeipanema.com.br/ )
> >> >>>>>> # Pier de Ipanema no Orkut ( http://www.orkut.com/Community.aspx?cmm=2923344 )
> >> >>>>>> # CodeIgniter PHP framework ( http://www.codeigniter.com.br/ )
> >> >>>>>> # Ubuntu The power of free software ( http://www.ubuntu-br.org/ )
> >> >>>>>> # Python Programming Language ( http://www.pythonbrasil.com.br/ )
> >> >>>>>>
> >> >>>>>>
> >> >>>>>>
> >> >>>>>> Mike Maciel escreveu:
> >> >>>>>>
> >> >>>>>>
> >> >>>>>>
> >> >>>>>>
> >> >>>>>>
> >> >>>>>>
> >> >>>>>>> Salve, salve!
> >> >>>>>>>
> >> >>>>>>> Estou utilizando CodeIgniter+Rapyd (combinação explosiva! ;-) ) em uma
> >> >>>>>>> aplicação que faz upload de arquivos jpeg. Porém este arquivo precisa
> >> >>>>>>> obdecer a alguns critérios, e o principal deles é as dimensões da imagem
> >> >>>>>>> que devem ser exatamente 340x255.
> >> >>>>>>> Eu precisava executar uma ação após o upload que verificasse se a imagem
> >> >>>>>>> enviada atende a esses padrões. A dificuldade começa agora: Caso a
> >> >>>>>>> imagem enviada seja em outra proporção (640x480, por exemplo), ela seria
> >> >>>>>>> redimensionada para 340x255.
> >> >>>>>>>
> >> >>>>>>> Alguém já encarou situação semelhante ou sabe o caminho das pedras?
> >> >>>>>>>
> >> >>>>>>> Abraços a todos!
> >> >>>>>>>
> >> >>>>>>> Mike
> >> >>>>>>>
> >> >>>>>>> _______________________________________________
> >> >>>>>>> Lista mailing list
> >> >>>>>>> Lista em codeigniter.com.br
> >> >>>>>>> http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
> >> >>>>>>>
> >> >>>>>>>
> >> >>>>>>>
> >> >>>>>>>
> >> >>>>>>>
> >> >>>>>>>
> >> >>>>>>>
> >> >>>>>>>
> >> >>>>>> _______________________________________________
> >> >>>>>> Lista mailing list
> >> >>>>>> Lista em codeigniter.com.br
> >> >>>>>> http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
> >> >>>>>>
> >> >>>>>> __________ Information from ESET Smart Security, version of virus signature database 2835 (20080130) __________
> >> >>>>>>
> >> >>>>>> The message was checked by ESET Smart Security.
> >> >>>>>>
> >> >>>>>> http://www.eset.com
> >> >>>>>>
> >> >>>>>>
> >> >>>>>>
> >> >>>>>>
> >> >>>>>>
> >> >>>>>>
> >> >>>>>>
> >> >>>>>>
> >> >>>>>>
> >> >>>>> _______________________________________________
> >> >>>>> Lista mailing list
> >> >>>>> Lista em codeigniter.com.br
> >> >>>>> http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
> >> >>>>>
> >> >>>>>
> >> >>>>>
> >> >>>>>
> >> >>>>>
> >> >>>>>
> >> >>>> _______________________________________________
> >> >>>> Lista mailing list
> >> >>>> Lista em codeigniter.com.br
> >> >>>> http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
> >> >>>>
> >> >>>>
> >> >>>>
> >> >>>>
> >> >>>>
> >> >>> _______________________________________________
> >> >>> Lista mailing list
> >> >>> Lista em codeigniter.com.br
> >> >>> http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
> >> >>>
> >> >>> __________ Information from ESET Smart Security, version of virus signature database 2835 (20080130) __________
> >> >>>
> >> >>> The message was checked by ESET Smart Security.
> >> >>>
> >> >>> http://www.eset.com
> >> >>>
> >> >>>
> >> >>>
> >> >>>
> >> >>>
> >> >>>
> >> >> _______________________________________________
> >> >> Lista mailing list
> >> >> Lista em codeigniter.com.br
> >> >> http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
> >> >>
> >> >>
> >> >>
> >> >
> >> > _______________________________________________
> >> > Lista mailing list
> >> > Lista em codeigniter.com.br
> >> > http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
> >> >
> >> > __________ Information from ESET Smart Security, version of virus signature database 2835 (20080130) __________
> >> >
> >> > The message was checked by ESET Smart Security.
> >> >
> >> > http://www.eset.com
> >> >
> >> >
> >> >
> >> >
> >>
> >>
> >> _______________________________________________
> >> Lista mailing list
> >> Lista em codeigniter.com.br
> >> http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
> >>
> >>
> >
> >
> >
> >
>
>
> _______________________________________________
> Lista mailing list
> Lista em codeigniter.com.br
> http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
>
--
Abs
Edinho Almeida
11 3711-7074
11 3564-8906
Mais detalhes sobre a lista de discussão Lista