Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
php代码需要简单的sql查询_Php_Mysql - Fatal编程技术网

php代码需要简单的sql查询

php代码需要简单的sql查询,php,mysql,Php,Mysql,我正在使用PHPMaker。它有能力用自己的代码做定制的事情。。。。这来自文档:“更新记录后将调用此事件。事件的参数是更新的旧记录和新记录的数组。注意:此事件是表类成员。” 这是要为此事件编辑的代码: // Row Updated event function Row_Updated($rsold, &$rsnew) { //echo "Row Updated"; } 编辑记录时,我希望出于历史目的将旧数据插入到另一个表中。“历史”表将有相同的字段加上一个ID字段,

我正在使用PHPMaker。它有能力用自己的代码做定制的事情。。。。这来自文档:“更新记录后将调用此事件。事件的参数是更新的旧记录和新记录的数组。注意:此事件是表类成员。”

这是要为此事件编辑的代码:

// 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.";

它使查询更容易阅读。最好不要将变量放在字符串变量中。它可以防止错误引用。更新了我的答案,告诉你原因。很有道理。非常尊重正确做事:)