Só para complementar a resposta do amigo Ramalho, estou enviando um 
pequeno exemplo de como utilizo formulários + python para envio de email;

OBS. Este é um exemplo que você pode utilizar dentro do Zope, já que o 
mesmo chama o 'Mail Host', o que o Luciano passou é indepedente do Zope 
como ele mesmo disse.


Espero que ajude.


form_html
---------------------------
<form action="myPython_proc" method="post" accept-charset="utf-8">

 Email do usuário: <input type="text" name="fromEmail">
 Nome do usuário: <input type="text" name="Nome">
 Mensagem: <textarea name="msg"></textarea>

</form>


myPython_proc
--------------------------
from Products.PythonScripts.standard import html_quote
request = container.REQUEST
RESPONSE =  request.RESPONSE

try:
  mailhost=getattr(context, context.superValues('Mail Host')[0].id)
except:
 raise AttributeError, "cant find a Mail Host object"

else:
 Para = "[EMAIL PROTECTED]"
 De = context.REQUEST.get('fromEmail')
 Nome = context.REQUEST.get('nome')
 msg = context.REQUEST.get('msg')

 corpo = "Nome do usuário: " + Nome + "<br>" + "Email do usuário: " + De 
+ "<br>" + "Mensagem: " + msg
 mensagem = "To: " + Para  + "\n"
 mensagem = mensagem + "From: " + De + "\n"
 mensagem = mensagem + "Mime-Version: 1.0\n"
 mensagem = mensagem + "Content-Type: text/html; charset=UTF-8\n\n"
 mensagem = mensagem + corpo
 mSubj = "Assunto do fomulário"

 mailhost.send(mensagem, subject=mSubj, encode='base64')

 return 'Email enviado com sucesso!'



At,

Cleber J Santos



Luciano Ramalho wrote:
>> Tenho uma grande dificuldade em conseguir traduzir funções do dtml
>> para zpt (plone) , sem que haja uma  "mistura das camadas de lógica e
>> apresentação"...
>>     
>
> Para evitar a mistura das camadas lógica e de apresentação, você deve
> usar scripts Python para implementar a lógica, e deixar apenas a
> apresentação para o ZPT. O DTML foi abandonado exatamente porque
> favorecia a mistura. Isso significa que o ZPT é mais fraco que o DTML
> para implementar lógica, mas isso é proposital. Uma causa frequente de
> desapontamento com o ZPT é tentar compará-lo sozinho ao DTML, quando a
> idéia não é trocar DTML por ZPT, e sim por ZPT+Python. Essa sim é uma
> combinação muito mais poderosa!
>
> Enviar e-mail a partir do Python, indepedente do Zope, é muito
> simples. Aqui tem uns exemplos:
> http://www.eskimo.com/~jet/python/examples/mail/smtp1.html
>
> Mas quando o Zope entra na jogada, a situação complica um pouco,
> porque os mecanismos de segurança do Zope impedem que um simples
> Script Python feito na ZMI possa enviar e-mail. Então é preciso usar
> um External Method ou um Product para fazer o envio.
>
> O Plone, por exemplo, possui vários scripts de envio de e-mail. Sugiro
> que você dê uma olhada no código que o Plone usa para confirmar
> e-mails ou enviar senhas esquecidas.
>
> [ ]s
> Luciano
>
>
> On 2/26/07, Joao Paulo Carusi <[EMAIL PROTECTED]> wrote:
>   
>> Bom dia pessoal,
>>
>>
>> Por isso, gostaria da ajuda de vocês, para saber qual eh a melhor
>> forma para fazer:
>>
>> <dtml-sendmail mailhost="MailHost">
>> From:
>> Bcc:
>> Subject:
>> <dtml-mime type=text/html>
>>
>> <dtml-var X>
>>
>> </dtml-mime>
>> </dtml-sendmail>
>>
>> em  ZPT?
>>
>>
>> Para enviar uma mensagem: zope-pt@yahoogrupos.com.br
>> Para desistir envie uma mensagem em branco para: [EMAIL PROTECTED]
>> Links do Yahoo! Grupos
>>
>>
>>
>>     
>
>   


-- 
#!/bin/bash
# Name: Cleber J Santos
# Email: [EMAIL PROTECTED]
# Icq: 200007837

Responder a