有没有办法从树枝上替换GET参数值?
例如,我在这个地址有一个页面:
http://localhost/app_dev.php/test/?param1=40&sort=name
Run Code Online (Sandbox Code Playgroud)
在我的树枝上,我想建立3个像这样的链接:
http://localhost/app_dev.php/test/?param1=40&sort=name
http://localhost/app_dev.php/test/?param1=40&sort=address
http://localhost/app_dev.php/test/?param1=40&sort=code
Run Code Online (Sandbox Code Playgroud)
现在我在URL的末尾再次添加了"&sort"参数,但这个解决方案实际上是一个"补丁"而且很糟糕!
<a href="{{app.request.requesturi}}&sort=address">address</a>
Run Code Online (Sandbox Code Playgroud)
在这个例子中我只有2个参数,但实际上我有大约6个参数,因为通过提交a获得了生成它的链接.
我需要更新数据库,并execute()通过将数组作为参数使用PDO的方法。
这个想法是当我尝试插入一个NULL值时给我一个错误...
这是发送查询/参数的示例:
生成的查询:
UPDATE table SET name=?, id_extra1=?, id_extra2=? WHERE id_something=?
Run Code Online (Sandbox Code Playgroud)
参数数组:
array (size=8)
'name' => string 'testing' (length=6)
'id_extra1' => string '2' (length=1)
'id_extra2' => null
'id_something' => string '1958' (length=4)
Run Code Online (Sandbox Code Playgroud)
所以NULL值是id_extra2
在代码中,id_extra2我遇到了这样的情况(想法是我有一个ID,或者为0,然后必须使用来更新DB值NULL):
if ($_POST['id_extra2']==0) {
$_POST['id_extra2'] = null;
}
Run Code Online (Sandbox Code Playgroud)
我试着设置$_POST['id_extra2']到''和NULL和'null',但它仍然没有工作...
任何想法表示赞赏!谢谢!
我需要检查MySQL以查看两个日期间隔是否相交.为了更好地解释我的问题:我有一个事件管理模块.如果我们有一个像这样添加的事件:
开始日期 :
'2013-09-09 08:00:00'结束日期 :
'2013-09-09 10:00:00'
现在我想添加另一个像这样的事件:
开始日期 :
'2013-09-09 09:00:00'结束日期 :
'2013-09-09 11:00:00'
或者像这样:
开始日期 :
'2013-09-09 07:00:00'结束日期 :
'2013-09-09 12:00:00'
我不应该这样做,因为在该时间间隔内已经添加了一个事件(08-10)
对于第一个例子(case A),我通过这样做解决了这个问题:
SELECT * FROM `events` as e
where
'2013-09-09 08:00:00' between e.ev_date_start and e.ev_date_end -- date start
OR
'2013-09-09 11:00:00' between e.ev_date_start and e.ev_date_end -- date end
Run Code Online (Sandbox Code Playgroud)
但对于第二种情况(case B),我很难搞清楚......
我有一个项目,我在同一个数据库上有一个OneToMany关系.
目前它的设计如下:
/**
* @ORM\OneToMany(targetEntity="MyEntity", mappedBy="myCopiedItem")
*/
protected $mySource;
/**
* @ORM\ManyToOne(targetEntity="MyEntity", inversedBy="mySource")
* @ORM\JoinColumn(name="selected_myentity_copy_id", referencedColumnName="id")
*/
protected $myCopiedItem;
Run Code Online (Sandbox Code Playgroud)
但现在我必须与ManyToMany建立这种关系.所以我这样做了:
/**
* @ORM\ManyToMany(targetEntity="MyEntity", mappedBy="myCopiedItem")
*/
protected $mySource;
/**
* @ORM\ManyToMany(targetEntity="MyEntity", inversedBy="mySource")
* @ORM\JoinTable(name="entity_has_copy")
*/
protected $myCopiedItem;
Run Code Online (Sandbox Code Playgroud)
但symfony创建的"entity_has_copy"表只有1个项目(myentity_id),我希望有两个字段"myentity_id"和"selected_myentity_copy_id",它们都来自我的"myentity"表中的实际ID ...
为了在我生成的表中同时拥有两个id,我需要修改什么?
我确定我错过了什么,但我无法弄明白什么:(
注意:实体/表名称已重命名以保护隐私
mysql ×2
symfony ×2
composer-php ×1
many-to-many ×1
null ×1
parameters ×1
pdo ×1
php ×1
request ×1
select ×1
sql ×1
twig ×1