티스토리 뷰

LiveScore API를 PHP와 MariaDB를 사용하여 연동하는 방법과 주의할 점에 대해 포스팅해 봅니다.

다음은 필요한 부분과 주의사항입니다.

 

1. Livescore API 연동

<?php

function callLivescoreAPI($url) {
    $ch = curl_init($url);
    
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    
    $response = curl_exec($ch);
    
    if (curl_errno($ch)) {
        echo 'Error:' . curl_error($ch);
    }
    
    curl_close($ch);
    
    return json_decode($response, true);
}

// API URL (예시)
$apiUrl = "https://api.livescore.com/scores"; // 실제 API 엔드포인트로 수정
$livescoreData = callLivescoreAPI($apiUrl);

// 데이터베이스에 저장
if ($livescoreData) {
    saveToDatabase($livescoreData);
}

function saveToDatabase($data) {
    $servername = "localhost";
    $username = "your_username";
    $password = "your_password";
    $dbname = "your_database";

    // MariaDB 연결
    $conn = new mysqli($servername, $username, $password, $dbname);

    // 연결 체크
    if ($conn->connect_error) {
        die("Connection failed: " . $conn->connect_error);
    }

    // 데이터 삽입 예제 (테이블 구조에 맞게 수정)
    $stmt = $conn->prepare("INSERT INTO scores (match_id, home_team, away_team, score) VALUES (?, ?, ?, ?)");
    
    // 반복문으로 데이터 삽입
    foreach ($data['matches'] as $match) {
        $stmt->bind_param("isss", $match['id'], $match['homeTeam'], $match['awayTeam'], $match['score']);
        $stmt->execute();
    }

    $stmt->close();
    $conn->close();
}
?>

 

2. MariaDB 데이터베이스 테이블 구조

CREATE TABLE scores (
    id INT AUTO_INCREMENT PRIMARY KEY,
    match_id INT NOT NULL,
    home_team VARCHAR(100) NOT NULL,
    away_team VARCHAR(100) NOT NULL,
    score VARCHAR(10) NOT NULL,
    created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

 

3. 주의할 점
API 문서 확인: Livescore API의 공식 문서를 참고하여 정확한 엔드포인트, 요청 형식, 응답 형식, 인증 방식 등을 확인합니다.
API 호출 제한: API 사용 시 호출 제한이 있을 수 있으므로, 이를 준수하여야 합니다. 필요한 경우 캐싱을 통해 API 호출 횟수를 줄이는 방법도 고려하세요.
보안: 데이터베이스 연결 정보는 안전하게 관리해야 하며, 쿼리 실행 시 SQL 인젝션을 방지하기 위해 prepared statements를 사용합니다.
에러 처리: API 응답 및 데이터베이스 작업에 대한 적절한 에러 처리를 구현하여 문제가 발생할 경우 적절히 대응할 수 있도록 합니다.
데이터 유효성 검사: API에서 받아온 데이터를 데이터베이스에 저장하기 전에 유효성을 검사하여 잘못된 데이터가 저장되지 않도록 합니다.
성능: 대량의 데이터를 처리할 경우 성능에 영향을 줄 수 있으므로, 필요한 데이터만 선택적으로 요청하고, 데이터베이스에 삽입하기 전에 필요한 데이터로 가공하는 것이 좋습니다.

4. 구축 시 꼭 필요한 부분
API 키: Livescore API에 접근하기 위한 API 키를 발급받아야 합니다.
환경 설정: PHP와 MariaDB 환경이 준비되어 있어야 하며, cURL이 활성화되어 있어야 합니다.
테스트 및 디버깅: 구현 후 충분한 테스트를 통해 API 연동이 정상적으로 작동하는지 확인합니다.


이 정보를 바탕으로 API 연동을 진행하시기 바랍니다.

추가적으로 개발이 필요하시다면 아래로 상담 주세요 ^^

 

https://kmong.com/gig/549525

 

API 개발구축 및 각종 API 연동 해드립니다 - 크몽

EDUPLATFORM 전문가의 IT·프로그래밍 서비스를 만나보세요. **기본결제시 호스팅은 별도이며, 도메인연결, 서버배포해 드립니다.** 적은 비용과 간단한...

kmong.com

 

 

댓글