我有一个SELECT
语句(见下文),它从mysql数据库中获取一些项目并显示它们。
我需要脚本在使用代理变量选择它们后立即更新所选项目,这样当另一个用户运行相同的脚本时,他们只会获得没有为其分配代理的记录。
所以基本上我需要运行一个更新命令,但只能运行那个select语句提取的记录。
$agent = $_GET['agent'];
$con = mysql_connect($host,$user,$pass);
$dbs = mysql_select_db($databaseName, $con);
$result = mysql_query("SELECT * FROM $tableName WHERE processed = '0' AND agent IS NULL LIMIT 5");
$array_data = array();
while ($row = mysql_fetch_array($result)){
$array_data[] = array($row[0], $row[1], $row[2], $row[3], $row[4]);
}
echo json_encode($array_data);
答案 0 :(得分:0)
用这个扩展你的时间:
while ($row = mysql_fetch_array($result)){
$array_data[] = array($row[0], $row[1], $row[2], $row[3], $row[4]);
mysql_query("UPDATE $tableName SET agent = 'whateverValueYouNeedHere' WHERE primary_key = $row[theNumberOfYourPrimaryKey]");
}
在上面的选择查询中,您必须确保还提取了主键(可能是$row[0]
)。然后,您可以通过其主键更新记录。