primero, ¿en que formato está la fecha?: DD-MM-YYYY ó MM/DD/YYYY, DD/MM/YY.
segundo: de donde la tomas $_REQUEST['fecha_recoleccion']; no te permitre saber si viene de get o post o cookie, es mejor usar $_POST['fecha_recoleccion'] o get dependiendo del caso.
date.parse() espera una fecha en formato anglosajón, en cambio date.setTime() espera un timestamp, por lo que bes de convertir la fecha a un timestamp Unix, puedes usar
strtotime , pero sólo funcionará con fechas en formato anglosajón, otra opcion es separar la fecha en partes y reconstruirla con mktime:
Código PHP:
<?php
//evaluar DD-MM-AAAA
$fecha=explode('-',$date);
$d=$fecha[0];
$m=$fecha[1];
$y=$fecha[2];
$timestamp= mktime(0,0,0,$m,$d,$y);
?>
var fechajs= date.parse(<?php echo ($timestamp*1000); ?>); //multiplica por 1000 ya que js evalúa en milisegundos y php en segundos