如何从下拉列表中获取文本值

时间:2014-01-07 20:56:48

标签: php

我有一个db填充的下拉列表。 我需要将文本值和id添加到另一个表。我用它来获取值和id。

$catid = intval($_POST['cat']); // This line is meant to assign the id to $catid
$cat = $_POST['cat']; // This line is meant to assign the text value to $cat

但两行都将id分配给变量! 我确定这是一个简单的修复,但我无法弄明白!

有人可以帮忙吗?

2 个答案:

答案 0 :(得分:4)

intval接受一个字符串并将其转换为整数。只有当字符串包含至少一个整数时才会真正起作用。因此,如果您的变量为$foo = '5';,那么intval()会将string 5转换为integer 5。它没有做任何其他事情。因此,如果您提交的类别是id的字符串版本,则是,两个变量都将是id。一个作为字符串,一个作为int。

您无法同时提交HTML选项的值及其内部文本。只有价值属性。如果没有值,则使用内部html / text。

<option value="1">MyCat</option> - 通过POST发送的唯一内容是1。

答案 1 :(得分:-1)

$cat = strval($_POST['cat']);

使用strval()将int转换为字符串。