Okay. Now it's time for one of my (in)famous examples.
Let's start with a simple html_record:
Code:
print qq|
<TABLE>
<TR><TD ALIGN="Right" VALIGN="TOP" WIDTH="20%"><$font_color>UserFirstName:</FONT></TD>
<TD WIDTH="80%"> <$font>$rec{'UserFirstName'}</Font></TD></TR>
<TR><TD ALIGN="Right" VALIGN="TOP" WIDTH="20%"><$font_color>UserLastName:</FONT></TD>
<TD WIDTH="80%"> <$font>$rec{'UserLastName'}</Font></TD></TR>
<TR><TD ALIGN="Right" VALIGN="TOP" WIDTH="20%"><$font_color>UserEmail:</FONT></TD>
<TD WIDTH="80%"> <$font><a href="mailto:$rec{'UserEmail'}">$rec{'UserEmail'}</a></td>
<TR><TD ALIGN="Right" VALIGN="TOP" WIDTH="20%"><$font_color>UserCity:</FONT></TD>
<TD WIDTH="80%"> <$font>$rec{'UserCity'}</Font></TD></TR>
<TR><TD ALIGN="Right" VALIGN="TOP" WIDTH="20%"><$font_color>UserState:</FONT></TD>
<TD WIDTH="80%"> <$font>$rec{'UserState'}</Font></TD></TR>
<TR><TD ALIGN="Right" VALIGN="TOP" WIDTH="20%"><$font_color>UserCountry:</FONT></TD>
<TD WIDTH="80%"> <$font>$rec{'UserCountry'}</Font></TD></TR>
</TABLE>
|;
For this database, the field
UserEmail is optional, and I don't want it to print out if the user hasn't added their email address. I would make the changes as follows:
Code:
print qq|
<TABLE>
<TR><TD ALIGN="Right" VALIGN="TOP" WIDTH="20%"><$font_color>UserFirstName:</FONT></TD>
<TD WIDTH="80%"> <$font>$rec{'UserFirstName'}</Font></TD></TR>
<TR><TD ALIGN="Right" VALIGN="TOP" WIDTH="20%"><$font_color>UserLastName:</FONT></TD>
<TD WIDTH="80%"> <$font>$rec{'UserLastName'}</Font></TD></TR>
|;
if ($rec{'UserEmail'}) {
print qq| <TR><TD ALIGN="Right" VALIGN="TOP" WIDTH="20%"><$font_color>UserEmail:</FONT></TD>
<TD WIDTH="80%"> <$font><a href="mailto:$rec{'UserEmail'}">$rec{'UserEmail'}</a></td>
|;
}
print qq| <TR><TD ALIGN="Right" VALIGN="TOP" WIDTH="20%"><$font_color>UserCity:</FONT></TD>
<TD WIDTH="80%"> <$font>$rec{'UserCity'}</Font></TD></TR>
<TR><TD ALIGN="Right" VALIGN="TOP" WIDTH="20%"><$font_color>UserState:</FONT></TD>
<TD WIDTH="80%"> <$font>$rec{'UserState'}</Font></TD></TR>
<TR><TD ALIGN="Right" VALIGN="TOP" WIDTH="20%"><$font_color>UserCountry:</FONT></TD>
<TD WIDTH="80%"> <$font>$rec{'UserCountry'}</Font></TD></TR>
</TABLE>
|;
Make sense?
If you have two or more optional fields in a row, you can use something like this:
Code:
print qq|
<TABLE>
<TR><TD ALIGN="Right" VALIGN="TOP" WIDTH="20%"><$font_color>UserFirstName:</FONT></TD>
<TD WIDTH="80%"> <$font>$rec{'UserFirstName'}</Font></TD></TR>
<TR><TD ALIGN="Right" VALIGN="TOP" WIDTH="20%"><$font_color>UserLastName:</FONT></TD>
<TD WIDTH="80%"> <$font>$rec{'UserLastName'}</Font></TD></TR>
<TR><TD ALIGN="Right" VALIGN="TOP" WIDTH="20%"><$font_color>UserEmail:</FONT></TD>
<TD WIDTH="80%"> <$font><a href="mailto:$rec{'UserEmail'}">$rec{'UserEmail'}</a></td>
|;
if ($rec{'UserCity'}) {
print qq| <TR><TD ALIGN="Right" VALIGN="TOP" WIDTH="20%"><$font_color>UserCity:</FONT></TD>
<TD WIDTH="80%"> <$font>$rec{'UserCity'}</Font></TD></TR>
|;
}
if ($rec{'UserState'}) {
print qq| <TR><TD ALIGN="Right" VALIGN="TOP" WIDTH="20%"><$font_color>UserState:</FONT></TD>
<TD WIDTH="80%"> <$font>$rec{'UserState'}</Font></TD></TR>
|;
}
if ($rec{'UserCountry'}) {
print qq| <TR><TD ALIGN="Right" VALIGN="TOP" WIDTH="20%"><$font_color>UserCountry:</FONT></TD>
<TD WIDTH="80%"> <$font>$rec{'UserCountry'}</Font></TD></TR>
|;
}
print qq| </TABLE>
|;
------------------
JPD