Want to protect your cyber security and still get fast solutions? Ask a secure question today.Go Premium

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 291
  • Last Modified:

How to include?

I'am using CGI App and using a Page Prducer Component to be linked with my Html Pages,the Pb is how to include Delphi Code with Html code,for e.g i tried to place an html code in:
PageProducer.HtmlDoc.Text and i want to the Response to be:

Response.content:=PageProducer.HtmlDoc.Text;
i found that i need to call:
Response.Cookies to be displayed?????
i think u got it?????
so what is the Mechanism!
Regards
Meer
0
mirghani
Asked:
mirghani
1 Solution
 
simonetCommented:
You have to call:

Response.Content := PageProducer.Content;

Alex
0
 
mirghaniAuthor Commented:
Adjusted points from 50 to 100
0
 
mirghaniAuthor Commented:
hi simonet,
sorry for delay in replying,
i'am using Table Producer component,
i want to display my table with specific or custom characteristics of display:
such as a hyper link appear in specific coloumn,or in the footer to display
a variable string.
thanks .
Regards Meer.a.a
0
Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
mirghaniAuthor Commented:
hi simonet,
sorry for delay in replying,
i'am using Table Producer component,
i want to display my table with specific or custom characteristics of display:
such as a hyper link appear in specific coloumn,or in the footer to display
a variable string.
thanks .
Regards Meer.a.a
0
 
junglistCommented:
I would have thought you can use the OnGetText event handler of the appropriate TField to solve this.
0
 
geobulCommented:
Hello my friend,

  I'm sorry for the late reply. I was on a business trip for a few days. When I came back I've been told that there is a question for me.
  If it is not too late there is my answer:

  For a specific column use OnFormatCell event handler. There is CellColumn integer which gives the Column number (0 is the first) and CellData string to replace with the new one.

Here it is:

procedure TWebModule1.DataSetTableProducer1FormatCell(....);
var
  OldCellData : String;
  MyURL : String;
begin
  { CellRow = 0 is the title }
  if CellRow > 0 then begin
    { Suppose that you want to change the third column }
    if CellColumn = 2 then begin
      { Save the original value of the cell }
      OldCellData := CellData;
      { Replace with the new one }
      { Here depending on CellRow or the contents of the OldCellData
        generate the URL string }
      MyURL := .....;
      CellData := '<A HREF="' + MyURL + ">'+OldCellData+'</A>';
    end;
  end;
end;

For the Footer property:
  You can place HTML commands here to be executed after the table.

....
DataSetTableProducer1.Footer.Clear;
DataSetTableProducer1.Footer.Add('<HR>The End Of The Table!');
....

Regards, Geo
0
 
mirghaniAuthor Commented:
hi geo,
if i want the following string to appear at the footer of my table what should i do:
Request.CookieFields.values['login'];
and i'am using (DatasetTableProducer)?
Thanks.
Regards
Meer
0
 
mirghaniAuthor Commented:
hi geo,
if i want the following string to appear at the footer of my table what should i do:
Request.CookieFields.values['login'];
and i'am using (DatasetTableProducer)?
Thanks.
Regards
Meer
0
 
mirghaniAuthor Commented:
hi geo,
if i want the following string to appear at the footer of my table what should i do:
Request.CookieFields.values['login'];
and i'am using (DatasetTableProducer)?
Thanks.
Regards
Meer
0
 
mirghaniAuthor Commented:
sorry for repitition miss control happened.
waiting for u:-)
0
 
mirghaniAuthor Commented:
sorry for repitition miss control happened.
waiting for u:-)
0
 
geobulCommented:
Hi Meer,

I'm talking about DataSetTableProducer too. This is the same using QueryTableProducer. The source is different only (Query instead of Table).

....
{ Clear the previous footer if any }
DataSetTableProducer1.Footer.Clear;
{ Add a string to the footer }
DataSetTableProducer1.Footer.Add(Request.CookieFields.Values['login']);
....

