У меня есть следующий код, но почему функция выполняется без нажатия ссылки или выполнения оператора if.Вызвать php-функцию по ссылке
if($_SESSION['log'] == true)
{
echo "<a href="'. function() .'"">LINK</a>;
}
else
{
.......
}
У меня есть следующий код, но почему функция выполняется без нажатия ссылки или выполнения оператора if.Вызвать php-функцию по ссылке
if($_SESSION['log'] == true)
{
echo "<a href="'. function() .'"">LINK</a>;
}
else
{
.......
}
Вы не можете назвать это так.
Что вы можете сделать, это установить связь href
на той же странице и передать некоторые get params
к этому link
и когда это get params isset
то call
что function
.
Пример
<a href="same.php?action=callfunction">Click</a>
и код для вызова функции, как показано ниже.
if(isset($_GET['action']) && $_GET['action'] == 'callfunction'){
//call function here
}
почему функция выполняться без нажатия на ссылку
PHP сделок в тексте (обычно). Это браузер, который имеет дело с HTML. Вы имеете дело со строкой, состоящей из строкового литерала, связанного с возвращаемым значением вызова функции, связанного с другим строковым литералом (или вы бы хотели, чтобы ваши кавычки не были сломаны и вызывают синтаксическую ошибку).
Если вы хотите, чтобы функция срабатывала только при нажатии ссылки, установите для атрибута href
URL-адрес скрипта, который содержит function()
.
или соответствует утверждению if.
Этого не произойдет. Функция появляется внутри тела оператора if
, поэтому он не срабатывает, если только if
не является истинным.
Это утверждение будет подпрыгивать над его головой. «Вы имеете дело со строкой, состоящей из строкового литерала, объединенного с возвращаемым значением вызова функции, связанного с другим строковым литералом' –
PHP - это серверный язык. Вы не можете вызвать вызов функции в PHP из ссылки, щелкнутой в браузере.
Вы должны были бы построить URL со всеми необходимыми параметрами в строке запроса и передать обратно в PHP скрипт для того, чтобы PHP, чтобы сделать что-то с информацией
вы можете использовать JQuery подход
как $ .ajax ({ URL: "script.php", типа: "POST", данных: "ID = 1", успеха : функция (результат) { оповещение (результат); }}
в PHP
$id = $_POST['id'];
echo "The id is ".id;
Вы получите выход функции php в результате состояния успеха $ .ajax.
с комментариями, пожалуйста, не давайте downvote.How он может исправить свою ошибку, не сказав ничего – PSR
ваши котировки перепутаны –
@Al. Вы беспокоитесь о котировках? –