2011-12-07 10 views
9

प्राप्त करता है तो मैं php का उपयोग कर रहा हूं। मैं जानना चाहता हूं कि रेडियो बटन का चयन करने और मूल्य प्राप्त करने के लिए मैं कैसे परीक्षण कर सकता हूं? मैं परीक्षण कर सकता हूं कि रेडियो बटन चुना गया है लेकिन मुझे मूल्य नहीं मिल रहा है। मैंने अपने फॉर्म में इसका परीक्षण करने के लिए एक बटन बनाया है। सबसे पहले मैं एक रेडियो बटन का चयन करता हूं, फिर मैं बटन पर क्लिक करता हूं और इसे एक संदेश प्रदर्शित करना होगा जो कहता है कि मैंने कौन सा मूल्य चुना है और यह मान एक चर में डाल दिया है। आदेश का परीक्षण करने में एक रेडियो बटन का चयन किया जाता मैं इस तरह किया है, तो:PHP - यदि कोई रेडियो बटन चुना जाता है और मूल्य

$selected_radio=$_POST['SINGLE_' . $question->id . $multi_name_adjust . '']; 
if ($selected_radio = 'checked'){} 

धन्यवाद

+2

केवल चयनित रेडियो बटन (और चेकबॉक्स) सर्वर पर भेजे जाते हैं। यदि यह नहीं चुना गया है, तो नाम '$ _POST' सरणी में नहीं होगा। –

+0

आप इसे php पर भेजने से पहले फ़ॉर्म को सत्यापित करने के लिए जावास्क्रिप्ट का उपयोग कर सकते हैं, या सभी रेडियो बटनों के मूल्य के साथ छिपे हुए इनपुट बना सकते हैं, फिर चयनित एक की तुलना करें और खारिज कर दें ... –

+0

आपका कथन हमेशा 'चेक' के बराबर है क्योंकि कारण है एकल = 0 स्थिति में –

उत्तर

33

यह बहुत सरल, नीचे दिए गए कोड को देखो:

प्रपत्र:

<form action="result.php" method="post"> 
    Answer 1 <input type="radio" name="ans" value="ans1" /><br /> 
    Answer 2 <input type="radio" name="ans" value="ans2" /><br /> 
    Answer 3 <input type="radio" name="ans" value="ans3" /><br /> 
    Answer 4 <input type="radio" name="ans" value="ans4" /><br /> 
    <input type="submit" value="submit" /> 
</form> 

PHP कोड:

<?php 

$answer = $_POST['ans']; 
if ($answer == "ans1") {   
    echo 'Correct';  
} 
else { 
    echo 'Incorrect'; 
}   
?> 
+0

आपकी मदद के लिए धन्यवाद। क्या कोड में दर्ज करने के बजाय गतिशीलता को मूल्य प्राप्त करना संभव है? मुझे यह पसंद है कि जब उपयोगकर्ता एक रेडियो बटन का चयन करता है, तो मैं उस रेडियो बटन से संबंधित मान प्राप्त कर सकता हूं, लेकिन गतिशील रूप से। धन्यवाद फिर से :) – user1073001

+0

कृपया कुछ कोड/अधिक जानकारी जोड़ें जो आपका मतलब है। समझ में नहीं आता कि आप क्या पहुंचना चाहते हैं, ऊपर दिए गए कोड के साथ वह मान मिलता है जो विकिरण वाले रेडियोधर्टर से मेल खाता है (लेकिन ऐसा लगता है कि आपको कुछ और चाहिए?) –

+0

उदाहरण के लिए, आपने किया (अगर $ answer == ans1) ।ans1 मान है, लेकिन आपको इसे कोड में रखना होगा। मैं डायनेमिक वैल्यू द्वारा ans1 को प्रतिस्थापित करना चाहता हूं। क्योंकि उपयोगकर्ता एक इंटरफेस के माध्यम से फॉर्म बना सकते हैं, इसलिए वे प्रत्येक रेडियो बटन के लिए अपने मान चुनते हैं। यदि वे ans1 के बजाय ans90 पर रेडियो बटन का मान बदलते हैं, तो मुझे इसे ध्यान में रखने के लिए कोड को संशोधित करना होगा: (अगर उत्तर == ans90)। मैं यही चाहता था। क्या यह संभव है? धन्यवाद – user1073001

1
<?php 
if (isset($_POST['submit']) and ! empty($_POST['submit'])) { 
    if (isset($_POST['radio'])) { 
     $radio_input = $_POST['radio']; 
     echo $radio_input; 
    } 
} else { 

} 
?> 
<form action="radio.php" method="post"> 
    <input type="radio" name="radio" value="v1"/> 
    <input type="radio" name="radio" value="v2"/> 
    <input type="radio" name="radio" value="v3"/> 
    <input type="radio" name="radio" value="v4"/> 
    <input type="radio" name="radio" value="v5"/> 
    <input type= "submit" name="submit"value="submit"/> 
</form> 
+0

क्या आप और स्पष्टीकरण जोड़ सकते हैं? – jml

+0

