Estou procurando uma solução simples para chamar uma função PHP somente quando uma tag é clicada.
PHP:
function removeday() { ... }
HTML:
<a href="" onclick="removeday()" class="deletebtn">Delete</a>
ATUALIZAÇÃO: o código html e PHP estão no mesmo arquivo PHP
javascript
php
ajax
onclick
Mike
fonte
fonte
<a role="button" href="?action=removeday" class="debatebtn">Delete</a>
onde a ação é capturada e executar a função removeday () semelhante aif($action == 'removeday'){ removeday(); }
. Sei que está tarde, mas acho que isso ainda pode ajudar alguém com esse problema. C§Respostas:
Primeiro, entenda que você tem três idiomas trabalhando juntos:
PHP: Ele só roda pelo servidor e responde a solicitações como clicar em um link (GET) ou enviar um formulário (POST).
HTML e JavaScript: só funciona no navegador de alguém (exceto NodeJS).
Estou presumindo que seu arquivo se parece com algo assim:
Como o PHP só responde a solicitações (GET, POST, PUT, PATCH e DELETE via $ _REQUEST), é assim que você deve executar uma função PHP, embora eles estejam no mesmo arquivo. Isso lhe dá um nível de segurança, "Devo executar este script para este usuário ou não?".
Se você não deseja atualizar a página, pode fazer uma solicitação ao PHP sem atualizar por meio de um método chamado Asynchronous JavaScript and XML (AJAX).
Isso é algo que você pode pesquisar no YouTube. Basta pesquisar "jquery ajax"
Eu recomendo o Laravel para qualquer pessoa que comece bem: http://laravel.com/
fonte
If you don't want to refresh the page, you can make a request to PHP without refreshing via a method called Asynchronous JavaScript and XML (AJAX).
Bem, ele incluiuonclick
na pergunta, então está bem claro que o objetivo é realizar uma ação sem atualizar. ¬_¬Em javascript, faça uma função ajax,
Em seguida, ligue de html,
E em seu ajax.php,
fonte
type
deve ser usado no jQuery anterior a 1.9.0, enquantomethod
é um alias e deve ser usado em versões mais recentes.Você terá que fazer isso via AJAX . Eu recomendo PESADAMENTE que você use jQuery para tornar isso mais fácil para você ....
http://api.jquery.com/jQuery.ajax/
fonte
Pode ser feito e com um php bastante simples se este for o seu botão
e este é o seu código php
o código get é chamado quando enviar get é postado, o que acontece quando o botão é clicado.
fonte
Tente fazer algo assim:
fonte
Solução sem recarregar a página
fonte
Esta é a maneira mais fácil possível. Se o formulário for postado por correio, execute a função php. Observe que se você deseja executar a função de forma assíncrona (sem a necessidade de recarregar a página), você precisará do AJAX.
fonte
Note that if you want to perform function asynchronously (without the need to reload the page), then you'll need AJAX.
Bem,onclick
isso indicaria que é exatamente o que ele quer. ¬_¬Aqui está uma alternativa com AJAX, mas sem jQuery, apenas JavaScript normal:
Adicione isso à primeira / página principal do php, de onde você deseja chamar a ação, mas altere-a de uma
a
tag potencial (hiperlink) para umbutton
elemento, de modo que não seja clicado por bots ou aplicativos maliciosos (ou qualquer outro).Quando o
button
é clicado,onclick
usa a função javascript do head para enviar$sendingValue
via ajax para outra página php, como muitos exemplos anteriores a este. A outra páginaajax-php-page.php
,, verifica o valor GET e retorna comprint_r
:A resposta de
print_r
é então retornada e exibida comO
+=
preenche e adiciona aos elementos html existentes, removendo as+
atualizações justas e substituindo o conteúdo existente dop
elemento html"results"
.fonte
Tente isso vai funcionar bem.
fonte