Pues vamos a cambiar algo,  en vez de:
   Código PHP:
    $query_buscar_rec = sprintf("SELECT Colegio FROM contactos WHERE Colegio LIKE '%%$%s%%'", $colname_buscar_rec); 
    
  pon esto:  
 Código PHP:
    $query_buscar_rec = sprintf("SELECT Colegio FROM contactos WHERE Colegio LIKE CONCAT('%%', %s, '%%')", GetSQLValueString($colname_buscar_rec, "text")); 
    
  a ver como te va.  Tienes que verificar que estas usando $_POST en tu forma de envio y que antes del query tienes la funcion 'GetSQLValueString', la cual debe haber sido generada automaricamente por DW y es asi:  
 Código PHP:
    if (!function_exists("GetSQLValueString")) {
function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "") 
{
  $theValue = get_magic_quotes_gpc() ? stripslashes($theValue) : $theValue;
 
  $theValue = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($theValue) : mysql_escape_string($theValue);
 
  switch ($theType) {
    case "text":
      $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
      break;    
    case "long":
    case "int":
      $theValue = ($theValue != "") ? intval($theValue) : "NULL";
      break;
    case "double":
      $theValue = ($theValue != "") ? "'" . doubleval($theValue) . "'" : "NULL";
      break;
    case "date":
      $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
      break;
    case "defined":
      $theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue;
      break;
  }
  return $theValue;
}
} 
    
  Espero que te funcione ahora, sino me dices.