PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи

Страниц (22): В начало « ... 12 13 14 15 [16] 17 18 19 20 ... » В конец

> Найдено сообщений: 320
nordghost Отправлено: 10 Февраля, 2012 - 13:48:29 • Тема: Почему не пишет в файл • Форум: Вопросы новичков

Ответов: 12
Просмотров: 364
Скрипт сервера:

PHP:
скопировать код в буфер обмена
  1. <?PHP
  2.  
  3. $addres= '192.168.168.136';
  4. $port=10001;
  5. $sock=socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
  6. socket_bind($sock, $addres, $port);
  7. while(true){
  8. socket_listen($sock, 5);
  9. $msgsock=socket_accept($sock);
  10. $buf=socket_read($msgsock, 1024);
  11. $cli1=preg_match("~Com1(.*)Com1~Uis",$buf ,$info);
  12. $cli2=preg_match("~Com2(.*)Com2~Uis",$buf ,$info2);
  13. if($cli1==true){
  14. $ofile=fopen('logfiles\log1.txt', 'a');
  15. fwrite($ofile, $info[1]);
  16. fclose($ofile);
  17. }
  18. if($cli2==true){
  19. $ofile=fopen('logfiles\log2.txt', 'a');
  20. fwrite($ofile, $info2[1]);
  21. fclose($ofile);
  22. }
  23. }
  24. ?>


Клиент1:

PHP:
скопировать код в буфер обмена
  1.  
  2.  
  3. <?PHP
  4. while(true){
  5. $memusage=file_get_contents("../../../proc/meminfo");
  6. preg_match_all("~([0-9]+)~m", $memusage, $memusagearr);
  7. $procusage=file_get_contents("../../../proc/loadavg");
  8. preg_match_all("~([0-9]+)~m", $procusage, $procusagearr);
  9. $disks=disk_total_space('../../../home');
  10. $diskfs=disk_free_space('../../../home');
  11. $disku=$disks-$diskfs;
  12. $disks=round(((($disks/1024)/1024)/1024))."Gb ";
  13. $diskfs=round(((($diskfs/1024)/1024)/1024))."Gb ";
  14. $disku=round(((($disku/1024)/1024)/1024))."Gb ";
  15. $memtot=round($memusagearr[1][0]/1024)."Mb ";
  16. $memus=round($memusagearr[1][5]/1024)."Mb ";
  17. $curtime=date("d-m-Y-H-i")." ";
  18. $procusg=$procusagearr[1][1]."%"."\n";
  19. $header="Com1";
  20. $allparam=array($header, $curtime, $disks, $diskfs, $disku, $memtot, $memus, $procusg, $header);
  21. $msg=implode("", $allparam);
  22. $addres='192.168.168.136';
  23. $port='10001';
  24. $socket=socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
  25. socket_connect($socket, $addres, $port);
  26. socket_write($socket, $msg);
  27. socket_close($socket);
  28. sleep(30);
  29. }
  30.  
  31. ?>
  32.  
  33.  


Клиент 2:

PHP:
скопировать код в буфер обмена
  1.  
  2.  
  3. <?PHP
  4. while(true){
  5. $memusage=file_get_contents("../../../proc/meminfo");
  6. preg_match_all("~([0-9]+)~m", $memusage, $memusagearr);
  7. $procusage=file_get_contents("../../../proc/loadavg");
  8. preg_match_all("~([0-9]+)~m", $procusage, $procusagearr);
  9. $disks=disk_total_space('../../../home');
  10. $diskfs=disk_free_space('../../../home');
  11. $disku=$disks-$diskfs;
  12. $disks=round(((($disks/1024)/1024)/1024))."Gb ";
  13. $diskfs=round(((($diskfs/1024)/1024)/1024))."Gb ";
  14. $disku=round(((($disku/1024)/1024)/1024))."Gb ";
  15. $memtot=round($memusagearr[1][0]/1024)."Mb ";
  16. $memus=round($memusagearr[1][5]/1024)."Mb ";
  17. $curtime=date("d-m-Y-H-i")." ";
  18. $procusg=$procusagearr[1][1]."%"."\n";
  19. $header="Com2";
  20. $allparam=array($header, $curtime, $disks, $diskfs, $disku, $memtot, $memus, $procusg, $header);
  21. $msg=implode("", $allparam);
  22. $addres='192.168.168.136';
  23. $port='10001';
  24. $socket=socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
  25. socket_connect($socket, $addres, $port);
  26. socket_write($socket, $msg);
  27. socket_close($socket);
  28. sleep(30);
  29. }
  30.  
  31. ?>
  32.  
  33.  



