222 lines
7.1 KiB
PHP
222 lines
7.1 KiB
PHP
<?php
|
|
require_once('../Connections/cmctrfdb.php');
|
|
require_once('../webassist/mysqli/rsobj.php');
|
|
|
|
include('include/headscript.php');
|
|
include('languages/' . $_SESSION['langselect'] . '/tdgen.php');
|
|
|
|
// Recupero delle variabili GET e assegnazione a variabili PHP
|
|
$idtrf = isset($_GET['idtrf']) ? $_GET['idtrf'] : null;
|
|
$idtd = isset($_GET['idtd']) ? $_GET['idtd'] : null;
|
|
|
|
if (!$idtrf || !$idtd) {
|
|
die('Errore: le variabili idtrf e idtd sono necessarie.');
|
|
}
|
|
|
|
// recupera info td
|
|
$conn = new mysqli($servername, $username, $password, $dbname);
|
|
|
|
// Verifica la connessione
|
|
if ($conn->connect_error) {
|
|
die("Connessione fallita: " . $conn->connect_error);
|
|
}
|
|
|
|
$sql = "SELECT * FROM data_td WHERE iddata_td = ?";
|
|
$stmt = $conn->prepare($sql);
|
|
$stmt->bind_param("i", $idtd);
|
|
$stmt->execute();
|
|
$result = $stmt->get_result();
|
|
$row = $result->fetch_assoc();
|
|
|
|
|
|
if ($row) {
|
|
// Assegna il valore della nuova revisione
|
|
$tdrev = $row["td_rev"];
|
|
$newrev = $tdrev + 1;
|
|
$iduserlogin = 1; // Assumendo che $iduserlogin sia definito
|
|
|
|
// clone data_td
|
|
// Costruisci la query di inserimento dinamico
|
|
$columns = array();
|
|
$values = array();
|
|
$placeholders = array();
|
|
foreach ($row as $column => $value) {
|
|
if ($column == 'iddata_td') {
|
|
continue; // Salta la colonna iddata_td
|
|
} elseif ($column == 'td_rev') {
|
|
$value = $newrev;
|
|
} elseif ($column == 'signedontd' || $column == 'pdffilenametd' || $column == 'zipname' || $column == 'signnametd') {
|
|
$value = NULL;
|
|
} elseif ($column == 'statustd') {
|
|
$value = 'Draft';
|
|
} elseif ($column == 'iduser') {
|
|
$value = $iduserlogin;
|
|
}
|
|
|
|
$columns[] = $column;
|
|
$values[] = $value;
|
|
$placeholders[] = '?';
|
|
}
|
|
|
|
$columns_list = implode(", ", $columns);
|
|
$placeholders_list = implode(", ", $placeholders);
|
|
|
|
$sql_insert = "INSERT INTO data_td ($columns_list) VALUES ($placeholders_list)";
|
|
$stmt_insert = $conn->prepare($sql_insert);
|
|
|
|
// Bind dei parametri
|
|
$types = str_repeat("s", count($values)); // Assumendo che tutti i campi siano stringhe; regolare i tipi se necessario
|
|
$stmt_insert->bind_param($types, ...$values);
|
|
|
|
if ($stmt_insert->execute()) {
|
|
$new_iddata_td = $conn->insert_id;
|
|
} else {
|
|
echo "Errore nella duplicazione del record: " . $stmt_insert->error;
|
|
}
|
|
|
|
$stmt_insert->close();
|
|
} else {
|
|
echo "Nessun record trovato con iddata_td = $idtd";
|
|
}
|
|
|
|
$sql_contacts = "SELECT * FROM contacts_td WHERE idtd = ?";
|
|
$stmt_contacts = $conn->prepare($sql_contacts);
|
|
$stmt_contacts->bind_param("i", $idtd);
|
|
$stmt_contacts->execute();
|
|
$result_contacts = $stmt_contacts->get_result();
|
|
|
|
while ($row_contact = $result_contacts->fetch_assoc()) {
|
|
$columns = array();
|
|
$values = array();
|
|
$placeholders = array();
|
|
|
|
foreach ($row_contact as $column => $value) {
|
|
if ($column == 'idcontactstd') {
|
|
continue; // Salta la colonna idcontactstd
|
|
} elseif ($column == 'idtd') {
|
|
$value = $new_iddata_td;
|
|
}
|
|
|
|
$columns[] = $column;
|
|
$values[] = $value;
|
|
$placeholders[] = '?';
|
|
}
|
|
|
|
$columns_list = implode(", ", $columns);
|
|
$placeholders_list = implode(", ", $placeholders);
|
|
|
|
$sql_insert_contacts = "INSERT INTO contacts_td ($columns_list) VALUES ($placeholders_list)";
|
|
$stmt_insert_contacts = $conn->prepare($sql_insert_contacts);
|
|
|
|
// Bind dei parametri
|
|
$types_contacts = str_repeat("s", count($values)); // Assumendo che tutti i campi siano stringhe; regolare i tipi se necessario
|
|
$stmt_insert_contacts->bind_param($types_contacts, ...$values);
|
|
|
|
if ($stmt_insert_contacts->execute()) {
|
|
echo "Record contact duplicato con successo. ";
|
|
} else {
|
|
echo "Errore nella duplicazione del record contact: " . $stmt_insert_contacts->error;
|
|
}
|
|
|
|
$stmt_insert_contacts->close();
|
|
}
|
|
|
|
$stmt_contacts->close();
|
|
|
|
// ora tdfileattached
|
|
|
|
$sql_tdfileattached = "SELECT * FROM tdfileattached WHERE iddata_td = ?";
|
|
$stmt_tdfileattached = $conn->prepare($sql_tdfileattached);
|
|
$stmt_tdfileattached->bind_param("i", $idtd);
|
|
$stmt_tdfileattached->execute();
|
|
$result_tdfileattached = $stmt_tdfileattached->get_result();
|
|
|
|
while ($row_tdfileattached = $result_tdfileattached->fetch_assoc()) {
|
|
$columns = array();
|
|
$values = array();
|
|
$placeholders = array();
|
|
|
|
foreach ($row_tdfileattached as $column => $value) {
|
|
if ($column == 'idtdfileattached') {
|
|
continue; // Salta la colonna idtdfileattached
|
|
} elseif ($column == 'iddata_td') {
|
|
$value = $new_iddata_td;
|
|
}
|
|
|
|
$columns[] = $column;
|
|
$values[] = $value;
|
|
$placeholders[] = '?';
|
|
}
|
|
|
|
$columns_list = implode(", ", $columns);
|
|
$placeholders_list = implode(", ", $placeholders);
|
|
|
|
$sql_insert_tdfileattached = "INSERT INTO tdfileattached ($columns_list) VALUES ($placeholders_list)";
|
|
$stmt_insert_tdfileattached = $conn->prepare($sql_insert_tdfileattached);
|
|
|
|
// Bind dei parametri
|
|
$types_tdfileattached = str_repeat("s", count($values)); // Assumendo che tutti i campi siano stringhe; regolare i tipi se necessario
|
|
$stmt_insert_tdfileattached->bind_param($types_tdfileattached, ...$values);
|
|
|
|
if ($stmt_insert_tdfileattached->execute()) {
|
|
echo "Record tdfileattached duplicato con successo. ";
|
|
} else {
|
|
echo "Errore nella duplicazione del record tdfileattached: " . $stmt_insert_tdfileattached->error;
|
|
}
|
|
|
|
$stmt_insert_tdfileattached->close();
|
|
}
|
|
|
|
$stmt_tdfileattached->close();
|
|
|
|
//fillrisk_td
|
|
$sql_fillrisk_td = "SELECT * FROM fillrisk_td WHERE iddata_td = ?";
|
|
$stmt_fillrisk_td = $conn->prepare($sql_fillrisk_td);
|
|
$stmt_fillrisk_td->bind_param("i", $idtd);
|
|
$stmt_fillrisk_td->execute();
|
|
$result_fillrisk_td = $stmt_fillrisk_td->get_result();
|
|
|
|
while ($row_fillrisk_td = $result_fillrisk_td->fetch_assoc()) {
|
|
$columns = array();
|
|
$values = array();
|
|
$placeholders = array();
|
|
|
|
foreach ($row_fillrisk_td as $column => $value) {
|
|
if ($column == 'idfillrisk_td') {
|
|
continue; // Salta la colonna idfillrisk_td
|
|
} elseif ($column == 'iddata_td') {
|
|
$value = $new_iddata_td;
|
|
}
|
|
|
|
$columns[] = $column;
|
|
$values[] = $value;
|
|
$placeholders[] = '?';
|
|
}
|
|
|
|
$columns_list = implode(", ", $columns);
|
|
$placeholders_list = implode(", ", $placeholders);
|
|
|
|
$sql_insert_fillrisk_td = "INSERT INTO fillrisk_td ($columns_list) VALUES ($placeholders_list)";
|
|
$stmt_insert_fillrisk_td = $conn->prepare($sql_insert_fillrisk_td);
|
|
|
|
// Bind dei parametri
|
|
$types_fillrisk_td = str_repeat("s", count($values)); // Assumendo che tutti i campi siano stringhe; regolare i tipi se necessario
|
|
$stmt_insert_fillrisk_td->bind_param($types_fillrisk_td, ...$values);
|
|
|
|
if ($stmt_insert_fillrisk_td->execute()) {
|
|
echo "Record fillrisk_td duplicato con successo. ";
|
|
} else {
|
|
echo "Errore nella duplicazione del record fillrisk_td: " . $stmt_insert_fillrisk_td->error;
|
|
}
|
|
|
|
$stmt_insert_fillrisk_td->close();
|
|
}
|
|
|
|
$stmt_fillrisk_td->close();
|
|
|
|
header("Location: tdrevstart.php?new_iddata_td=$new_iddata_td&idtrf=$idtrf&newrev=$newrev");
|
|
exit();
|
|
|
|
$stmt->close();
|
|
$conn->close();
|