2016-08-03 13 views
-1

voneinander in PHP unterscheiden I, in der 2 Eingänge wie unten ein Formular habe:

<input class="view" type="submit" name="viewonly" value="View"> 
<input class="submit" type="submit" name="vote" value="Vote"> 

Ich möchte, dies erreichen:

if(hit on input with name 'viewonly') { 
echo 'you choose viewonly'; 
} 
elseif(hit on input with name 'vote') { 
echo 'you choose vote'; 
} 

Wie kann ich mach das?

Update: Meine Form:

<form method="post" id="quickpoll"> 
......... 
<input class="view" type="submit" name="quickpollsubmit" value="View"> 
<input class="quickpollsubmit" type="submit" name="quickpollsubmit" value="Vote"> 
    </form> 

Der Ajax-Aufruf:

$(document).on('submit', '#quickpoll', function() 
{ 
var data = $(this).serialize(); 
$.ajax({ 

    type : 'POST', 
    url : 'quickpoll_vote.php', 
    data : data, 
    success : function(data) 
       {       
        $("#quickpoll").fadeOut(500).hide(function() 
        { 
         $(".quickpollwrapper").fadeIn(500).show(function() 
         { 
          $(".quickpollwrapper").html(data); 

         }); 


        }); 

       } 
    }); 
    return false; 
}); 

quickpoll_vote.php

if($_POST) 
{ 

    if($_POST['quickpollsubmit'] == 'Vote') { 
    echo 'you did vote and not view only'; 
    } 

Das Echo nicht erscheint, so Das Problem ist, denke ich, im AJAX-Call?

+1

, wenn beide Tasten den gleichen Namen haben, dann '$ _POST [‚btnName‘]' wird der Wert je nachdem, welche geklickt wurde. Ich glaube auch, dass nur der Knopf, der angeklickt wurde, in den '$ _POST' Daten wäre, wenn sie unterschiedliche Namen hätten. Eine Weile, seit ich damit fertig bin. –

+0

verwenden 'isset()' auf eine bedingte –

+1

Kuhn hat Recht. Geben Sie ihnen den gleichen Namen und prüfen Sie auf unterschiedliche Werte. – developerwjk

Antwort

2

Vielleicht können Sie wenig Sie Code wie folgt ändern:

<input class="view myclass" type="button" name="viewonly" value="View"> 
<input class="submit myclass" type="button" name="vote" value="Vote"> 
<script language="javascript"> 
    $('.myclass').click(function() { 
     clickbuttonname = $(this).attr('name'); 
     var data = $(this).serialize()+'&clickbuttonname='+clickbuttonname; 
     ..... 
    }) 
</script>