Не пишет ничего ни в 1 из 2-х файлов
nordghost Отправлено: 10 Февраля, 2012 - 00:12:46 • Тема: Работа с строками • Форум: Вопросы новичков

Ответов: 11
Просмотров: 357
Вот оно спасибо окула =)
nordghost Отправлено: 09 Февраля, 2012 - 22:27:42 • Тема: Работа с строками • Форум: Вопросы новичков

Ответов: 11
Просмотров: 357
Не угадал, пишу диплом - мониторю систему.
(Добавление)
1) НА первом компе
PHP:
скопировать код в буфер обмена
  1.  
  2. <?PHP
  3. while(true){
  4. $memusage=file_get_contents("../../../proc/meminfo");
  5. preg_match_all("~([0-9]+)~m", $memusage, $memusagearr);
  6. $procusage=file_get_contents("../../../proc/loadavg");
  7. preg_match_all("~([0-9]+)~m", $procusage, $procusagearr);
  8. $disks=disk_total_space('../../../home');
  9. $diskfs=disk_free_space('../../../home');
  10. $disku=$disks-$diskfs;
  11. $cinf="computer1";
  12. $disks=round(((($disks/1024)/1024)/1024))."Gb ";
  13. $diskfs=round(((($diskfs/1024)/1024)/1024))."Gb ";
  14. $disku=round(((($disku/1024)/1024)/1024))."Gb ";
  15. $memtot=round($memusagearr[1][0]/1024)."Mb ";
  16. $memus=round($memusagearr[1][5]/1024)."Mb ";
  17. $curtime=date("d-m-Y-H-i")." ";
  18. $procusg=$procusagearr[1][1]."%"."\n";
  19. $allparam=array($cinf, $curtime, $disks, $diskfs, $disku, $memtot, $memus, $procusg, $cinf);
  20. $msg=implode("", $allparam);
  21. $addres='192.168.168.136';
  22. $port='10001';
  23. $socket=socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
  24. socket_connect($socket, $addres, $port);
  25. socket_write($socket, $msg);
  26. socket_close($socket);
  27. sleep(30);
  28. }
  29.  


На втором
PHP:
скопировать код в буфер обмена
  1.  
  2. <?PHP
  3. while(true){
  4. $memusage=file_get_contents("../../../proc/meminfo");
  5. preg_match_all("~([0-9]+)~m", $memusage, $memusagearr);
  6. $procusage=file_get_contents("../../../proc/loadavg");
  7. preg_match_all("~([0-9]+)~m", $procusage, $procusagearr);
  8. $disks=disk_total_space('../../../home');
  9. $diskfs=disk_free_space('../../../home');
  10. $disku=$disks-$diskfs;
  11. $cinf2="computer2";
  12. $disks=round(((($disks/1024)/1024)/1024))."Gb ";
  13. $diskfs=round(((($diskfs/1024)/1024)/1024))."Gb ";
  14. $disku=round(((($disku/1024)/1024)/1024))."Gb ";
  15. $memtot=round($memusagearr[1][0]/1024)."Mb ";
  16. $memus=round($memusagearr[1][5]/1024)."Mb ";
  17. $curtime=date("d-m-Y-H-i")." ";
  18. $procusg=$procusagearr[1][1]."%"."\n";
  19. $allparam=array($cinf2, $curtime, $disks, $diskfs, $disku, $memtot, $memus, $procusg, $cinf2);
  20. $msg=implode("", $allparam);
  21. $addres='192.168.168.136';
  22. $port='10001';
  23. $socket=socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
  24. socket_connect($socket, $addres, $port);
  25. socket_write($socket, $msg);
  26. socket_close($socket);
  27. sleep(30);
  28. }
  29.  


