19. maj 2003 - 17:29Der er
11 kommentarer og 1 løsning
server programmering
skal man lave en ny socket når man skal send en to forskellige hjemme side på browser, vi har en socket men efter vi har vist vores første hjemmeside og hvor der kan indtastes brugernavn og password ,og har hente de oplysninger tilbage til serveren.vi har behandlet dem og så skal vi igen vise mail oplysning på browseren, det kan vi ikke, den siger at siden er sent men kan ikke få det vist, skal vi oprette en ny socket eller hvad...
my_addr.sin_family = AF_INET; /* host byte order */ my_addr.sin_port = htons(MYPORT); /* short, network byte order */ my_addr.sin_addr.s_addr = INADDR_ANY; /* auto-fill with my IP */ bzero(&(my_addr.sin_zero), 8); /* zero the rest of the struct */
if(status==-1) { perror("Efter_msqlconnect:"); cout<<"msqlErrMsg:databasen kører ikke"<<endl; } else { cout<<"************Forbindelsen til databasen er oprettet************"<<endl; }
/******************Det indtastede username og password sendes til databasen**************/ cout<<"************1************"<<endl; sprintf(j, "select *from bruger where brugernavn='%s' and adgangskode='%s'",username,password); cout<<"************ 2************"<< username<<endl; int i; i=msqlQuery(dbid,"select *from bruger"); result=msqlStoreResult(); cout<< "antal rækker"<< msqlNumRows(result); cout<< "j" << j; i=msqlQuery(dbid,j);
cout<<"*****3******"<<endl; cout<<"i="<< i <<endl;
result=msqlStoreResult(); if (i>=1) {
cout<<"************4************ result ="<< result <<endl; row=msqlFetchRow(result); cout<<"************5************ row ="<< row <<endl; cout<<"bruger er logget ind ="<< j<<endl;
} else { cout<< " ingen data i databasen" << endl; exit(1); }
/*********************************indbakke hentes ind***************************/ (sprintf(j, "select *from indbakke where brugernavn='%s'",username));
char *indbakkebuffer = new char[fileLength]; fread(indbakkebuffer, sizeof(char), fileLength, indbakkefile); fclose(indbakkefile); string htmlstring = indbakkebuffer; // convertering af char til sting
string html = tabelud( ant_r, ant_k,result, htmlstring); /*FEJL ...... string html indholder den anden hjemmeside , men den viser indholdet på sammeside)*/
char htmlchr[5000] = {'\0'}; strncat( htmlchr, html.c_str(), 5000); // max 1000 chars if(send(new_fd, htmlchr, strlen(htmlchr) , 0) == -1) { printf("*error* - could not send\n"); } else { printf("*success* - sent %i bytes\n"); VI FÅR EN SUCCESS MEN INHOLDET BLIVER VIST PÅ SAMME SIDE } } }
close(new_fd); //exit(0);
//------------------------------------------------------------------ close(new_fd); /* parent doesn't need this */
while(waitpid(-1,NULL,WNOHANG) > 0); /* clean up child processes */ }
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.