我有一些奇怪的事情,我无法弄明白。我有一个普通的HTML表单,在这个表单中我有几个东西
<textarea id="na_command" name="na_command" rows="3" cols="50" ></textarea>
<select name="select" name="na_is_connecting" id="na_is_connecting">
<option value="no" selected>No</option>
<option value="yes">Yes</option>
</select>
我对这些事情的模型很简单,
/**
* @var string
*
* @ORM\Column(name="search_command", type="string", length=256, nullable=false)
*/
private $searchCommand;
/**
* @var string
*
* @ORM\Column(name="is_connecting", type="string", length=20, nullable=false)
*/
private $isConnecting;
/**
* Set searchCommand
*
* @param string $searchCommand
* @return AvailabilityAlert
*/
public function setSearchCommand($searchCommand)
{
$this->searchCommand = $searchCommand;
return $this;
}
/**
* Set isConnecting
*
* @param string $isConnecting
* @return AvailabilityAlert
*/
public function setIsConnecting($isConnecting)
{
$this->isConnecting = $isConnecting;
return $this;
}
基本上,它们都是字符串 - 两者都是相同的。
但是,在我的控制器中,如果我这样做
$alert = new AvailabilityAlert();
$alert->setSearchCommand($request->get('na_command'));
$alert->setIsConnecting($request->get('na_is_connecting'));
我坚持将$ alert警告到我的数据库,我收到了错误
执行&#39; INSERT INTO availability_alert(search_command,is_connecting)VALUES(?,?)&#39;时发生异常。用params [&#34; Testing&#34;,null]:
所以它选择na_command但它似乎没有从我的select na_is_connecting中获取值。
我的代码中有什么导致这种情况发生吗?如果我硬编码这个选择的值,它工作正常。我知道使用表单构建器可以设置一个默认值,在没有表单构建器的情况下我需要做些什么来设置它?
由于
答案 0 :(得分:1)
我认为您在HTML中犯了错误:
<select name="select" name="na_is_connecting"
你把这个名字&#39;属性两次。