当我在MySQL数据库中保存(更新)字段时Model->save(),如果我没有为具有默认值设置的字段指定值,则将其重置为默认值.
即使已经存在该字段的值,这也是这样做的.
例如,考虑以下代码:
$existing_user = $this->CustomCart->User->field('id',array('User.email'=>$this->data['User']['email']));
if($existing_user)
{
//update information
$this->CustomCart->User->id = $existing_user;
}
$this->CustomCart->User->save($this->data);
Run Code Online (Sandbox Code Playgroud)
在此代码中,它会检查用户是否已存在传递的电子邮件地址.如果是,请使用传递的信息更新该用户,否则创建新用户.
但是我在users表中有一个字段叫做role默认值customer
没有设置值role,$this->data因此在创建新用户时,role会自动设置为customer.
但是,在更新现有用户时,即使他们还有像" admin " 这样的角色,它仍会将值重置为customer.
我不知道为什么会这样.我没有专门设置的其他字段(没有默认值)保持其值.那么为什么默认值的字段会被重置?
我正在开发一个定义了规则列表的库。我想把这个规则列表变成一个接口,让一些东西遵守规则。
我最终得到了一个结构与此类似的列表:
const rules = [
{} as { foo: 1 | 2 | 3},
{} as { bar: 4 | 5 | 6},
]
type T = typeof rules
Run Code Online (Sandbox Code Playgroud)
T最终的类型是联合数组,如下所示:
type T = ({
foo: 1 | 2 | 3;
} | {
bar: 4 | 5 | 6;
})[]
Run Code Online (Sandbox Code Playgroud)
但我真正想要的是一个合并它们的界面:
type T = {
foo?: 1 | 2 | 3
bar?: 4 | 5 | 6
}
Run Code Online (Sandbox Code Playgroud)
有什么办法可以实现这一点吗?
好吧,我的客户想要在购物车中显示购买两项功能,如果他们希望在购物车中有1种特定商品类型显示其他特定商品类型,那么如果他们同时购买它们可以节省50美元.我试图围绕什么是设置它的最佳方式,所以它不容易被黑客攻击(即:将两者都添加到购物车然后删除一个并保持折扣)
有人在理论上有一些一般性的想法吗?
谢谢.
通过move_uploaded_file()我用PHP保存上传的文件时确定我不能使用绝对URL我必须使用相对的URL.我的站点有2个根目录,一个用于http端,另一个用于https端:httpdocs和httpsdocs.因此,如果我的脚本在https端,如何将文件保存到http端的位置?
谢谢!
更新 确定好像我使用错误的绝对路径约定我这样做:
$dir = 'https://www.mydomain.com/masonic_images/';
move_uploaded_file($_FILES['blue_image']['tmp_name'], $dir.$new_name);
Run Code Online (Sandbox Code Playgroud) 我的产品表中有一个 int字段,product_stat每次查看产品时都会增加.我还有一个名为的日期字段product_date_added.
为了计算产品每天的平均访问量,您需要使用当前日期和产品添加日期来计算产品存在的天数.然后将产品统计除以其存在的天数以获得每天的平均访问量.
好的但我想做的是选择一些产品并按每天的访问量排序 DESC
我怎样才能做到这一点?
谢谢!!!
在PHP4中没有公共,私人等.所以我想知道是否有某种解决方法,以便我可以将类的属性设为私有,并且只能通过getter/setter访问
谢谢!!
什么是阻止垃圾邮件发送者探测表单的最简单方法(最好不要阻止真实用户)
我想创建一个PDO类来处理数据库连接.
这是我有的:
require('php/packages/store/store_db_settings.php');
class store_pdo
{
private $DBH; // Data Base Handler
function __construct()
{
$DBH = new PDO(DB_DSN,DB_USER,DB_PASSWORD);
}
public function getHandler()
{
return $DBH;
}
}
Run Code Online (Sandbox Code Playgroud)
我认为这似乎没问题,但是我习惯于只使用类似的东西,mysql_query而且不确定将来会遇到什么问题.所以我认为这里的经验可以提供指导.
我有足够的东西吗?我应该使我的类Singleton,还是使用静态函数?有最好的做法吗?
我不想这样做,然后我有几个其他类使用它,发现我应该用不同的方式写它.
PS我只是注意到best-practices标签不再被允许......这是否意味着现在也不鼓励这样的问题?
许多安装光盘只允许您安装软件X次.
然而光盘是无国籍的.安装后它们不变(AFAIK).所以这让我很困惑.
他们如何跟踪?
php ×4
php4 ×3
anti-piracy ×1
cakephp ×1
cakephp-1.3 ×1
colorbox ×1
css ×1
installation ×1
javascript ×1
jquery ×1
model ×1
mysql ×1
oop ×1
pdo ×1
security ×1
sql ×1
sql-order-by ×1
typescript ×1