>> Delete No. 26167 article
No. [질문] 골때리는 미친 코드좀 봐주셈.. ^^

등록 2001-04-04 14:42:00 By localhost     조회 2
이름 당근감자    

		#include <stdio.h>
#include <stdlib.h>
#include <errno.h>
#include <string.h>
#include <sys/types.h>
#include <netinet/in.h>
#include <sys/socket.h>
#include <sys/wait.h>
#include <mysql.h>
 #define MYPORT 2002
#define BACKLOG 10
 main()
{
	int sockfd, new_fd;
	struct sockaddr_in my_addr;
	struct sockaddr_in their_addr;
	int sin_size;
 	MYSQL mysql;
	MYSQL_RES *res;
	MYSQL_ROW row;
	int fields;
	int cnt;
	char *query;
 	if((sockfd = socket(AF_INET, SOCK_STREAM, 0)) == -1){
		perror("socket");
		exit(1);
	}
 	my_addr.sin_family = AF_INET;
	my_addr.sin_port = htons(MYPORT);
	my_addr.sin_addr.s_addr = INADDR_ANY;
	bzero(&(my_addr.sin_zero), 8);
 	if(bind(sockfd, (struct sockaddr *)&my_addr, sizeof(struct sockaddr)) == -1){
		perror("bind");
		exit(1);
	}
 	if(listen(sockfd, BACKLOG) == -1) {
		perror("listen");
		exit(1);
	}
 	mysql_init(&mysql);
 		if(!mysql_real_connect(&mysql,"localhost","kimh81","*****","kimh81",0,(char *)NULL, 0))
		{
			printf("error no: %d%s", mysql_errno(&mysql), mysql_error(&mysql));
			exit(1);
		}
 		query = "SELECT * FROM bbs_se";
		if(mysql_real_query (&mysql, query, strlen(query)))
		{
			printf("error no: %d%s", mysql_errno(&mysql), mysql_error(&mysql));
			exit(1);
		}
 		res = mysql_store_result(&mysql);
		fields = mysql_field_count(&mysql);
 	while(1){
		sin_size = sizeof(struct sockaddr_in);
		if ((new_fd = accept(sockfd, (struct sockaddr *)&their_addr, &sin_size)) == -1){
			perror("accept");
			continue;
		}
 		while((row = mysql_fetch_row(res)))
		{
				for(cnt = 0; cnt < fields; ++cnt)
 					if(!fork()){
						if(send(new_fd, row[cnt], 0, 0) == -1)
							perror("send");
						close(new_fd);
						exit(0);
				}
				close(new_fd);
		}
 		mysql_free_result(res);
		mysql_close(&mysql);
 			while(waitpid(-1, NULL, WNOHANG) > 0);
		}
}
 이따구루다가.. 코딩했습니다.
 이렇게 해서 서버에 오려놓구..
 클라이언트로 접속하면 후후..
 서버에 잘못된파일기술자라고 하면서 에러가 죽~~~ 나오네용 ㅡ,.ㅡ;;
 mysql에서 나온 값을 어떻게 클라이언트로 전송해야하죠? 웅?--윽~ 똥발바따~ ㅜ.ㅜ
[관리자] 패스워드를 입력 하십시오. 답장이 존재하면 함께 삭제됩니다.[ 목록 | 이전 ]
패스워드:    

Copyleft 1999-2026 by JSBoard Open Project
Theme Designed by IDOO All right reserved