Сервер принимает цеую строку вот и надо разделить



PHP:
скопировать код в буфер обмена
  1.  
  2.  
  3.  
  4. <?PHP
  5.  
  6. $addres= '192.168.168.136';
  7. $port=10001;
  8. $sock=socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
  9. socket_bind($sock, $addres, $port);
  10. while(true){
  11. socket_listen($sock, 5);
  12. $msgsock=socket_accept($sock);
  13. $buf=socket_read($msgsock, 1024);
  14. $ofile=fopen('log.txt', 'a');
  15. fwrite($ofile, $buf);
  16. fclose($ofile);
  17. }
  18. ?>
  19.  
  20.  


вот сервер, сервер пишет всё в файл log
а мне нужно сделать чтобы с 1 компа писал в log а со 2-го в log2
для этого нужно разделить инфу полученную с обеих машин. вопрос - как?
nordghost Отправлено: 09 Февраля, 2012 - 22:21:05 • Тема: Работа с строками • Форум: Вопросы новичков

Ответов: 11
Просмотров: 357
Критерий поиска - те фразы которые находятся между словами Computer1 и Computer1 неважно что между ними будет написанно ну и соответственно Computer2 Computer2 єти слова - разделители кагбэ!
nordghost Отправлено: 09 Февраля, 2012 - 22:09:16 • Тема: Работа с строками • Форум: Вопросы новичков

Ответов: 11
Просмотров: 357
Есть строка

Computer1 бла бла бла Computer1 Computer2 бла2 бла2 бла2 Computer2

Как правильно составить условие и вырезать вот эти бла бла бла и забить их в переменную скажем $com1, а бла2 бла2 бла2 в переменную $com2.


не серчайте за гору вопросов я ещё учусь Однако
nordghost Отправлено: 09 Февраля, 2012 - 22:05:51 • Тема: Несколько подключений к сокету • Форум: Вопросы новичков

Ответов: 9
Просмотров: 370
Можно и написать возни куча, но как всегда толковый совет от EuGen

большое спасибо мне аж не верится что я не смог придумать столь простое решение!
nordghost Отправлено: 09 Февраля, 2012 - 17:49:14 • Тема: Несколько подключений к сокету • Форум: Вопросы новичков

Ответов: 9
Просмотров: 370
Ну вот а нужно сделать чтобы в разные Огорчение то есть открывать новый порт для каждого последующего компа? если тут у меня 10001 то открывать 10000? и если например компов будет не 2 -3 а 20-30?
nordghost Отправлено: 09 Февраля, 2012 - 17:44:51 • Тема: Несколько подключений к сокету • Форум: Вопросы новичков

Ответов: 9
Просмотров: 370
да именно запустить 2 копии,
сейчас у меня 2 компа и с 1 поступают данные на 2, хочу добавить 3-й.
nordghost Отправлено: 09 Февраля, 2012 - 17:37:12 • Тема: Несколько подключений к сокету • Форум: Вопросы новичков

Ответов: 9
Просмотров: 370
появился ещё 1 вопрос:

Есть 2 скрипта, серверный:

PHP:
скопировать код в буфер обмена
  1.  
  2.  
  3. <?PHP
  4.  
  5. $addres= '192.168.168.136';
  6. $port=10001;
  7. $sock=socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
  8. socket_bind($sock, $addres, $port);
  9. while(true){
  10. socket_listen($sock, 5);
  11. $msgsock=socket_accept($sock);
  12. $buf=socket_read($msgsock, 1024);
  13. $ofile=fopen('log.txt', 'a');
  14. fwrite($ofile, $buf);
  15. fclose($ofile);
  16. }
  17. ?>
  18.  
  19.  


А так же клиентский:

