1KA_F2F/utils/1kaUtils/1ka_ankete_deactive_v2.php
2020-08-14 13:36:36 +02:00

185 lines
5.3 KiB
PHP

<?php
set_time_limit(1800); # 30 minut
/**
* Podatke neaktivnih anket, ki se ze nekaj casa niso spreminjale prenese iz _active tabel v navadne - arhivske tabele
* ARHIVIRAMO TABELE srv_data_grid, srv_data_vrednost, srv_user_grupa
*/
include_once('../../function.php');
// aktivne ankete, ali mlajše od 14 dni (od zadnje spremembe, ali da so takrat pretekle)
$sql = sisplet_query("SELECT * FROM srv_anketa
WHERE active='0'
AND id > '0'
AND db_table = '1'
AND edit_time < NOW() - INTERVAL 3 MONTH
AND expire < NOW() - INTERVAL 3 MONTH
LIMIT 200
");
if (!$sql) { echo mysqli_error($GLOBALS['connect_db']); die(); }
echo mysqli_num_rows($sql).'<hr>';
while ($row = mysqli_fetch_array($sql)) {
$s = sisplet_query("START TRANSACTION");
if (!$s) { echo mysqli_error($GLOBALS['connect_db']); die(); }
echo $row['id'].'<br />';
// srv_data_grid
$sql1 = sisplet_query("SELECT grid.*
FROM srv_data_grid_active grid, srv_spremenljivka s, srv_grupa g
WHERE grid.spr_id = s.id
AND s.gru_id = g.id
AND g.ank_id = '$row[id]'
");
if (!$sql1) { echo mysqli_error($GLOBALS['connect_db']); die(); }
$values = "";
$i = 0;
while ($row1 = mysqli_fetch_assoc($sql1)) {
if ($values != "") $values .= ", ";
$vals = "";
foreach ($row1 AS $key => $val) {
if ($vals != "") $vals .= ", ";
if ($val != null)
$vals .= "'$val'";
else
$vals .= "NULL";
}
$values .= "($vals)";
$loop_id = $row1['loop_id'] == null ? " IS NULL" : " = '".$row1['loop_id']."'";
$query = "DELETE FROM srv_data_grid_active WHERE spr_id='$row1[spr_id]' AND vre_id='$row1[vre_id]' AND usr_id='$row1[usr_id]' AND loop_id $loop_id";
$s = sisplet_query($query);
if (!$s) { echo mysqli_error($GLOBALS['connect_db']).' 111 ('.$query.')<br>'; die(); }
// force mysql query
if ($i++ >= 500) {
if ($values != "") {
$query = "INSERT INTO srv_data_grid VALUES $values";
$s = sisplet_query($query);
if (!$s) { echo mysqli_error($GLOBALS['connect_db']).' 112a ('.$query.')<br>'; die(); }
}
$values = "";
$i = 0;
}
}
if ($values != "") {
$query = "INSERT INTO srv_data_grid VALUES $values";
$s = sisplet_query($query);
if (!$s) { echo mysqli_error($GLOBALS['connect_db']).' 112 ('.$query.')<br>'; die(); }
}
// srv_data_vrednost
$sql1 = sisplet_query("SELECT v.*
FROM srv_data_vrednost_active v, srv_spremenljivka s, srv_grupa g
WHERE v.spr_id = s.id
AND s.gru_id = g.id
AND g.ank_id = '$row[id]'
");
if (!$sql1) { echo mysqli_error($GLOBALS['connect_db']); die(); }
$values = "";
$i = 0;
while ($row1 = mysqli_fetch_assoc($sql1)) {
if ($values != "") $values .= ", ";
$vals = "";
foreach ($row1 AS $key => $val) {
if ($vals != "") $vals .= ", ";
if ($val != null)
$vals .= "'$val'";
else
$vals .= "NULL";
}
$values .= "($vals)";
$loop_id = $row1['loop_id'] == null ? " IS NULL" : " = '".$row1['loop_id']."'";
$query = "DELETE FROM srv_data_vrednost_active WHERE spr_id='$row1[spr_id]' AND vre_id='$row1[vre_id]' AND usr_id='$row1[usr_id]' AND loop_id $loop_id";
$s = sisplet_query($query);
if (!$s) { echo mysqli_error($GLOBALS['connect_db']).' 113 ('.$query.')<br>'; die(); }
// force mysql query
if ($i++ >= 500) {
if ($values != "") {
$query = "INSERT INTO srv_data_vrednost VALUES $values";
$s = sisplet_query($query);
if (!$s) { echo mysqli_error($GLOBALS['connect_db']).' 114a ('.$query.')<br>'; die(); }
}
$values = "";
$i = 0;
}
}
if ($values != "") {
$query = "INSERT INTO srv_data_vrednost VALUES $values";
$s = sisplet_query($query);
if (!$s) { echo mysqli_error($GLOBALS['connect_db']).' 114 ('.$query.')<br>'; die(); }
}
// srv_user_grupa
$sql1 = sisplet_query("SELECT grupa.*
FROM srv_user_grupa_active grupa, srv_grupa g
WHERE grupa.gru_id = g.id
AND g.ank_id = '$row[id]'
");
if (!$sql1) { echo mysqli_error($GLOBALS['connect_db']); die(); }
$values = "";
$i = 0;
while ($row1 = mysqli_fetch_assoc($sql1)) {
if ($values != "") $values .= ", ";
$vals = "";
foreach ($row1 AS $key => $val) {
if ($vals != "") $vals .= ", ";
$vals .= "'$val'";
}
$values .= "($vals)";
$query = "DELETE FROM srv_user_grupa_active WHERE gru_id='$row1[gru_id]' AND usr_id='$row1[usr_id]'";
$s = sisplet_query($query);
if (!$s) { echo mysqli_error($GLOBALS['connect_db']).' 115 ('.$query.')<br>'; die(); }
// force mysql query
if ($i++ >= 500) {
if ($values != "") {
$query = "INSERT INTO srv_user_grupa VALUES $values";
$s = sisplet_query($query);
if (!$s) { echo mysqli_error($GLOBALS['connect_db']).' 116a ('.$query.')<br>'; die(); }
}
$values = "";
$i = 0;
}
}
if ($values != "") {
$query = "INSERT INTO srv_user_grupa VALUES $values";
$s = sisplet_query($query);
if (!$s) { echo mysqli_error($GLOBALS['connect_db']).' 116 ('.$query.')<br>'; die(); }
}
$s = sisplet_query("UPDATE srv_anketa SET db_table = '0' WHERE id = '$row[id]'");
if (!$s) { echo mysqli_error($GLOBALS['connect_db']); die(); }
//$s = sisplet_query("ROLLBACK");
$s = sisplet_query("COMMIT");
if (!$s) { echo mysqli_error($GLOBALS['connect_db']); die(); }
flush(); @ob_flush();
}
?>