1

How can i call a PHP function from onchange on an HTML form textbox? I have tried

<input onchange="phpfunction()" ..... >

<?php
    function phpfunction() {
        my function
    }
?>

Any Help? I Can't seem to figure it out.

Thank You

1
  • No you can't, you must use javascript and call a php script with ajax. Commented Oct 1, 2014 at 18:46

4 Answers 4

7

You have to do an ajax call and post that your PHP.

Example:

HTML:

<input name="blah" onchange="mainInfo(this.value);">

Javascript Function (AjaX)

function mainInfo(id) {
    $.ajax({
        type: "GET",
        url: "dummy.php",
        data: "mainid =" + id,
        success: function(result) {
            $("#somewhere").html(result);
        }
    });
};

PHP

<?php
    if(isset($_GET['mainid'])){
        mainInfo($_GET['mainid']);
    }
?>
Sign up to request clarification or add additional context in comments.

Comments

4

You can't execute PHP in the browser.

Do an AJAX call or POST to a PHP function on the web server, or write a Javascript function that executes in the browser.

Comments

0

you need to do it with JavaScript and send request to server. As HTML runs on client and php on sever.

Comments

0

You need to use jQuery for this, cant use PHP on client.

<input onchange="callphpfunction()" ..... >
<script>
callphpfunction()   {
    $.post("file.php",function(data) {
        alert(data);
    });
}
</script>

file.php

<?php
function phpfunction() {
    echo $data;
}
phpfunction();

Comments

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.