The footer is a set of HTML commands.
If the response HTML page contains the table only it is a good idea to place HTML header commands in the TableProducer header and closing HTML tags in the TableProducer footer. For example:
-------
  DataSetTableProducer1.Header.Clear;
  DataSetTableProducer1.Header.Add('<HTML><HEAD><TITLE>');
  DataSetTableProducer1.Header.Add('This is the page title string');
  DataSetTableProducer1.Header.Add('</TITLE></HEAD>');
  DataSetTableProducer1.Header.Add('<BODY>');

  DataSetTableProducer1.Footer.Clear;
  DataSetTableProducer1.Footer.Add('<HR><STRONG>' + Request.CookieFields.Values['login'] + '</STRONG>');
  DataSetTableProducer1.Footer.Add('</BODY></HTML>');
  { Call the TableProducer' Content method which activates generating of the header, table and footer HTML representation }
Response.Content := DataSetTableProducer1.Content;
--------

Regards, Geo
0
 
mirghaniAuthor Commented:
thanks geo,it works.
i need ur help in the last step in my App,sending Email using SMTP component what do u think???,but i know what u r thinking the points isn't it?,no pb
waiting for ur answere!
thank.
Regards Meer
0
 
geobulCommented:
Hi Meer,
Do not think that way about me ;)

Actually I've never used SMTP before.
And I'm not sure is it possible to use it in CGI program.

I promise I'll think how you can send e-mails and I'll post a comment here. Give me little time for that.

Regards, Geo
0
 
mirghaniAuthor Commented:
Hi Geo,
i'am waiting either here or this is my e-mail:mirabd@yahoo.com.
thanks.
pls keep in mind that i'am in hurry:-),and don't forget that u promised me.
Regards Meer.
0
 
geobulCommented:
Hi Meer,

The easiest way to generate mail is to use TNMSMTP component.

{ in web action item }
var
 mail : TNMSMTP;
begin
  ...
  { your mail server data }
  mail:=TNMSMTP.create(self); //or just place it on the form
  Mail.Host:='MailServerName';
  Mail.Port:=25;
  { message header }
  Mail.UserID:='Your name';
  Mail.PostMessage.FromAddress:='Your mail address';
  Mail.PostMessage.FromName:='Your name';
  Mail.PostMessage.ToAddress.Clear;
  Mail.PostMessage.ToAddress.Add('E-mail address');
  Mail.PostMessage.Subject:='Some text';
  { file attachements if any }
  Mail.PostMessage.Attachments.Clear;
  Mail.PostMessage.Attachments.Add('a file name');
  { message text }
  Mail.PostMessage.Body.Clear;
  Mail.PostMessage.Body.Add('E-mail body - text');
  ...
  { sending prepared message }
  Mail.Connect;
  Mail.SendMail;
  Mail.Disconnect;
  Mail.Free;
  ...
end;

Regards, Geo
0
 
mirghaniAuthor Commented:
Hi Geo,
give me a chance to test it and i will confirm u.
thanks.
Regards Meer
0
 
mirghaniAuthor Commented:
Hi Geo,
give me a chance to test it and i will confirm u.
thanks.
Regards Meer
0
 
mirghaniAuthor Commented:
hi geo,
i'am using our university proxy server do u mean i should replace its host or its ip address(....) at:
mail.host,and its port no(80) at:
mail.port,this above Ques because of the exception i recieved:connection failed.
Thanks.
Regard meer
0
 
geobulCommented:
Hi Meer,
No, I don't think so. You are connecting to your mail server to send mail not to proxy. You can find these settings somewhere in your mail client program (Outlook Express or what you are using).
Regards, Geo
0
 
mirghaniAuthor Commented:
hi geo,sorry for delay as i was in a vecation and now i'am back,
we don't have an email server in our university so u think that i can't use the SMTP component in sending mail if not with what u advice me.
Thanks
Regards Meer.
0

Featured Post

Free Tool: Site Down Detector

Helpful to verify reports of your own downtime, or to double check a downed website you are trying to access.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now