Código PHP:
Ver original<?php
// Tu tabla tiene 7 campos y solo vas a mostrar 6, no tiene sentido traerlos a todos ademas de que no funciona.
// $queEmp = "Select * from compra where compra_date between '$fecha1' and '$fecha2'";
// Lo correcto seria hacerlo asi, el orden de los campos si importa.
// El SQL se escribe en mayusculas, no porque no ande, sino porque es mas facil de leer.
$queEmp = " SELECT
compra_rutprovee
, compra_area
, compra_folio
, compra_opciones
, compra_date
FROM
compra
WHERE
compra_date BETWEEN '$fecha1' AND '$fecha2'
;";
// Las funciones de mysql estan obsoletas y no combiene usarlas. Revisa el manual. Cuanto antes migres a mysqli mejor.
// Esto no lo usas, no es nesesario.
// $totEmp = mysql_num_rows($resEmp);
// Esto tampoco
// $ixx = 0;
{
// $ixx = $ixx+1;
// Si vas a mostar 6 datos que ya vienen de sql ¿Para que le agregas uno de mas?
//$data[] = array_merge($datatmp, array('num'=>$ixx));
$data[] = $datatmp;
}