el warning que te da es porque estas enviando algun carecter(cadena, alguna etiqeuta html, espacio estas imprimiendo con echo, print,etc) antes de enviar una cabecera(session_start(),header).
sobre error de sintaxis en la consulta sql,lo más probable es que no esté recibiendo las variables por post,porque quizás no son los nombres de los campos, entonces prueba imprimiendo el contenido de la superglobal $_POST con foreach.
Código :
Ver originalforeach($_POST as $k=>$v)
{
echo "$k=>$v<br />";
}
.
si ya lo solucionaste, entonces felicitaciones.