ich habe an deinem code auch eigentlich wenig auszusetzen.
er ist vielleicht minimal umständlich aber ok.
mein vorschlag wäre eine fkt zu nehmen, um das fenster zu öffnen.
die kannst du mehrfach verwenden. wenn du was ändern musst,
brauchst du das nur an einer stelle machen.
PHP-Code:
<?php
// script einmalig definiert -> ausgabe in php
// übergebener parameter ist: windowitem
echo "<script type=\"text/javascript\">\n";
echo "<!-"."-\n";
echo " function openhelpwin(windowitem) {\n";
echo " window.open('','item1','top=50,screenX=50,left=100,screenY=100,height=300,width=500')\">\n";
echo " }\n";
echo "/"."/ -"."->\n";
echo "</script>\n";
// hier in deinem normalen code
echo "<td align=\"center\" width=\"20%\" style=\"background-color:#000066;color:#ffff00;font-size:12px\">\n";
echo " <a href=\"help_item1.php\" target=\"item1\" onClick=\"openhelpwin('item1')\">" . $item1_name . "</a> : " . $item1 . "\n";
echo "</td>\n";
// und hier ein automatischer aufruf, wie happy schon vorgelschlagen hat.
// nur mit aufruf der bereits definierten funktion
if (user_hat_neue_pm) {
echo "<script type=\"text/javascript\">\n";
echo "<!-"."-\n";
echo " openhelpwin('der_andere_automatische_name');\n";
echo "/"."/ -"."->\n";
echo "</script>\n";
}
?>
ich habe teilweise ein paar strings gesplittet, wegen des highlightings
bei // z.b. (zumindest für mich im editor.

)
ich würde dir sogar empfehlen, dass du $item1_name und $item1 in ein array packst.
schliesslich hast du bestimmt auch $item2_name und $item2. oder?
PHP-Code:
$item[1][name] = "irgendwas";
$item[1][norm] = "irgendwas anderes";
$item[2][name] = "irgendwas";
$item[2][norm] = "irgendwas anderes";
// usw.
// das array kannst du auch mit einer schleife erstellen lassen.
// ich kenne nur die ausgangswerte nicht ... :-)