2017-03-22 40 views
1

我有一个有3个选择的表单,我希望表单用提交时输入的名称替换选定的文本。所以如果用户输入他们的名字作为Josh,并选择'国王',我希望表单更新自己,而不是有国王它会说Josh不再是一个选择,然后有另外两个字符在下面给某人别的从中挑选。这是一个PHP文档,但数据当然是HMTL格式。我该如何自行更新表格?

我正在阅读有关隐藏表格的内容,但不知道如何在这里实现它们。有没有人有什么建议?

<form method="get" action=""> 
 
    Your Name: <input type="text" name="name" /> 
 
    <br/> 
 
    <input type="radio" name="character" value="King"> King<br> 
 
    <input type="radio" name="character" value="Queen"> Queen<br> 
 
    <input type="radio" name="character" value="Prince"> Prince <br> 
 

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

+0

你有没有考虑使用JavaScript来实现这一目标? –

+0

没有它只是一个练习,我试图找出一个PHP/HTML书。如果有使用PHP的方法,那会很有帮助! – Brit24

+0

真的不明白你想做什么。给出你需要的样例输出 – JYoThI

回答

2

您是否想要做这样的事情?

您可以通过使用php条件和隐藏字段来实现。

保存与文件名的文件“form.php的”,然后运行它,并告诉我,如果它做的伎俩;)

<form method="post" action="form.php"> 
    Your Name: <input type="text" name="name" /> 
    <br/> 
    <?php if((isset ($_POST['name-1']) || isset($_POST['name'])) && (isset ($_POST['character-1']) && $_POST['character-1']=='King')) 
    { 
     $name=isset($_POST['name-1'])?$_POST['name-1']:$_POST['name']; 
     echo $name.'<br><input type="hidden" name="name-1" value="'.$name.'"/><input type="hidden" name="character-1" value="'. $_POST['character-1'].'"/>'; 
    } 
    else {?> 
     <input type="radio" name="character-1" value="King"> King<br> 
    <?php } ?> 

    <?php if((isset ($_POST['name-2']) || isset($_POST['name'])) && (isset ($_POST['character-2']) && $_POST['character-2']=='Queen')) 
    { 
     $name=isset($_POST['name-2'])?$_POST['name-2']:$_POST['name']; 
     echo $name.'<br><input type="hidden" name="name-2" value="'.$name.'"/><input type="hidden" name="character-2" value="'. $_POST['character-2'].'"/>'; 
    } 
    else {?> 
     <input type="radio" name="character-2" value="Queen"> Queen<br> 
    <?php } ?> 
    <?php if((isset ($_POST['name-3']) || isset($_POST['name'])) && (isset ($_POST['character-3']) && $_POST['character-3']=='Prince')) 
    { 
     $name=isset($_POST['name-3'])?$_POST['name-3']:$_POST['name']; 
     echo $name.'<br><input type="hidden" name="name-3" value="'.$name.'"/><input type="hidden" name="character-3" value="'. $_POST['character-3'].'"/>'; 
    } 
    else {?> 
     <input type="radio" name="character-3" value="Prince"> Prince <br> 
    <?php } ?> 

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