php代码需要简单的sql查询
我正在使用PHPMaker。它有能力用自己的代码做定制的事情。。。。这来自文档:“更新记录后将调用此事件。事件的参数是更新的旧记录和新记录的数组。注意:此事件是表类成员。” 这是要为此事件编辑的代码:php代码需要简单的sql查询,php,mysql,Php,Mysql,我正在使用PHPMaker。它有能力用自己的代码做定制的事情。。。。这来自文档:“更新记录后将调用此事件。事件的参数是更新的旧记录和新记录的数组。注意:此事件是表类成员。” 这是要为此事件编辑的代码: // Row Updated event function Row_Updated($rsold, &$rsnew) { //echo "Row Updated"; } 编辑记录时,我希望出于历史目的将旧数据插入到另一个表中。“历史”表将有相同的字段加上一个ID字段,
// Row Updated event
function Row_Updated($rsold, &$rsnew) {
//echo "Row Updated";
}
编辑记录时,我希望出于历史目的将旧数据插入到另一个表中。“历史”表将有相同的字段加上一个ID字段,该字段将自动递增,并将成为主键。因此,我将有一个完整的可用更改历史记录
桌子的布局是这样的
(Information)
ip (primary key), status, hostname, last_scanned, mac, ManualHost, Reservation
他们有一些插入记录的示例代码,但我不是专家,也不知道从$rsold数组中获取数据的MySQL/PHP行话
// Insert record
// NOTE: Modify your SQL here, replace the table name, field name and field values
$sInsertSql = "INSERT INTO MyTable (Field1, Field2, Field3) VALUES (Value1, Value2, Value3)";
$GLOBALS["conn"]->Execute($sInsertSql);
有人能帮我找到正确的方向吗?假设他们返回的是行,您只需像获取数组一样获取字段即可。只需使用变量并在方括号中提及字段,例如:
$row['field']
$sInsertSql = "INSERT INTO information (status, hostname, last_scanned, mac, ManualHost, Reservation)
VALUES ('" . $rsold['status'] . "', '" . $rsold['hostname'] . "', '" . $rsold['last_scanned'] . "', '" . $rsold['mac'] . "',
'" . $rsold['ManualHost'] . "',
'". $rsold['Reservation'] . "')";
$GLOBALS["conn"]->Execute($sInsertSql);
至于你关于“所有间隔和句点”的问题,我这样做是为了将变量与字符串分开。下面是一个好(坏)的例子,可以说明可能的原因:
$juice = "apple";
echo "He drank some $juice juice.";
//Now imagine I want to write "He drank some juice made of apples
echo "He drank some juice made of $juices.";
//^^^ Is invalid. "s" is a valid character for a variable name, but the variable is $juice.
//So it'd be better to
echo "He drank some juice made of " . $juice . "s.";
它使查询更容易阅读。最好不要将变量放在字符串变量中。它可以防止错误引用。更新了我的答案,告诉你原因。很有道理。非常尊重正确做事:)