in reply to selecting again from a mysql database
example of placeholders:
my $sth=$dbh->prepare("SELECT * FROM ddts WHERE `Stat`=? AND `Project` +=? AND `Version`=?"); $sth->execute("T","Def",join(@version));
I'm not sure on the join, but then i wasn't sure from your code what you expected @version to return. Other things that will help you would be to format your code in a way that you can see where the blocks are starting and ending
y @compile=param ('compile'); my $dbh=DBI->connect($dsn,$user,$password,) or die "Error $DBI:: error connecting to $dsn"; my $sth=$dbh->prepare("SELECT * FROM ddts WHERE `Stat`=? AND `Project` +=? AND `Version`=?"); $sth->execute("T","Def",join(@version)); print "<table border=2>"; while (my ($identifier) = $sth->fetchrow_array ) { foreach $elem (@compile) { if ($elem eq $identifier){ print "<b><center>1696</center></b>"; print "<tr><td>$identifier</td></tr>"; } } } print "</table>"; $sth->finish;
Upon formating that I found the if that was burried in there. The point is format it nice and you will prob be able to see some of the stuff yourself, and it makes it easier for anyone else to help you. It looks like you want that if to control when the table element is printed. Little note on HTML, that <b><center>1696</center></b> needs to be inside a <td> or outside the table all together. If its in the middle of a table like that but not in a <td> then there is no telling how different browsers will show it. I would determine under what circumstances you want it printed and move it up about your print "<table border=2>"; so that it is printed before the top of the table. Thats all just guess though since i'm not realy clear when or where you want it to print.
|
|---|