//let's check if the guest is already in our system
$check = "SELECT * FROM guests WHERE
`first_name` = '$_POST[first_name]'
AND `last_name` = '$_POST[last_name]'
AND `email` = '$_POST[email]' " ;
I'm not much of a PHP person, but doesn't this imply you're taking user-supplied POST data and are putting it directly into your SQL? If so, that won't end well.
Regarding the actual concept, I saw a place which used an iPad as the signin system for visitor badges, complete with a way to sign your name for NDA purposes if you're there for an interview. It seems sound, assuming you can keep people from messing it up with the home button.
That said, I think they had an app, not a web page.