From 2462ebe5e8ac3fd9fc29abbcc6658fa445101af9 Mon Sep 17 00:00:00 2001 From: Robert Anderson <randerson@lbsd.net> Date: Mon, 20 Apr 2009 14:30:36 +0000 Subject: [PATCH] Added better checks for SQL failing --- webui/group-add.php | 33 ++++++++++++------ webui/group-attribute-change.php | 2 +- webui/group-delete.php | 49 ++++++++++++-------------- webui/group-main.php | 1 - webui/user-attribute-delete.php | 2 +- webui/user-groups-delete.php | 2 +- webui/wisp-multiuser-add.php | 2 +- webui/wisp-user-delete.php | 60 ++++++++++++++------------------ webui/wisp-user-edit.php | 11 +++--- 9 files changed, 80 insertions(+), 82 deletions(-) diff --git a/webui/group-add.php b/webui/group-add.php index 76ccb967..0f155fa5 100644 --- a/webui/group-add.php +++ b/webui/group-add.php @@ -82,28 +82,39 @@ if (isset($_POST['frmaction']) && $_POST['frmaction'] == "add") { <?php - $stmt = $db->prepare("INSERT INTO ${DB_TABLE_PREFIX}groups (Name,Priority,Disabled,Comment) VALUES (?,?,?,?)"); + if (!empty($_POST['group_name'])) { - $res = $stmt->execute(array( - $_POST['group_name'], - $_POST['group_priority'], - $_POST['group_disabled'], - $_POST['group_comment'], - )); - if ($res) { + $stmt = $db->prepare("INSERT INTO ${DB_TABLE_PREFIX}groups (Name,Priority,Disabled,Comment) VALUES (?,?,?,?)"); + + $res = $stmt->execute(array( + $_POST['group_name'], + $_POST['group_priority'], + $_POST['group_disabled'], + $_POST['group_comment'], + )); + if ($res) { + +?> + + <div class="notice">Group created</div> + +<?php + + } else { ?> - <div class="notice">Group created</div> + <div class="warning">Failed to create group</div> + <div class="warning"><?php print_r($stmt->errorInfo()) ?></div> <?php + } } else { ?> - <div class="warning">Failed to create group</div> - <div class="warning"><?php print_r($stmt->errorInfo()) ?></div> + <div class="warning">Group name cannot be empty!</div> <?php diff --git a/webui/group-attribute-change.php b/webui/group-attribute-change.php index 6008271e..c39750e9 100644 --- a/webui/group-attribute-change.php +++ b/webui/group-attribute-change.php @@ -158,7 +158,7 @@ if (isset($_POST['frmaction']) && $_POST['frmaction'] == "change") { $updateStr = implode(', ',$updates); $res = $db->exec("UPDATE ${DB_TABLE_PREFIX}group_attributes SET $updateStr WHERE ID = ".$db->quote($_POST['attr_id'])); - if ($res) { + if ($res !== FALSE) { ?> diff --git a/webui/group-delete.php b/webui/group-delete.php index 5f9b3927..5960f310 100644 --- a/webui/group-delete.php +++ b/webui/group-delete.php @@ -79,57 +79,52 @@ if (isset($_POST['frmaction']) && $_POST['frmaction'] == "delete") { $db->beginTransaction(); - $resultRemoveMembers = $db->exec("DELETE FROM ${DB_TABLE_PREFIX}users_to_groups WHERE GroupID = ".$db->quote($_POST['group_id'])); - $resultRemoveAttributes = $db->exec("DELETE FROM ${DB_TABLE_PREFIX}group_attributes WHERE GroupID = ".$db->quote($_POST['group_id'])); - $resultRemoveGroup = $db->exec("DELETE FROM ${DB_TABLE_PREFIX}groups WHERE ID = ".$db->quote($_POST['group_id'])); - - if ($resultRemoveMembers && $resultRemoveAttributes && $resultRemoveGroup) { - + $res = $db->exec("DELETE FROM ${DB_TABLE_PREFIX}users_to_groups WHERE GroupID = ".$db->quote($_POST['group_id'])); + if ($res !== FALSE) { + $res = $db->exec("DELETE FROM ${DB_TABLE_PREFIX}group_attributes WHERE GroupID = ".$db->quote($_POST['group_id'])); + if ($res !== FALSE) { + $res = $db->exec("DELETE FROM ${DB_TABLE_PREFIX}groups WHERE ID = ".$db->quote($_POST['group_id'])); + if ($res !== FALSE) { ?> - - <div class="notice">Group deleted</div> - + <div class="notice">Group deleted</div> <?php - - $db->commit(); + $db->commit(); + } else { +?> + <div class="warning">Error deleting group</div> + <div class="warning"><?php print_r($db->errorInfo()) ?></div> +<?php + $db->rollback(); + } + } else { +?> + <div class="warning">Error deleting group</div> + <div class="warning"><?php print_r($db->errorInfo()) ?></div> +<?php + $db->rollback(); + } } else { - ?> - <div class="warning">Error deleting group</div> <div class="warning"><?php print_r($db->errorInfo()) ?></div> - <?php - $db->rollback(); } } else { - ?> - <div class="notice">Group not deleted, aborted by user</div> - <?php - } # Warn } else { - ?> - <div class="warning">Invocation error, no group ID</div> - <?php - } } else { - ?> - <div class="warning">Invalid invocation</div> - <?php - } printFooter(); diff --git a/webui/group-main.php b/webui/group-main.php index b54db367..f5663832 100644 --- a/webui/group-main.php +++ b/webui/group-main.php @@ -83,7 +83,6 @@ printHeader(array( $sql = "SELECT ID, Name, Priority, Disabled, Comment FROM ${DB_TABLE_PREFIX}groups ORDER BY ID"; $res = $db->query($sql); - $rownums = 0; while ($row = $res->fetchObject()) { ?> diff --git a/webui/user-attribute-delete.php b/webui/user-attribute-delete.php index de48aa9b..fc74bbaa 100644 --- a/webui/user-attribute-delete.php +++ b/webui/user-attribute-delete.php @@ -80,7 +80,7 @@ if (isset($_POST['frmaction']) && $_POST['frmaction'] == "delete") { if (isset($_POST['attr_id'])) { if (isset($_POST['confirm']) && $_POST['confirm'] == "yes") { $res = $db->exec("DELETE FROM ${DB_TABLE_PREFIX}user_attributes WHERE ID = ".$db->quote($_POST['attr_id'])); - if ($res) { + if ($res !== FALSE) { ?> diff --git a/webui/user-groups-delete.php b/webui/user-groups-delete.php index e0e99abb..55244ece 100644 --- a/webui/user-groups-delete.php +++ b/webui/user-groups-delete.php @@ -88,7 +88,7 @@ if (isset($_POST['frmaction']) && $_POST['frmaction'] == "delete") { GroupID = ".$db->quote($_POST['group_id']) ); - if ($res) { + if ($res !== FALSE) { ?> diff --git a/webui/wisp-multiuser-add.php b/webui/wisp-multiuser-add.php index 08526f3a..2158bb1a 100644 --- a/webui/wisp-multiuser-add.php +++ b/webui/wisp-multiuser-add.php @@ -86,7 +86,7 @@ if (isset($_POST['frmaction']) && $_POST['frmaction'] == "insert") { <?php #FIXME # Perform checks on input - if (isset($_POST['num_users']) && isset($_POST['session_timeout']) && isset($_POST['data_limit']) && isset($_POST['time_limit'])) { + if (!empty($_POST['num_users']) && !empty($_POST['session_timeout']) && !empty($_POST['data_limit']) && !empty($_POST['time_limit'])) { $db->beginTransaction(); $numberOfUsers = (int)$_POST['num_users']; diff --git a/webui/wisp-user-delete.php b/webui/wisp-user-delete.php index 2c23734a..2018cad4 100644 --- a/webui/wisp-user-delete.php +++ b/webui/wisp-user-delete.php @@ -65,72 +65,64 @@ if (isset($_POST['frmaction']) && $_POST['frmaction'] == "delete") { <div class="warning">No user selected</div> <?php - } # SQL Updates } elseif (isset($_POST['frmaction']) && $_POST['frmaction'] == "delete2") { - ?> - <p class="pageheader">User Remove Results</p> - <?php - if (isset($_POST['user_id'])) { if (isset($_POST['confirm']) && $_POST['confirm'] == "yes") { $db->beginTransaction(); # Delete user data - $userDataDeleteResult = $db->exec("DELETE FROM userdata WHERE UserID = ".$db->quote($_POST['user_id'])); - # Delete user attributes - $attrDeleteResult = $db->exec("DELETE FROM user_attributes WHERE UserID = ".$db->quote($_POST['user_id'])); - # Delete from users - $userDeleteResult = $db->exec("DELETE FROM users WHERE ID = ".$db->quote($_POST['user_id'])); - - if ($userDataDeleteResult && $attrDeleteResult && $userDeleteResult) { + $res = $db->exec("DELETE FROM userdata WHERE UserID = ".$db->quote($_POST['user_id'])); + if ($res !== FALSE) { + # Delete user attributes + $res = $db->exec("DELETE FROM user_attributes WHERE UserID = ".$db->quote($_POST['user_id'])); + if ($res !== FALSE) { + # Delete from users + $res = $db->exec("DELETE FROM users WHERE ID = ".$db->quote($_POST['user_id'])); + if ($res !== FALSE) { ?> - - <div class="notice">User with ID: <?php print_r($_POST['user_id']);?> deleted</div> - + <div class="notice">User with ID: <?php print_r($_POST['user_id']); ?> deleted!</div> <?php - - $db->commit(); + $db->commit(); + } else { +?> + <div class="warning">Failed to delete user!</div> + <div class="warning"><?php print_r($db->errorInfo()); ?></div> +<?php + $db->rollback(); + } + } else { +?> + <div class="warning">Failed to delete user!</div> + <div class="warning"><?php print_r($db->errorInfo()); ?></div> +<?php + $db->rollback(); + } } else { - ?> - - <div class="warning">Error deleting user</div> - <div class="warning"><?php print_r($db->errorInfo()) ?></div> - + <div class="warning">Failed to delete user!</div> + <div class="warning"><?php print_r($db->errorInfo()); ?></div> <?php - $db->rollback(); } } else { - ?> - <div class="warning">Delete user aborted</div> - <?php - } } else { - ?> - <div class="warning">No user selected</div> - <?php - } } else { ?> - <div class="warning">Invocation error</div> - <?php - } printFooter(); diff --git a/webui/wisp-user-edit.php b/webui/wisp-user-edit.php index 1f641acb..5b36d8a3 100644 --- a/webui/wisp-user-edit.php +++ b/webui/wisp-user-edit.php @@ -205,6 +205,12 @@ if (isset($_POST['frmaction']) && $_POST['frmaction'] == "edit") { <?php + $userDataResult->closeCursor(); + $framedIPResult->closeCursor(); + $dataLimitResult->closeCursor(); + $timeLimitResult->closeCursor(); + $callingStationResult->closeCursor(); + } else { ?> @@ -215,11 +221,6 @@ if (isset($_POST['frmaction']) && $_POST['frmaction'] == "edit") { } - $userDataResult->closeCursor(); - $framedIPResult->closeCursor(); - $dataLimitResult->closeCursor(); - $timeLimitResult->closeCursor(); - $callingStationResult->closeCursor(); # SQL Updates } elseif (isset($_POST['frmaction']) && $_POST['frmaction'] == "edit2") { -- GitLab