Cuando PHP envía su consulta de inserción a MySQL, termina luciendo así:
INSERT INTO content2 (d1, d2, d3) VALUES (John, Mary, Julie);
Debido a que no hay comillas alrededor de "John", "Mary" y "Julie", MySQL cree que se está refiriendo a otros nombres de columna. La solución rápida y sucia sería agregar comillas a su consulta, pero como dice @tadman, nunca debería usar este estilo de consulta, y en su lugar debería usar bind_param
para agregar sus variables a la consulta.
Sin embargo, si todo lo que quiere hacer es copiar de una tabla a otra, como dice @Dan Bracuk, puede hacerlo con una sola consulta:
INSERT INTO content2 (d1, d2, d3)
SELECT d1, d2, d3
FROM content