Du hast nicht nur Fehler im PHP Code, auch dein Javascript ist nicht funktionsfähig.
document.getElementById(theLink).onMouseOver = 'return overlib("<?= getZauberBeschreibung($za5); ?>");';
Was soll hier passieren? Du weist hier einer selbdefinierten Eigenschaft eines Objektes (das hoffentlich an dieser Stelle schon existiert) Namens onMouseOver einen String zu. Sonst passiert nicht.
Du solltest dich mal genauer mit JS Events befassen. Dein aufruf könnte z.b. so aussehen:
var el = document.getElementById(theLink);
if(el) el.onMouseOver = function(e) { return overlib(...); };
Struppi.