Действительно ли возможно вызвать функцию PHP в теге привязки. Мне назвали функцию PHP logout();
Теперь я хочу что-то подобное этому.
<a href="logout();" >Logout</a>
Я знаю с JavaScript, это работает, но что лучший подход использует функцию PHP?
Нет; PHP - это язык сценариев на стороне сервера, поэтому он недоступен для HTML в таком виде. JavaScript может сделать это, так как он является языком сценариев на стороне клиента.
Поскольку PHP является языком на стороне сервера, сообщение (в форме HTTP запроса) должно быть отправлено на сервер из браузера (клиента) для выполнения любого PHP - включая вашу PHP функцию logout
.
У вас есть несколько вариантов...
Перейдите по гиперссылке на скрипт, который выполняет функцию logout()
...
HTML
<a href="theLogOutScript.php">Logout</a>
PHP
<?php
// ...
logout();
// ...
?>
Отправьте форму скрипту, который выполняет функцию logout()
...
HTML
<form method="POST" action="theLogOutScript.php">
<input type="submit" value="Logout" />
</form>
Используйте XMLHttpRequest
/AJAX запрос для связи с сервером. (пример кода не предоставлен)
Нет, чтобы вызвать PHP, вам придется сделать запрос обратно на сервер. Вам нужно либо дать ссылку на другую страницу PHP:
<a href="/logout" >Logout</a>
Или вам нужно сделать JavaScript AJAX вызов на страницу PHP ("веб-сервис"), которая выполнит выход из системы.
<a href ='logout.php'>Logout</a>
logout.php
<?php
session_start();
...... your code....
?>