繁体   English   中英

SQL + PHP更新查询

[英]SQL + PHP Update query

我一直在尝试根据用户会话(UserLogin)更新数据,但它一直在说:条件表达式中的数据类型不匹配。 print_r仅用于测试目的。

提前致谢,

ž

function Employee1_BeforeShow(& $sender)
{
    $Employee1_BeforeShow = true;
    $Component = & $sender;
    $Container = & CCGetParentContainer($sender);
    global $Employee1; //Compatibility


$Page = CCGetParentPage($sender);

$db = $Page->Connections["PettyCashMDB"];

$sql1 = "UPDATE Employee SET Employee.LastActive = Date() WHERE Employee.[EmpID] = ". $_SESSION['UserLogin'];
$db->query($sql1);

print_r($_SESSION['UserLogin']);



$db->close();
Employee1_BeforeShow @67-67106FAD
return $Employee1_BeforeShow;
}

编辑:我尝试了@NanaPartykar的方法,偶然地我注意到它的确从$_SESSION['UserLogin']获取了值,只是数据类型有所不同。

编辑:它显示错误Data type mismatch但它们都是字符串,并返回字符串。

代替Employee.[EmpID] ,使用Employee.EmpID

您需要一些引号:

$sql1 = "UPDATE Employee SET Employee.LastActive = Date() WHERE Employee.[EmpID] = \'". $_SESSION['UserLogin'] . "\'";

Z-有很多内置的Codecharge函数可帮助从查询字符串,会话和控件中获取值。

例如:CCGetSession(“ UserLogin”,“ default”);

http://docs.codecharge.com/studio50/html/index.html?http://docs.codecharge.com/studio50/html/Components/Functions/PHP/Overview.html

并通过一些验证执行SQL(来自“ Execute Custom SQL”帮助主题):

$db = new clsDBConnection1();
$SQL = "INSERT INTO report (report_task_id,report_creator) ". 
     "VALUES (". $db->ToSQL(CCGetFromGet("task_id",0),ccsInteger) .",". $db->ToSQL(CCGetUserID(),ccsInteger) .")";

$db->query($SQL);
$db->close(); 

$ db-> ToSQL(和CCToSQL)函数转换并为相关数据类型(ccsText,ccsDate)添加引号。

手册中有很多关于PHP(和ASP,.NET等)的“示例”和“编程参考”下的示例。

http://support.codecharge.com/tutorials.asp

我强烈建议您看一些示例,因为Codecharge将处理很多“管道”,添加大量自定义代码会导致代码生成问题。 在您的示例中,您应该在记录的“演出前”事件中添加“自定义代码”操作,然后在其中添加代码。 如果您在任何地方添加代码,则整个代码部分(例如:放映前)将更改颜色,并且如果您更改了内容,则不再更新。

例如,如果您手动编辑了“更新”功能以更改默认值,那么通过IDE /属性进行的任何更改都不会更改“更新”功能(例如向记录中添加新字段)。

终于成功了,这是代码$sql1 = "UPDATE Employee SET LastActive = Date() WHERE EmpID = '$_SESSION[UserLogin]' "; 谢谢大家的帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM