Запустить PHP-класс из JavaScript
Мне нужно запустить класс php из функции javascript.
код:
<input type="button" name="Submit" value="Submit" class="opinionbox"
onclick="verifyControl('<?=$control_no?>')"/>
function verifyControl(rNo) {
Cont_no=document.getElementById("ContNo").value;
if(rNo==Cont_no) {
frames['frame1'].print();
showPage('payment');
}
else if(rNo!=Cont_no) {
alert("invalid control no");
}
}
мне нужно запустить код
$data = $obj_com -> getSelectedData('tbl',
'control_no', $contno);
$control_no = $contno;
$obj_com -> recordPay('tbl',$contno);
внутри verifyControl()
как я могу это сделать?
Ответов (3)3
Вы не можете «вызвать» PHP-класс из Javascript, потому что Javascript выполняется на стороне клиента (т. Е. В браузере), в то время как PHP выполняется на сервере. Однако вы можете асинхронно вызывать PHP-скрипт, получать его выходные данные и делать забавные вещи с помощью javascript. Это известно как AJAX. Если вы собираетесь пойти по этому пути, вам настоятельно рекомендуется использовать библиотеку, такую как jQuery, и учиться на ней. Вот несколько вопросов, с которых вы можете начать (посмотрите ответы):
Чтобы вызвать PHP-код из Javascript, учитывая, что PHP выполняется на сервере, а Javascript выполняется на клиенте, вам необходимо настроить какой-то интерфейс на сервере, к которому можно получить удаленный доступ.
Вы также можете знать о последствиях этого для безопасности. В частности, если вы хотите убедиться, что только ваши пользователи будут вызывать ваш сервер таким образом - то есть, если злонамеренный пользователь, вызывающий этот код, может нанести ущерб, вам потребуется какая-то аутентификация.
Вам также нужно будет выбрать протокол для связи между клиентом и сервером.
Такие протоколы, как SOAP и XML-RPC, определяют все необходимое для удаленного вызова процедур на сервере. Или вы можете свернуть свой собственный, просто позвонив по определенному URL-адресу и получив определенный результат в определенном формате (может помочь JSON) с сервера.
вы можете использовать Brent Ashley jsrsClient.js или $ .ajax из jQuery Javascript lib.