ここの処理を外してセッションへ格納する前にサニタイジングするのは微妙じゃないですかね？
(72行目以前にもセッション内の値に対しての処理があるし)
http://www.wdic.org/w/WDIC/%E3%82%B5%E3%83%8B%E3%82%BF%E3%82%A4%E3%82%B8%E3%83%B3%E3%82%B0#xE3x82xBFxE3x82xA4xE3x83x9FxE3x83xB3xE3x82xB0xE3x81xAExE9x87x8DxE8xA6x81xE6x80xA7
にある通り、出力する直前に行うのが正しいかと。
次にSQLの課題が控えていることもあり、下記のような記述がよいかなー、と思います。

```php
<?php if (isset($_SESSION['family_name'])) print htmlspecialchars($_SESSION['family_name']); ?>
```

これだと若干横に長くなるので、関数化してこんな感じ
```php
function outputForHtml($param) {
    if (empty($param)) return false;
    print htmlspecialchars($param);
}
```

```php
<?php outputForHtml($_SESSION['family_name']); ?>
```