echo $begrüßung;
warum läst sich der angeklickte datensatz nicht löschen
@mysql_connect($dbhost, $dbuser, $dbpass);
Dieser Befehl kann auch einen Fehlerstatus signalisieren. Ignoriere dies nicht, ansonsten bekommst du Folgefehler im weiteren Scriptverlauf.
if ( isset($nr)) {
Hast du mal geprüft, ob diese Bedingung erfüllt wird? Zum prüfen eignet sich am besten var_dump(). Als Argument übergibst du den zu prüfenden Ausdruck, also: var_dump(isset($nr));
Prüfe erst einmal das, dann sehen wir weiter.
$sql = "DELETE FROM test_tab WHERE Nr=$nr;";
Als nächstes solltest du dir den generierten Befehl ansehen, indem du dir den Inhalt von $sql zur Kontrolle ausgeben lässt. Das abschließende ; ist nicht erforderlich. Außerdem ist es ein leichtes, statt der Nr etwas wie '0 or true' zu übergeben, was dann zu "DELETE FROM test_tab WHERE Nr=0 or true" führt und sicher nicht gewünscht ist. Prüfe übergebenen Parameter auf den von dir vorgesehenen Wertebereich. Bei Integerwerten bietet sich beispielsweise intval() an.
echo "$verabschiedung $name";