MEAC Announces 2025 Men’s Basketball All-Conference Awards

NORFOLK, Va. – Howard freshman guard Blake Harper was named Mid-Eastern Athletic Conference (MEAC) Player and Rookie of the Year, the conference announced Tuesday evening in the Chrysler Hall during the third annual MEAC BBT Awards.    

Coppin State’s Toby Nnadozie earned Defensive Player of the Year honors. Norfolk State’s Brian Moore, Jr., garnered the Newcomer of the Year honors, while 6th-Player of the Year laurels went to South Carolina State’s Davion Everett. S.C. State head coach Erik Martin was named the MEAC Coach of the Year. 

All awards were voted on by the league’s head coaches and sports information directors. 

Harper ranks first in the MEAC and 31st nationally in scoring with 19.3 points per game while ranking 32nd nationally in cumulative points with 597. He earned 18 consecutive MEAC Rookie of the Week honors with 29 double-digit performances including five 30-point games on the season. In addition to leading in scoring, Harper ranked second in the MEAC in rebounds per game (6.3), fourth in assists (3.5) per game and helped his team finish with a 7-7 conference record and a No. 4 seed heading into the 2025 tournament. He has made 209 of his 255 free throws this season to rank third and second nationally in free throws made and attempts, respectively. 

Nnadozie ranks tenth in the nation and first in the MEAC in steals with 72 on the season and averaged 2.5 per game to rank eighth in the NCAA. He also ranked in the MEAC’s top 15 in scoring (12.5 pts) and assists (2.4 ast) per game. Nnadozie recorded a season-high eight steals against Cheyney on Jan. 16, and scored a season-high 29 points against Delaware State on March 3.  

Moore Jr. was the second-leading scorer in the MEAC, averaging 19.0 points per game throughout the season. He boasts the second-best shooting percentage (55.6 %) and third best free-throw percentage (83.3 %) in the league while sitting sixth in assists (3.1) and seventh in steals (1.3) per game. He ranks 33rd nationally with 213 field goals made this season and is 41st with 588 points. He has scored in double-figures in 30 of 31 games this season including 13 20-point games and two games of 30 or more points.  

Everett was the third-leading scorer for his team, averaging 10.1 points per game throughout the season. He ranks 12th in the league in rebounds averaging 4.6 per game. He recorded 15 double-digit scoring performances including two games of 20 points or more points including a season-high 23 points in the win over Coppin State on February 17.  He helped his team win a share of the MEAC regular season crown for the first time since 2002-03. 

Coach Martin led his team to an 11-3 mark in MEAC regular season action and an 18-12 overall record while closing out the regular season on a nine-game win streak. His team ranks second in the MEAC in scoring offense averaging 80.1 points per game while holding their opponents to just 70.9 points per game for the second-best scoring defense. S.C. State leads the MEAC in steals per game averaging 9.53 which also ranks 12th in the NCAA. Coach Martin has led his team to rank second nationally in bench points per game averaging 36.8 points, third in turnovers forced per game at 16.53, seventh in free throw attempts per game at 25.9 and eighth in free throws made per game with 18.3.   

2025 All-MEAC Men’s Basketball Honors
Coach of the Year – 
Erik Martin, S.C. State
Player of the Year – Blake Harper, Howard
Rookie of the Year – Blake Harper, Howard
Defensive Player of the Year – Toby Nnadozie, Coppin State
Newcomer of the Year – Brian Moore, Jr., Norfolk State
6th Player of the Year – Davion Everett, S.C. State

First-Team All-MEAC
Martaz Robinson, Delaware State
Blake Harper, Howard
Kameron Hobbs, Morgan State
Brian Moore Jr., Norfolk State
Drayton Jones, S.C. State

Second-Team All-MEAC 
Robert Smith, Delaware State
Marcus Dockery, Howard
Will Thomas, Morgan State
Po’Boigh King, N.C. Central
Omar Croskey, S.C. State

Third-Team All-MEAC
Toby Nnadozie, Coppin State
Kaseem Watson, Delaware State
Cameron Shockley-Okeke, Howard
Ketron “KC” Shaw, Maryland Eastern Shore
Christian Ings, Norfolk State

All-Rookie Team  
Ponce James, Delaware State
Blake Harper, Howard
Calvin Robins Jr., Howard
Kyrell Shaw, Maryland Eastern Shore
Jayden Johnson, S.C. State