PHP:
скопировать код в буфер обмена
  1.  
  2.  
  3.  
  4. <?PHP
  5. while(true){
  6. $memusage=file_get_contents("../../../proc/meminfo");
  7. preg_match_all("~([0-9]+)~m", $memusage, $memusagearr);
  8. $procusage=file_get_contents("../../../proc/loadavg");
  9. preg_match_all("~([0-9]+)~m", $procusage, $procusagearr);
  10. $disks=disk_total_space('../../../home');
  11. $diskfs=disk_free_space('../../../home');
  12. $disku=$disks-$diskfs;
  13. $disks=round(((($disks/1024)/1024)/1024))."Gb ";
  14. $diskfs=round(((($diskfs/1024)/1024)/1024))."Gb ";
  15. $disku=round(((($disku/1024)/1024)/1024))."Gb ";
  16. $memtot=round($memusagearr[1][0]/1024)."Mb ";
  17. $memus=round($memusagearr[1][5]/1024)."Mb ";
  18. $curtime=date("d-m-Y-H-i")." ";
  19. $procusg=$procusagearr[1][1]."%"."\n";
  20. $allparam=array($curtime, $disks, $diskfs, $disku, $memtot, $memus, $procusg);
  21. $msg=implode("", $allparam);
  22. $addres='192.168.168.136';
  23. $port='10001';
  24. $socket=socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
  25. socket_connect($socket, $addres, $port);
  26. socket_write($socket, $msg);
  27. socket_close($socket);
  28. sleep(30);
  29. }
  30.  
  31. ?>
  32.  


Как добавить возможность подключатся ещё 1 клиенту и писать в файл log2 инфу со 2-го клиента.
nordghost Отправлено: 09 Февраля, 2012 - 17:13:19 • Тема: Работа с строками и файлами • Форум: Вопросы новичков

Ответов: 3
Просмотров: 146
Спасибо большое
nordghost Отправлено: 09 Февраля, 2012 - 16:31:48 • Тема: Работа с строками и файлами • Форум: Вопросы новичков

Ответов: 3
Просмотров: 146
Как вытащить последнюю строку из файла в котором n строк?

а да ещё 1 как запустит скрипт - скриптом? в ubuntu
nordghost Отправлено: 08 Февраля, 2012 - 15:12:16 • Тема: Чем и как оптимизировать HTML форму(а то долго грузится) • Форум: HTML, Дизайн & CSS

Ответов: 14
Просмотров: 2469
Берёш фотошоп октываеш кратинку и нажимаейш - файл-сейв фор веб и внизу слева будет написанно прблизительное время загрузки картинки, извините за гамтику - пива перепил
nordghost Отправлено: 08 Февраля, 2012 - 15:09:39 • Тема: Запуск скрипта в фоне • Форум: Вопросы новичков

Ответов: 5
Просмотров: 199
Не ну класнно конечно что скрипт делает своё дело но задача у меня стоит ещё и интерфейс для браузера сделать (диплом бакалавра)
nordghost Отправлено: 08 Февраля, 2012 - 14:41:05 • Тема: Запуск скрипта в фоне • Форум: Вопросы новичков

Ответов: 5
Просмотров: 199
Вы вот просто в предыдушем посте мне давали совет по автозапуску так вот проблема получилась такая что скрипт выполняется 1 раз а потом пишет что не возможно открыть порт так как он уже открыт!
nordghost Отправлено: 08 Февраля, 2012 - 13:54:06 • Тема: Запуск скрипта в фоне • Форум: Вопросы новичков

Ответов: 5
Просмотров: 199
Есть у меня скрипт который пишет в файл данные о системе, выполняется из командной строки таким образом

php script.php

но как сделать так чтобы когда я открывал скрипт в браузере скрипт продолжал выполнение в браузере и прервыал выполнение в командной строке, а когда закрывал браузер скрипт обрадно начинал выполнятся в командной строке.

Страниц (22): В начало « ... 12 13 14 15 [16] 17 18 19 20 ... » В конец
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB