我一直试图将表单中包含的一些信息发布给自己。但我不明白为什么它不起作用。当我从HTML页面发布数据时它起作用,但是当我将信息发布到自身时它不起作用。
下面是代码:
$country = isset($_POST['country']) ? $_POST['country'] : 'Belize';
$number_of_guests = isset($_POST['number_of_guests']) ? $_POST['number_of_guests'] : 2;
$from = isset($_POST['price_range_from']) ? $_POST['price_range_from'] : 200;
$to = isset($_POST['price_range_to']) ? $_POST['price_range_to'] : 2000;
当我从HTML表单发布信息时,它工作正常,但在提交给自己时,所有变量都包含“on”的值。我不知道我错过了什么或没有正确实施。
这是HTML表单代码:
<form action="find_results.php" method = "post">
<strong>Select the Country</strong><br />
<input id = 'c1' type= "radio" name= "country" checked/> Mexico <br />
<input id = 'c2' type= "radio" name= "country" /> Belize <br />
<input id = 'c3' type = "radio" name= "country" />Jamaica <br />
<input id = 'c4' type = "radio" name= "country" />Thailand <br />
<input id = 'c5' type = "radio" name= "country" />Turks & Caicos
<hr />
<strong>Number of Guests</strong><br />
<input id = 'n1' type= "radio" name= "number_of_guests" /> 2
<input id = 'n2' type= "radio" name= "number_of_guests" /> 4
<input id = 'n3' type= "radio" name= "number_of_guests" /> 6
<input id = 'n4' type= "radio" name= "number_of_guests" /> 8
<input id = 'n5' type= "radio" name= "number_of_guests" /> 10+
<hr />
<strong>Price Range(From)</strong><br />
<input id = 'from1' type= "radio" name= "price_range_from" /> 200
<input id = 'from2' type= "radio" name= "price_range_from" /> 300
<input id = 'from3' type= "radio" name= "price_range_from" /> 400
<input id = 'from4' type= "radio" name= "price_range_from" /> 500
<input id = 'from5' type= "radio" name= "price_range_from" /> 600 or More
<hr />
<strong>Price Range(Upto)</strong><br />
<input id = 'to1' type= "radio" name= "price_range_to" /> 500
<input id = 'to2' type= "radio" name= "price_range_to" /> 600
<input id = 'to3' type= "radio" name= "price_range_to" /> 700
<input id = 'to4' type= "radio" name= "price_range_to" /> 800
<input id = 'to5' type= "radio" name= "price_range_to" /> 900 or More
<br />
<input type="submit" value="Submit" name='submit' />
</form>
答案 0 :(得分:6)
表单中没有设置值。指向另一个页面时,如何这项工作?
<input id = 'c1' type= "radio" name= "country" checked value='mexico' />
您需要在表单中设置value='something'
,以便传递正确的数据。你可能正在将它们作为&#39; on&#39;正在传递表单元素,但在value
中没有信息。
答案 1 :(得分:0)
同意Fluffeh。特定标记的“值”将转发到PHP代码。如果没有这些值,就无法获得理想的结果。
<input id = 'c1' type= "radio" value="Mexico" name= "country" checked="checked" /> Mexico <br />
<input id = 'c2' type= "radio" value="Belize" name= "country" /> Belize <br />
在PHP中,将为国家/地区设置这些值。