Put sondage deletion in a function

This commit is contained in:
Jean-Philippe Guérard 2012-01-10 23:28:21 +01:00
parent c665ece920
commit f86f2e3d76
4 changed files with 32 additions and 64 deletions

View File

@ -87,33 +87,13 @@ while($dsondage = $sondage->FetchNextObject(false)) {
// On inclut la routine de suppression
$date=date('H:i:s d/m/Y');
$connect->StartTrans();
$req = 'DELETE FROM sondage WHERE id_sondage = ' . $connect->Param('id_sondage') ;
$sql = $connect->Prepare($req);
$connect->Execute($sql, array($dsondage->id_sondage));
$req = 'DELETE FROM sujet_studs WHERE id_sondage = ' . $connect->Param('id_sondage') ;
$sql = $connect->Prepare($req);
$connect->Execute($sql, array($dsondage->id_sondage));
$req = 'DELETE FROM user_studs WHERE id_sondage = ' . $connect->Param('id_sondage') ;
$sql = $connect->Prepare($req);
$connect->Execute($sql, array($dsondage->id_sondage));
$req = 'DELETE FROM comments WHERE id_sondage = ' . $connect->Param('id_sondage') ;
$sql = $connect->Prepare($req);
$connect->Execute($sql, array($dsondage->id_sondage));
if (! $connect->HasFailedTrans() ) {
if ( remove_sondage( $dsondage->id_sondage ) ) {
// ecriture des traces dans le fichier de logs
error_log($date . " SUPPRESSION: $dsondage->id_sondage\t$dsondage->format\t$dsondage->nom_admin\t$dsondage->mail_admin\n", 3, 'logs_studs.txt');
}
$connect->CompleteTrans();
}
$i++;

View File

@ -313,29 +313,9 @@ if (isset($_POST["confirmesuppression"]) || isset($_POST["confirmesuppression_x"
$nbuser=$user_studs->RecordCount();
$date=date('H:i:s d/m/Y:');
$connect->StartTrans();
remove_sondage( $numsondage ) ;
$req = 'DELETE FROM sondage WHERE id_sondage = ' . $connect->Param('numsondage') ;
$sql = $connect->Prepare($req);
$connect->Execute($sql, array($numsondage));
$req = 'DELETE FROM sujet_studs WHERE id_sondage = ' . $connect->Param('numsondage') ;
$sql = $connect->Prepare($req);
$connect->Execute($sql, array($numsondage));
$req = 'DELETE FROM user_studs WHERE id_sondage = ' . $connect->Param('numsondage') ;
$sql = $connect->Prepare($req);
$connect->Execute($sql, array($numsondage));
$req = 'DELETE FROM comments WHERE id_sondage = ' . $connect->Param('numsondage') ;
$sql = $connect->Prepare($req);
$connect->Execute($sql, array($numsondage));
$suppression_OK = ! $connect->HasFailedTrans() ;
$connect->CompleteTrans();
if ( $suppression_OK ) {
if ( remove_sondage( $numsondage ) ) {
// on ecrit dans le fichier de logs la suppression du sondage
error_log($date . " SUPPRESSION: $dsondage->id_sondage\t$dsondage->format\t$dsondage->nom_admin\t$dsondage->mail_admin\n", 3, 'admin/logs_studs.txt');

View File

@ -203,6 +203,33 @@ function getUrlSondage($id, $admin = false)
return $url;
}
function remove_sondage( $numsondage ){
$connect->StartTrans();
$req = 'DELETE FROM sondage WHERE id_sondage = ' . $connect->Param('numsondage') ;
$sql = $connect->Prepare($req);
$connect->Execute($sql, array($numsondage));
$req = 'DELETE FROM sujet_studs WHERE id_sondage = ' . $connect->Param('numsondage') ;
$sql = $connect->Prepare($req);
$connect->Execute($sql, array($numsondage));
$req = 'DELETE FROM user_studs WHERE id_sondage = ' . $connect->Param('numsondage') ;
$sql = $connect->Prepare($req);
$connect->Execute($sql, array($numsondage));
$req = 'DELETE FROM comments WHERE id_sondage = ' . $connect->Param('numsondage') ;
$sql = $connect->Prepare($req);
$connect->Execute($sql, array( $numsondage ));
$suppression_OK = ! $connect->HasFailedTrans() ;
$connect->CompleteTrans();
return $suppression_OK ;
}
$connect=connexion_base();
@ -216,4 +243,4 @@ define('NO_POLL_ID', 0x0001000000);
define('INVALID_EMAIL', 0x0010000000);
define('TITLE_EMPTY', 0x0100000000);
define('INVALID_DATE', 0x1000000000);
$err = 0;
$err = 0;

View File

@ -49,32 +49,13 @@ $sondage=$connect->Execute("select * from sondage");
while ($dsondage=$sondage->FetchNextObject(false)) {
if ($date_courante > strtotime($dsondage->date_fin)) {
//destruction des données dans la base
$connect->StartTrans();
$req = 'DELETE FROM sondage WHERE id_sondage = ' . $connect->Param('id_sondage') ;
$sql = $connect->Prepare($req);
$connect->Execute($sql, array($dsondage->id_sondage));
$req = 'DELETE FROM sujet_studs WHERE id_sondage = ' . $connect->Param('id_sondage') ;
$sql = $connect->Prepare($req);
$connect->Execute($sql, array($dsondage->id_sondage));
$req = 'DELETE FROM user_studs WHERE id_sondage = ' . $connect->Param('id_sondage') ;
$sql = $connect->Prepare($req);
$connect->Execute($sql, array($dsondage->id_sondage));
$req = 'DELETE FROM comments WHERE id_sondage = ' . $connect->Param('id_sondage') ;
$sql = $connect->Prepare($req);
$connect->Execute($sql, array($dsondage->id_sondage));
if ( ! $connect->HasFailedTrans() ) {
if ( remove_sondage( $dsondage->id_sondage ) ) {
// ecriture des traces dans le fichier de logs
error_log($date . " SUPPRESSION: $dsondage->id_sondage\t$dsondage->format\t$dsondage->nom_admin\t$dsondage->mail_admin\n", 3, '../admin/logs_studs.txt');
}
$connect->CompleteTrans();
}
}