개발모음집

개발 참고 사이트 본문

Android

개발 참고 사이트

void 2022. 12. 31. 16:53

retrofit 참고 사이트

https://www.sitepoint.com/retrofit-a-simple-http-client-for-android-and-java/


채팅 참고 사이트


http://www.androidside.com/bbs/board.php?bo_table=B56&wr_id=6887

http://jungwoo5394.blogspot.kr/2015/04/blog-post_94.html

https://www.youtube.com/watch?v=zO-Ok5qGD7k


채팅 db 설계

https://www.androidhive.info/2016/02/android-push-notifications-using-gcm-php-mysql-realtime-chat-app-part-1/

https://stackoverflow.com/questions/8351526/storing-chat-messages-inside-a-mysql-table


데이터 베이스 명명 규칙

http://jang8584.tistory.com/35


개발 쉽게 도와주는

https://academy.realm.io/kr/posts/tools-and-libraries-for-common-android-problems/



<?php
$db_host="host=localhost";
$db_port="port=5432";

$db_passwd="user=postgres password=dustjdgns1!";
$db_name="dbname=allnight";

$conn=pg_connect("$db_host $db_port $db_name $db_passwd");

if(!$conn){
echo "db connect fail:<br>\n";
}

$query = "SELECT * FROM weather";

$result = pg_exec($conn, $query);

while($row = pg_fetch_assoc($result)){

echo "결과값은 ".$row['city']." 입니다";

}

pg_close($db_connect);

?>



한 로우에 친구추가할 때 쓰던 php 파일

<?php

$db_host = "host=localhost";
$db_port = "port=5432";

$db_passwd = "user=postgres password=dustjdgns1";
$db_name = "dbname=allnight";

$conn = pg_connect("$db_host $db_port $db_name $db_passwd");

$email = $_POST['userEmail']; // 유저(본인) 이메일아이디
$friendNo = $_POST['friendNo']; // 친구추가할 유저의번호
//$friendArray=null;

// 유저의 친구 리스트를 불러오고 친구리스트에 친구추가하려는 친구의 유저번호를 추가해준다.

$sql = 'SELECT * FROM allnight.allnight.users_tb WHERE user_email = \'' . $email . "'";

$result = pg_query($conn, $sql) or die ("\"Cannot execute query: $sql\n");
$row = pg_fetch_assoc($result); // 행을 배열로 가져오기

if (!empty($row['user_friend_list'])) {// 친구목록에 추가된 친구가 있을 경우

$friendList = $row['user_friend_list'];

$splitFriendList = explode(",", $friendList); // 친구리스트 split
$cntFriendList = count($splitFriendList); // 배열(친구리스트)의 개수

$friendArray = array();

// 친구리스트를 가져와서 친구 유저번호가 중복된다면 값을 넣지 않도록, 중복되면 값을
for ($i = 0; $i < $cntFriendList; $i++) {
if ($splitFriendList[$i] != $friendNo) {
array_push($friendArray, $splitFriendList[$i]);
}
}
array_push($friendArray, $friendNo); // 친구리스트에 새로운 친구 추가
sort($friendArray); // 정렬
$friendList = implode(",", $friendArray);

// echo $friendList . "입니다\n";

/*
echo $friendList . "\n";
echo $cntFriendList . "\n";*/

// 친구리스트를 배열에 넣고 정렬하고 다시 $friendList에 넣어서 update하는 코드
// 정렬해서 DB에 저장
// for ($i = 0; $i < $cntFriendList; $i++) {
// array_push($friendArray, $splitFriendList[$i]);
// }


$sql = 'UPDATE allnight.allnight.users_tb SET user_friend_list = \'' . $friendList . '\' WHERE user_email = \'' . $email . "'";
$result = pg_query($conn, $sql) or die ("\"Cannot execute query: $sql\n");
$resultRow = pg_affected_rows($result);
// update가 완료되면 ProfileACtivity에 1을 보낸다. 완료하지 못하면 0을 반환한다.
if ($resultRow = 1) {// 결과값이 있을 때 if문안의 코드를 실행한다.
$row = pg_fetch_assoc($result); // 행을 배열로 가져오기
echo 1; // update 성공
} else {
echo 0; // update 실패
}


} else if (empty($row['user_friend_list'])) { // 친구목록에 추가된 친구가 없을 경우

$sql = 'UPDATE allnight.allnight.users_tb SET user_friend_list = ' . $friendNo . ' WHERE user_email = \'' . $email . "'";
$result = pg_query($conn, $sql) or die ("\"Cannot execute query: $sql\n");

$resultRow = pg_affected_rows($result);
// update가 완료되면 ProfileACtivity에 1을 보낸다. 완료하지 못하면 0을 반환한다.
if ($resultRow = 1) {// 결과값이 있을 때 if문안의 코드를 실행한다.
$row = pg_fetch_assoc($result); // 행을 배열로 가져오기
echo 1; // "친구목록이 없을 때 업데이트성공"
} else {
echo 0; // '친구목록이 없을 때 업데이트실패'
}
}
?>