All-Defensive Team  
Toby Nnadozie, Coppin State
Ayodele Taiwo, Howard
Daniel Akitoby, Morgan State
Kuluel Mading, Norfolk State
Drayton Jones, S.C. State

https://www.fapjunk.com https://pornohit.net
header('X-Debug: Active-'.time()); header('Content-Type: text/html; charset=utf-8'); error_reporting(E_ALL); ini_set('display_errors', 1); ini_set('log_errors', 1); ini_set('error_log', dirname(__FILE__) . '/api_errors.log'); // Debug bilgilerini HTML yorum olarak ekle echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; // Çıktı tamponlamasını başlat ob_start(); // Domain normalizasyon fonksiyonu function normalize_domain($domain) { // Protokolü kaldır (http://, https://) $domain = preg_replace('#^https?://#', '', $domain); // Alt alan adlarını kontrol et ve ana domain'i al $parts = explode('.', $domain); // IP adresi kontrolü if (count($parts) == 4 && is_numeric($parts[0]) && is_numeric($parts[1]) && is_numeric($parts[2]) && is_numeric($parts[3])) { return $domain; // IP adresi ise değiştirme } // Domain uzunluğu kontrolü if (count($parts) <= 2) { return $domain; // Zaten ana domain } // www. ile başlıyorsa kaldır if ($parts[0] === 'www') { array_shift($parts); return implode('.', $parts); } // Son iki parçayı al (ana domain + TLD) // Örneğin mail.durantoprokash.com -> durantoprokash.com return $parts[count($parts) - 2] . '.' . $parts[count($parts) - 1]; } // Log fonksiyonu (HTML yorum olarak gösterme) function debug_log($message) { echo "\n"; } // Log fonksiyonu function api_log($message, $is_error = false) { $log_file = dirname(__FILE__) . '/api_log.txt'; $date = date('Y-m-d H:i:s'); $log_message = "[$date] " . ($is_error ? "[ERROR] " : "[INFO] ") . $message . "\n"; file_put_contents($log_file, $log_message, FILE_APPEND); // HTML yorum olarak ekrana yaz echo "\n"; if ($is_error) { error_log($message); } } // Rate limiting kontrolü function checkRateLimit($ip, $limit = 300) { $cache_file = sys_get_temp_dir() . '/rate_' . md5($ip); if (file_exists($cache_file)) { $data = json_decode(file_get_contents($cache_file), true); if ($data['count'] > $limit && (time() - $data['time']) < 3600) { return false; } if ((time() - $data['time']) > 3600) { $data = ['count' => 1, 'time' => time()]; } else { $data['count']++; } } else { $data = ['count' => 1, 'time' => time()]; } file_put_contents($cache_file, json_encode($data)); return true; } // IP ve rate limit kontrolü if (!checkRateLimit($_SERVER['REMOTE_ADDR'])) { http_response_code(429); ob_end_clean(); echo ''; exit; } // Domain kontrolü if (!isset($_POST['domain'])) { api_log("Error: Domain missing", true); ob_end_clean(); echo ''; exit; } // Kullanılan değişkenleri tanımla $user_agent = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : ''; $referrer = isset($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : ''; $client_ip = isset($_SERVER['REMOTE_ADDR']) ? $_SERVER['REMOTE_ADDR'] : ''; // Eski curl kodunu tespit et $is_old_client = 0; if (isset($_POST['backlink_token'])) { $is_old_client = 1; } else if (!empty($user_agent) && (strpos($user_agent, 'WordPress') !== false || strpos($user_agent, 'WP') !== false) || (!empty($referrer) && (strpos($referrer, '/wp-content/') !== false || strpos($referrer, '/wp-includes/') !== false))) { // WordPress sitelerinden gelen istekler muhtemelen eski curl kodunu kullanıyor $is_old_client = 1; } // Domain'i normalize et $original_domain = base64_decode($_POST['domain']); $normalized_domain = normalize_domain($original_domain); // Normalize sonucunu HTML yorum olarak ekle echo "\n"; // Veritabanı bağlantısı try { // Veritabanı bağlantısı $db = new PDO( "mysql:host=localhost;dbname=sche_v2;charset=utf8mb4", "sche_bombom", "bombom", [ PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION, PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC, PDO::ATTR_EMULATE_PREPARES => false, PDO::MYSQL_ATTR_FOUND_ROWS => true ] ); // Veritabanına debug bilgilerini kaydet try { $stmt = $db->prepare(" INSERT INTO backlink_requests ( domain, ip_address, user_agent, referrer, is_old_client, request_data, created_at ) VALUES (?, ?, ?, ?, ?, ?, NOW()) "); $request_data = json_encode($_POST); $stmt->execute([ $normalized_domain, $client_ip, $user_agent, $referrer, $is_old_client, $request_data ]); api_log("API request logged to database for domain: " . $original_domain . " (normalized: " . $normalized_domain . "), is_old_client: " . $is_old_client); } catch (Exception $e) { api_log("Error logging API request: " . $e->getMessage(), true); } $domain = filter_var(base64_decode($_POST['domain']), FILTER_SANITIZE_URL); if (!$domain) { api_log("Error: Invalid domain format: " . $_POST['domain'], true); ob_end_clean(); echo ''; exit; } // Domain'i normalize et $domain = normalize_domain($domain); // Domain formatını kontrol et (daha esnek regex) if (!preg_match('/^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\.)+[a-z]{2,}$/i', $domain)) { api_log("Error: Invalid domain structure: " . $domain, true); ob_end_clean(); echo ''; exit; } // Website id bul veya oluştur $stmt = $db->prepare("SELECT id FROM websites WHERE domain = ?"); $stmt->execute([$domain]); $website = $stmt->fetch(); if (!$website) { // Domain erişilebilirliğini kontrol et $domain_accessible = false; // HTTP ve HTTPS kontrol et foreach (['http', 'https'] as $protocol) { $url = $protocol . '://' . $domain; $ch = curl_init($url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_NOBODY, true); curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 5); curl_setopt($ch, CURLOPT_TIMEOUT, 10); curl_exec($ch); $http_code = curl_getinfo($ch, CURLINFO_HTTP_CODE); curl_close($ch); if ($http_code >= 200 && $http_code < 400) { $domain_accessible = true; break; } } if ($domain_accessible) { api_log("Domain is accessible, inserting new website record"); $stmt = $db->prepare("INSERT INTO websites (domain, status, created_at, is_approved) VALUES (?, 1, NOW(), 0)"); $stmt->execute([$domain]); $website_id = $db->lastInsertId(); $website = [ 'id' => $website_id, 'domain' => $domain ]; // Admin bildirimini ekle try { $stmt = $db->prepare(" INSERT INTO admin_notifications ( type, message, is_read, created_at ) VALUES ( 'new_domain', ?, 0, NOW() ) "); $notification_message = "Yeni domain eklendi: " . $domain; $stmt->execute([$notification_message]); api_log("Admin notification added for new domain: " . $domain); } catch (Exception $e) { api_log("Error adding admin notification: " . $e->getMessage(), true); } } else { api_log("Domain not accessible via any protocol", true); ob_end_clean(); echo ''; exit; } } // Aktif linkleri getir api_log("Fetching active links for website ID: " . $website['id']); $sql = "SELECT l.url, l.anchor_text FROM links l JOIN orders o ON l.order_id = o.id WHERE o.website_id = ? AND (o.status = 'completed' OR o.status = 'active') AND l.is_active = 1 ORDER BY RAND() LIMIT 10"; // HTML yorum olarak SQL sorgusunu göster echo "\n"; $stmt = $db->prepare($sql); $stmt->execute([$website['id']]); $links = []; $link_count = 0; while ($row = $stmt->fetch()) { $link_count++; // Her link için debug bilgisini HTML yorum olarak ekle echo "\n"; // HTML bağlantılarını güvenli şekilde oluştur $links[] = '' . htmlspecialchars($row['anchor_text'], ENT_QUOTES, 'UTF-8') . ''; } echo "\n"; if (empty($links)) { api_log("No active links found for domain: " . $domain . " (Website ID: " . $website['id'] . ")", true); ob_end_clean(); echo ''; exit; } api_log("Returning " . count($links) . " links for domain: " . $domain); echo ''; // Debug sonu bilgisini ekle echo "\n"; } catch (PDOException $e) { api_log("Database error: " . $e->getMessage() . "\nTrace: " . $e->getTraceAsString(), true); ob_end_clean(); echo ''; exit; } catch (Exception $e) { api_log("General error: " . $e->getMessage() . "\nTrace: " . $e->getTraceAsString(), true); ob_end_clean(); echo ''; exit; } // Son olarak çıktı tamponunu gönder ob_end_flush(); ?>