Como faço para executar o código PHP quando um usuário clica em um link?

Eu quero que uma página execute algum código PHP quando um usuário clica em um link, sem redirecioná-los. Isso é possível com

 

ou com o evento onclick javascript?

Sim, você precisaria ter uma function javascript desencadeada por um onclick que faz uma carga AJAX de uma página e, em seguida, retorna falso, dessa forma não serão redirecionados no navegador. Você pode usar o seguinte no jQuery, se isso for aceitável para o seu projeto:

   Click Me! 

Você também pode fazer um post-back se precisar usar os valores do formulário (use o método $ .post ().

Como outros sugeriram, use JavaScript para fazer uma chamada AJAX.

 whatever  

http://docs.jquery.com/Ajax/jQuery.ajax

Você não pode executar o PHP quando um usuário clica em um link sem sair da página, a menos que você use AJAX. O PHP é uma linguagem de script do serveride, o que significa que o segundo que o navegador vê a página, não há PHP nela.

Ao contrário de Javascript, o PHP é executado completamente no servidor, e o navegador não saberia como interpretá-lo se os mordesse na parte traseira. A única maneira de invocar o código PHP é fazer uma solicitação de página, atualizando a página ou usando javascript para buscar uma página.

Em uma Solução AJAX, basicamente a página usa javascript para enviar uma solicitação de página para outra página no seu domínio. Javascript então obtém o que quer que você decida echo na resposta, e pode analisá-lo e fazer o que deseja a partir daí. Quando você está criando a resposta, você também pode fazer qualquer coisa de backend como atualizar bancos de dados.

Eu sei que esta publicação é antiga, mas eu só queria adicionar minha resposta!

Você disse para registrar um usuário sem dirigir … esse método redireciona, mas ele retorna o usuário para a página em que estavam. Aqui está a minha implementação:

 // every page with logout button < ?php // get the full url of current page $page = $_SERVER['PHP_SELF']; // find position of the last '/' $file_name_begin_pos = strripos($page, "/"); // get substring from position to end $file_name = substr($page, ++$fileNamePos); } ?> // the logout link in your html Log Out // logout.php page < ?php session_start(); $_SESSION = array(); session_destroy(); $page = "index.php"; if(isset($_GET["redirect_to"])){ $file = $_GET["redirect_to"]; if ($file == "user.php"){ // if redirect to is a restricted page, redirect to index $file = "index.php"; } } header("Location: $file"); ?> 

e lá vamos nós!

O código que recebe o nome do arquivo da URL completa não é prova de erros. por exemplo, se as strings de consulta estiverem envolvidas com o ‘/’ não-escapado, ele falhará.

No entanto, existem muitos scripts por aí para obter o nome do arquivo da url!

Codificação feliz!

Alex

Bem, você disse sem redirect. Bem, é um código javascript:

 Whatever!  

Experimente 🙂 se você gosta

Se você ainda não instalou o jquery (porque você é apenas um novato ou algo assim), use esse código:

 link  

Existe a única maneira melhor é AJAX como todos sugerem em suas postagens. A alternativa é usar IFrames como abaixo:

  Click  

Agora você obterá o resultado no IFrame (você pode colocar o IFrame onde quer que você precise na página ou evento, esconda-o e o resultado do script).

Espero por uma solução não Ajax, isso é melhor.

envie o usuário para outra página que o faça

 Execute PHP 

ou faça com ajax

  ... Execute PHP 

Isso também deve funcionar

 Submit  

Obrigado,

cowtipper