목차
php <-> cubrid driver 연동😄
php와 cubrid driver를 연동하면서 내가 나중에 보기 위해 기록함
보통 php는 apm(apache php mysql) 세트로 많이 사용한다. 즉 php에서는 보통 mysql을 많이 사용한다.
이번 프로젝트에서는 php와 cubrid연동할 일이 있어서 삽질을 좀 하다가 잊지 않기 위해 기록한다.
간단하게 정리하면 아래와 같다.
1. php 설치🤗
※ windows xampp 설치는 아래 글 참조
2. php 버전 확인🥰
1. php 버전 확인
아래처럼 함수 작성 후 페이지 호출 시 아래처럼 설치된 php 버전이 표시된다.
내 컴퓨터에는 7.4.27버전이 설치된 걸 확인 할 수 있다.
3. php_cubrid.dll, pdo_cubrid.dll(버전에 따라 파일명은 상이할 수 있음)😎
아래 cubrid 공식 홈페이지 들어가서 dll파일을 다운 받는다.
2번에서 확인 한 php버전에 맞는 dll파일을 다운 받아야 한다.(php bit와 cubrid dll파일 버전도 맞춰야 함)
4. cubrid관련 dll파일을 php에서 사용하도록 설정😉
다운 받은 dll파일 2개를 php ext폴더로 복사한다.
아래경로는 xampp 기준으로 php extension폴더임(php.ini에 경로 나와있음)
아래경로에 dll파일을 복사함
그 후 복사한 dll파일을 php에서 사용할 수 있도록 설정 파일(php.ini)에 아래처럼 추가해줌
그 후 apache 재시작
5. db 연동 테스트😲
cubrid가 이미 동작중이라는 가정하에 연결 테스트를 하기 위해 "C:\xampp\htdocs\dashboard\phpinfo.php"를 아래처럼 코드를 고친 후 페이지를 호출해본다.
PDO 이용 방식
혹은 테스트 용 php를 하나 만들어서 호출 테스트를 해도 된다.
<?php
$database ="TEST";
$host ="xx.xx.x.xxx";
$port ="33000";//use default value
$username ="dba";
$password ="TEST";
$sql = "SELECT * FROM TEST limit 100";
$conn_str ="cubrid:dbname=".$database.";host=".$host.";port=".$port;
try{
//cubrid:host=localhost;port=33000;dbname=demodb
$conn_str ="cubrid:dbname=".$database.";host=".$host.";port=".$port;
echo"PDO connect string: ".$conn_str." ";
$db =new PDO($conn_str, $username, $password );
echo"PDO connection created ok!"." ";
// 테이블 데이터 출력
foreach($db->query($sql)as $row){
echo $row['col1'].' - '. $row['col2'].' - '. $row['col3'].' + "<br>"';
}
//$db = null;//disconnect
}catch(PDOException $e){
echo"Error: ".$e->getMessage()."
";
}
?>
cubrid_connect() 이용 방식
<?php
$con = cubrid_connect("xx.xx.x.xxx", 33000, "xxx", "dba", "xxxx");
if($con) {
$req = cubrid_execute($con, "SELECT * from xxxx");
if($req) {
while ($row = cubrid_fetch($req)) {
echo $row["id"];
echo $row["name"];
}
cubrid_close_request($req);
}
cubrid_disconnect($con);
}
연결이 정상적으로 될 경우 12 line의 "PDO connection created ok!"가 표시될 거고 그게 아니면 15 line의 에러 메시지가 표시될거다.
호출 결과 아래처럼 정상 접속되었고 테이블의 데이터도 표시된다.
'IT > development' 카테고리의 다른 글
[Java] Java 프로그램 실행과정(feat. TCPSchool) (0) | 2022.11.23 |
---|---|
[Java] Java String convert to byte[], byte[] convert to String (2) | 2022.11.23 |
[Java] Java Stream 사용법 정리(jdk 1.8 부터 사용 가능) (0) | 2022.11.23 |
[Java] Java Lambda 정리(jdk 1.8부터 사용 가능) (0) | 2022.11.23 |
[IDE] eclipse tomcat "Serve modules without publishing"... (0) | 2022.11.23 |
댓글