So habe ich das geamcht:
$sql = "INSERT INTO buch_gaeste
(
name,
IP
)
VALUES
(
addslashes($_POST["name"]) . "',
Du bist hier immer noch innerhalb des Strings, der erst am " eingeschlossen von [ und name endet...
Zum maskieren von innerhalb von MySQL-Statements ist mysql_real_escape_string() besser geeignet als addslashes()
$_SERVER['REMOTE_ADDR'],
Hier fehlen auch noch ein paar '' drumherum