1) could be a php error occurring, add the following code at line 1 of the page to turn error reporting on:
<?php
error_reporting(E_ALL);
ini_set('display_errors','on');
?>
2) does the color effect price? or only embroidery? if the color does not effect price, set the color select list to use the color name as the value.