|
|
|
| В английском мануале написано что пхп может работать с Com-портом. Вот я и решил ето испробовать но хочу задать несколько вопросов :
1. Работа с ком-портом надеюсь выполняется на стороне клиента ? Тоесть стриница будет работать с портом который есть у меня или на сервере ? (Возможно ето и глупый вопрос).
2. Подскажите пожалуйста где об етом можно больше почитать(не только об том что ето возможно) и желательно на руском. Спасибо! | |
|
|
|
|
|
|
|
для: IgorT
(16.07.2007 в 20:08)
| | с COM объектами а не портами )) | |
|
|
|
|
|
|
|
для: IgorT
(16.07.2007 в 20:08)
| | Имеется в виду не COM-порт, а интерфейс COM, который позволяет обращаться к программам в Windows, например, работать из PHP с Excel. | |
|
|
|
|
|
|
|
для: cheops
(16.07.2007 в 20:15)
| | Ну а как же быть с етим :
// Use this code to write directly to the COM1 serial port
// First, you want to set the mode of the port. You need to set
// it only once; it will remain the same until you reboot.
// Note: the backticks on the following line will execute the
// DOS 'mode' command from within PHP
`mode com1: BAUD=9600 PARITY=N data=8 stop=1 xon=off`;
$fp = fopen ("COM1:", "w+");
if (!$fp) {
echo "Uh-oh. Port not opened.";
} else {
$e = chr(27);
$string = $e . "A" . $e . "H300";
$string .= $e . "V100" . $e . "XL1SATO";
$string .= $e . "Q1" . $e . "Z";
echo $string;
fputs ($fp, $string );
fclose ($fp);
}
|
Взял из PHP manual | |
|
|
|
|
|
|
|
для: IgorT
(17.07.2007 в 01:35)
| | А зачем это, какое практическое применение этому, тем более что рабочее только на Windows?
Кстати на вот это "Работа с ком-портом надеюсь выполняется на стороне клиента ?" зря надеетесь. | |
|
|
|
|
|
|
|
для: IgorT
(17.07.2007 в 01:35)
| | Даже если работа с ком портом есть, то напомним Вам ещё разок: "PHP серверный язык" и парситься на стороне сервера, чтобы обработанную информацию перевести в клиентские языки, то есть HTML, JS и прочее....и отдать уже на машину челу, ну Вы наверное и так знаете. просто немного не подумали =) | |
|
|
|
|
|
|
|
для: IgorT
(17.07.2007 в 01:35)
| | >Ну а как же быть с етим :
> $fp = fopen ("COM1:", "w+");
> fputs ($fp, $string );
> fclose ($fp);
А это работа с файловой системой.
Естественно, на стороне сервера.
И конечно всё будет определяться тем, есть ли в серверной файловой системе псевдофайл COM1: и что он собой представляет.
>Взял из PHP manual
В нем написано что-то другое? | |
|
|
|
|
|
|
|
для: Trianon
(17.07.2007 в 09:49)
| | А есть какая-то возможность выполнить средствами пхп или хтмл команду ОС на клиенте? (Тоесть я хочу например запустить какой то командой Виндовс какуюто програму из бровзера).
P.S. То что конект идет до ком-порта на сервере ето так. У меня апач сразу слетает когда я на клиенте кликаю и выполняю етот код. Но нужно работать например с модемом на стороне клиента, возможно ли такое из браузера ? Тоесть из хтмл или пхп ? | |
|
|
|
|
|
|
|
для: IgorT
(17.07.2007 в 12:29)
| | Нельзя. Ваша HTML-страничка это не приложение Windows. Что-то более менее можно сделать (но не с железом) на Windows Script Host. Можете написать свой ActiveX компонент - если вам его разрешат загрузить на стороне клиента, тогда...
С модема на стороне клиента можно с помощью JS что-то куда-то передать. Все. | |
|
|
|
|
|
|
|
для: sim5
(17.07.2007 в 13:05)
| | >С модема на стороне клиента можно с помощью JS что-то куда-то передать.
Ето значит что JS может все таки работать с ком-портом ? | |
|
|
|
|
|
|
|
для: IgorT
(20.07.2007 в 00:49)
| | Если ваш модем на COM порте сидит да, но только не JS, а Widows этим заниматься будет. | |
|
|
|
|
|
|
|
для: sim5
(20.07.2007 в 01:10)
| | С помощью VBScript можно всё! Его не блокируют антивирусы и виндовз!э
Он может и файлы изменять/запускать и реестр работает с ним, почитайте про него! Очень полезная штука! Наверное это Вам и поможет в решении задачи, хотя конечно то которая ВАм нужна врятли! | |
|
|
|
|
|
|
|
для: Proger
(20.07.2007 в 03:25)
| | >почитайте про него
Хорошо, а где об етом можно почитать ?
И еще одно, можно ли сделать взаимодействие ОС и браузера, так чтобы браузер мог передать какуюто пременную ОС, а она браузеру и так чтобы ета применная могла в дальнейшем использоваться в пхп скрипте ? | |
|
|
|
|
|
|
|
для: IgorT
(20.07.2007 в 15:48)
| | Любое Windows приложение взаимодействует с ОС и браузер тут не исключение. С точки зрения ОС он ничем не отличается от любого приложения, просто у браузера могут быть свои специфические "просьбы и требования" к ОС. Какую переменную вы хотите передать ОС? Какую переменную вы хотите получить от ОС? Вы можете узнать с помощью JS, например, разрешение экрана и передать его на сервер.
Вы что вырус собрались написать или задача трояна посадить на комп? | |
|
|
|
|
|
|
|
для: sim5
(20.07.2007 в 16:19)
| | :)
Нет вырус тут непрычем. Просто надо написать програму (только для меня), которая будет выполнять некоторые действия, такые как формировать некоторую информацию (надо сделать под пхп) и отсылать ее на ком- порт, и конечно же получать и з него ответ.
Но проблема в том что я сперва думал что пхп действует с ком-портом и я смогу получать и отсылать информацию на ком-порт. Но тут - то выяснилось что работа с ком-портами в пхп есть, но только если етот ком-порт стоит на сервере :)
Но вы подсказали идейку - об работе на JS. Но интересует теперь меня нечто другое. Если написать программу под ОС, которая например ловила пременную из пхп - например $test, сама отсылала даные на ком-порт, а потом отсылала в виде другой пременной результат выполнения в пхп или другую веб-страницу. Возможно ли такое ?
P.S. Решил сделать так, как на пхп все просто можно нарисовать, сделать и т.д. | |
|
|
|
|
|
|
|
для: IgorT
(21.07.2007 в 18:14)
| | Да! Даже и не знаю что ответить :))
Если не секрет, какую такую "интересную" для Windows переменную вы хотите передать с сервера, чтобы ее еще и отослать на СОМ-порт...?
Ну во первых даже если вы и осуществите свою мечту на стороне клиента, то никакой РНР-переменной вы не получите на клиентской машине. РНР - это серверный язык! Отослать такую переменную на клиентскую машину вы сможете в виде текста, значения некого элемента формы, в виде JS...
Далее изучите WinAPI, ознакомтесь с ProcessMessage - поймете как взаимодействует ОС и приложения. Забросте на время РНР, садитесь изучать С++ или Delphi, например, а изучив, напишите свой плагин к браузеру или "системный перехватчик", или...
В общем - не морочте себе голову. Ваша HTML-страница взаимодействует не с ОС (все что требуется от нее, получает браузер), а с пользователем. Вот из этого и исходите. А то что касатся системы - это запретный плод! | |
|
|
|