Saltar al contenido

Ejecute la función PHP con onclick

Solución:

Primero, comprenda que tiene tres idiomas trabajando juntos:

  • PHP: solo lo ejecuta el servidor y responde a solicitudes como hacer clic en un enlace (GET) o enviar un formulario (POST).

  • HTML y JavaScript: solo se ejecuta en el navegador de alguien (excluyendo NodeJS).

Supongo que su archivo se parece a:

<!DOCTYPE HTML>
<html>
<?php
  function runMyFunction() {
    echo 'I just ran a php function';
  }

  if (isset($_GET['hello'])) {
    runMyFunction();
  }
?>

Hello there!
<a href="https://foroayuda.es/index.php?hello=true">Run PHP Function</a>
</html>

Debido a que PHP solo responde a las solicitudes (GET, POST, PUT, PATCH y DELETE a través de $ _REQUEST), así es como debe ejecutar una función PHP aunque estén en el mismo archivo. Esto le brinda un nivel de seguridad, “¿Debo ejecutar este script para este usuario o no?”.

Si no desea actualizar la página, puede realizar una solicitud a PHP sin actualizar mediante un método llamado Asynchronous JavaScript and XML (AJAX).

Sin embargo, eso es algo que puedes buscar en YouTube. Solo busca “jquery ajax”

Recomiendo Laravel a cualquier persona nueva para comenzar bien: http://laravel.com/

En javascript, crea una función ajax,

function myAjax() {
      $.ajax({
           type: "POST",
           url: 'your_url/ajax.php',
           data:{action:'call_this'},
           success:function(html) {
             alert(html);
           }

      });
 }

Luego llama desde html,

<a href="" onclick="myAjax()" class="deletebtn">Delete</a>

Y en tu ajax.php,

if($_POST['action'] == 'call_this') {
  // call removeday() here
}

Tendrás que hacer esto a través de AJAX. Te recomiendo ENCARECIDAMENTE que utilices jQuery para que esto sea más fácil para ti …

$("#idOfElement").on('click', function(){

    $.ajax({
       url: 'pathToPhpFile.php',
       dataType: 'json',
       success: function(data){
            //data returned from php
       }
    });
)};

http://api.jquery.com/jQuery.ajax/

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *