Veritabanı JSON ile çalışmayı destekliyorsa daha dinamik bir yapı için JSON kullanabilirsin. Soruları + Elementleri JS tarafında oluşturup çıktısını JSON olarak kaydedip okurkenyine JSON to form yapılabilir. Bu şekilde hem tema uygulanabilir hem de dil desteğiyle sunulabilir. Pek PHP'lik bir iş değil.
JS Visual Form Builder diye aratınca şöyle sonuçlar çıkıyor, daha kullanılabilir olması için drag and drop kullanabilirsin.