ठीक पहले आपको ध्यान रखना होगा कि इनपुट टैग में नाम विशेषता उपयोगकर्ता के इनपुट प्राप्त करने के लिए PHP और अन्य सर्वर साइड भाषा का उपयोग करती है। तो मैं सबमिट बटन को एक नाम विशेषता और मूल्य देने के लिए उपयोग करता हूं। ऐसा करके, मुझे पता है कि सबमिट बटन कब क्लिक किया जाता है। मैंने कहा कि मैं कोड समझाता हूं। अगर (जारीकर्ता ($ _ POST ['submit']) जांचता है कि क्या किसी भी इनपुट में इस मामले में जमा करने का मूल्य है, तो सबमिट बटन है। इसलिए सबमिट बटन क्लिक नहीं होने पर PHP पक्ष निष्पादित नहीं किया जाएगा। नेस्टेड अगर (जारी ($ _ POST ['रेडियो'])) जांचता है कि किसी भी रेडियो बटन की जांच की जाती है। – Ezugudor

-1

मेरी प्रपत्र:

<form method="post" action="radio.php"> 
    select your gender: 
    <input type="radio" name="radioGender" value="female"> 
    <input type="radio" name="radioGender" value="male"> 
    <input type="submit" name="btnSubmit" value="submit"> 
</form> 

मेरी php:

<?php 
     if (isset($_POST["btnSubmit"])) { 
     if (isset($_POST["radioGender"])) { 
     $answer = $_POST['radioGender']; 
      if ($answer == "female") { 
       echo "female"; 
      } else { 
       echo "male"; 
      }  
     }else{ 
      echo "please select your gender"; 
      } 
     } 
    ?> 
+0

PHP में हम पहले जांच करते हैं कि सबमिट बटन सही पर सेट है या नहीं, तो हम जांचते हैं कि कोई भी रेडियो बटन सही पर सेट है या नहीं नहीं, अगर सच है तो कुछ करो .... –

0

मैं तुम्हें GET अनुरोध के माध्यम से कर सुझाव देते हैं: उदाहरण के लिए , index.html:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script> 
<form action="result.php" method="post"> 
    Answer 1 <input type="radio" name="ans" value="ans1" /><br /> 
    Answer 2 <input type="radio" name="ans" value="ans2" /><br /> 
    Answer 3 <input type="radio" name="ans" value="ans3" /><br /> 
    Answer 4 <input type="radio" name="ans" value="ans4" /><br /> 
    <input type="button" value="submit" onclick="sendPost()" /> 
</form> 
<script type="text/javascript"> 
    function sendPost(){ 
     var value = $('input[name="ans"]:checked').val(); 
     window.location.href = "sendpost.php?ans="+value; 
    }; 
</script> 

इस sendpost.php है:

<?php 
if(isset($_GET["ans"]) AND !empty($_GET["ans"])){ 
    echo $_GET["ans"]; 
} 
?> 
1

इस कोड

<form action="result.php" method="post"> 
Answer 1 <input type="radio" name="ans" value="ans1" /><br /> 
Answer 2 <input type="radio" name="ans" value="ans2" /><br /> 
Answer 3 <input type="radio" name="ans" value="ans3" /><br /> 
Answer 4 <input type="radio" name="ans" value="ans4" /><br /> 
<input type="submit" value="submit" /> 
</form> 

php

<?php 
if(isset($_POST['submit'])){ 
if(isset($_POST['ans'])){ 
echo "This is the value you are selected".$_POST['ans'];   
}   
} 
?> 
2

एक पर php में यह करने के लिए बहुत अधिक कुशल तरीका एक बार देख ले:

<form action="#" method="post"> 
<select name="Color"> 
<option value="Red">Red</option> 
<option value="Green">Green</option> 
<option value="Blue">Blue</option> 
<option value="Pink">Pink</option> 
<option value="Yellow">Yellow</option> 
</select> 
<input type="submit" name="submit" value="Get Selected Values" /> 
</form> 
<?php 
if(isset($_POST['submit'])){ 
$selected_val = $_POST['Color']; // Storing Selected Value In Variable 
echo "You have selected :" .$selected_val; // Displaying Selected Value 
} 
?> 

और चेक बॉक्स एकाधिक विकल्प के लिए:

<form action="#" method="post"> 
<select name="Color[]" multiple> // Initializing Name With An Array 
<option value="Red">Red</option> 
<option value="Green">Green</option> 
<option value="Blue">Blue</option> 
<option value="Pink">Pink</option> 
<option value="Yellow">Yellow</option> 
</select> 
<input type="submit" name="submit" value="Get Selected Values" /> 
</form> 
<?php 
if(isset($_POST['submit'])){ 
// As output of $_POST['Color'] is an array we have to use foreach Loop to display individual value 
foreach ($_POST['Color'] as $select) 
{ 
echo "You have selected :" .$select; // Displaying Selected Value 
} 
?> 
2

बस बस जारी करें ($ _ POST ['रेडियो']) का उपयोग करें ताकि जब भी मैं किसी भी रेडियो बटन पर क्लिक करता हूं, तो क्लिक किए जाने वाले को पोस्ट पर सेट किया जाता है।

<form method="post" action="sample.php"> 
select sex: 
<input type="radio" name="radio" value="male"> 
<input type="radio" name="radio" value="female"> 

<input type="submit" value="submit"> 
</form> 

<?php 

if (isset($_POST['radio'])){ 

    $Sex = $_POST['radio']; 
} 
    ?> 
संबंधित मुद्दे