Du musst eigentlich die Variablen nicht escapen.
Es reicht wenn du sie einfach nur (bei Text) mit einem Apostroph versiehst, also
Code
if(mysql_query("INSERT INTO gbook (name, email, homepage, icq, text, datum) VALUES ( '$name', '$email', '$hp.', '$icq', text = '$text', '$datum' )")) {
Bei Datum kannst du auch ggf. die Apostrophe weglassen, je nachdem wie du das speicherst. Ich nehm bei Posts meistens NOW();
also waers bei Datum statt '$datum' NOW(), ohne Apostrophe, da es sich ja um keinen Text handelt