Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> protokół komunikacyjny w php
Jabol
post 5.05.2003, 19:57:00
Post #1





Grupa: Przyjaciele php.pl
Postów: 1 467
Pomógł: 13
Dołączył: 22.02.2003

Ostrzeżenie: (0%)
-----


Ostatnio udzielałem odpowiedzi w poście i tknęło mnie, że można zrobić coś bardzo ciekawego. Mam na myśli protokół komunikacyjny w php, za pomocą fsocketopen, print i fgets na kliencie oraz readline oraz print na serwerze? Czy tak by się dało. Do zastosowań mniejszych lub nawet większych. Wszystko można by tak było zrobić (nawet serwer www, ale po co wyważać otwarte drzwi). Mam na myśli coś takiego.
  1. <?php
  2. #klient:
  3. $serw=fsockopen($host, $serwer);
  4. #serwer:
  5. print &#092;"HELLO I AM php BASED WEB SERWERnLOGINnREADYn\";
  6. $user=readline();
  7. #klient:
  8. while(($komenda=fgets($serw, dlugosc/*nie znam defaultowej*/))!=&#092;"LOGIN\"){
  9. do_kommand($komenda);
  10. }
  11. while(($komenda=fgets($serw, dlugosc/*nie znam defaultowej*/))!=&#092;"READY\"){
  12. //czekaj na ready
  13. }
  14. fputs($serw, 'TEST');
  15. #serwer:
  16. print &#092;"PASSnREADYn\";
  17. $pass=readline();
  18. #klient:
  19. while(($komenda=fgets($serw, dlugosc/*nie znam defaultowej*/))!=&#092;"PASS\"){
  20. //czekaj na pass
  21. }
  22. while(($komenda=fgets($serw, dlugosc/*nie znam defaultowej*/))!=&#092;"READY\"){
  23. //czekaj na ready
  24. }
  25. fputs($serw, 'TEST_PASS');
  26. #server:
  27. if(test_auth($user, $pass)){
  28. print &#092;"LOGIN CORRECTnREADY\";
  29. }
  30. else{
  31. print &#092;"LOGIN INCORRECTnSERVER IS GOING DOWNn\";
  32. die('BYE');
  33. };
  34. $kommand=readline();
  35. #klient:
  36. if(fgets($serw='LOGIN CORRECT')){
  37. while(($komenda=fgets($serw, dlugosc/*nie znam defaultowej*/))!=&#092;"READY\"){
  38. //czekaj na ready
  39. }
  40. print 'LOGGOUTnEXITn';
  41. }
  42. ?>

Mam pytanie czy coś takiego wogóle by działało (oczywiście by się dało w linuxie odpowiednią konfigurację, wiem, że tak sie da). Tak co do możliwości to uważam, że są spore aczkolwiek niewydajne i myśle, ze lepiej to napisać w czym innym, ale tak się po prostu zastanawiam...
Napiszcie co o tym myślicie i czy macie już może tego typu doświadczenia?
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 24.07.2025 - 23:29