2015-09-28 5 views
4

Я хочу запустить функцию php при нажатии кнопки. для например:Запустить функцию php при нажатии кнопки

<input type="button" name="test" id="test" value="RUN" onclick="<?php echo testfun(); ?>" /><br/> 

<?php 

function testfun() 
{ 
    echo "Your test function on button click is working"; 
} 

?> 

Мой вопрос заключается в том, что когда я делаю это я не получаю ожидаемый результат, который я искал. Пожалуйста, дайте мне лучшее решение для запуска php-функции при нажатии кнопки, будь то простой button или submit.

+3

вы не можете сделать это, PHP это язык сценариев. Если вы хотите щелкнуть события, попробуйте Javascript –

ответ

4

Я пробовал код Уильяма, спасибо брату.

но он не работает как простая кнопка. Мне нужно добавить форму с методом = "post". Также я должен написать submit вместо кнопки.

вот мой код ниже ..

<form method="post"> 
    <input type="submit" name="test" id="test" value="RUN" /><br/> 
</form> 

<?php 

function testfun() 
{ 
    echo "Your test function on button click is working"; 
} 

if(array_key_exists('test',$_POST)){ 
    testfun(); 
} 

?> 
+0

этот в работе –

2

ли это:

<input type="button" name="test" id="test" value="RUN" /><br/> 

<?php 

function testfun() 
{ 
    echo "Your test function on button click is working"; 
} 
if(array_key_exists('test',$_POST)){ 
    testfun(); 
} 
?> 
+0

будет ли он работать, не обернутый тегом 'form', который имеет атрибут' method = "POST"? – marmeladze

1

Вы пытаетесь вызвать функцию яваскрипта. Если вы хотите, чтобы вызвать функцию PHP, вы должны использовать, например, вид:

<form action="action_page.php"> 
     First name:<br> 
     <input type="text" name="firstname" value="Mickey"> 
     <br> 
     Last name:<br> 
     <input type="text" name="lastname" value="Mouse"> 
     <br><br> 
     <input type="submit" value="Submit"> 
    </form> 

(оригинальный код из: http://www.w3schools.com/html/html_forms.asp)

Так что, если вы хотите сделать сделать Asynchron вызов, вы можете использовать ' Ajax '- и да, это Javascript-Way. Но я думаю, что моего кода достаточно на этот раз :)

1
<a href="home.php?click=1" class="btn">Click me</a> 
<?php 
    if($_GET['click']){ 
    doSomething(); 
    } 
?> 

Но лучше использовать JS и с AJAX для вызова функции!

-1

Нет Проблема Вы можете использовать функцию onClick() легко, без использования каких-либо других помех языка,

<?php 
echo '<br><Button onclick="document.getElementById(';?>'modal-wrapper2'<?php echo ').style.display=';?>'block'<?php echo '" name="comment" style="width:100px; color: white;background-color: black;border-radius: 10px; padding: 4px;">Show</button>'; 
?> 
+0

Здравствуйте, кнопка показывает ... но я не получаю приложение, поэтому решение вопроса. Спасибо, если вы его добавите. – Robert