Unsupported scripts and control panel web app for a hosting company
Nelze vybrat více než 25 témat Téma musí začínat písmenem nebo číslem, může obsahovat pomlčky („-“) a může být dlouhé až 35 znaků.

dbperms.php 1.6KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. <?PHP
  2. require_once('lib/database.php');
  3. require_once('lib/common.php');
  4. ?>
  5. <div class="block">
  6. <h2>Database permissions</h2>
  7. <form action="<?PHP echo CP_PATH; ?>database" method="post">
  8. <input type="hidden" name="action" value="perms">
  9. <table class="innerblock bottomdiv">
  10. <tr>
  11. <th>Database \ User</th>
  12. <?PHP
  13. $sql = 'SELECT dbuser_id, dbuser_name FROM db_users WHERE user_id = '.UID.' ORDER BY dbuser_name';
  14. $res = mysql_query($sql) or mf(__FILE__, __LINE__, $sql);
  15. $users = array();
  16. while ($row = mysql_fetch_array($res)) {
  17. $users[] = $row[0];
  18. echo '<th>'.h(preg_replace('/^[^_]*_/','',$row[1])).'</th>';
  19. }
  20. $sql = 'SELECT db_perms.dbuser_id, db_id FROM db_perms NATURAL JOIN db_users WHERE user_id = '.UID;
  21. $res = mysql_query($sql) or mf(__FILE__, __LINE__, $sql);
  22. $perms = array();
  23. while ($row = mysql_fetch_array($res)) {
  24. if (!isset($perms[($row[0])])) { $perms[($row[0])] = array(); }
  25. $perms[($row[0])][($row[1])] = true;
  26. }
  27. ?>
  28. </tr>
  29. <?PHP
  30. $i = 0;
  31. $sql = 'SELECT db_id, db_name FROM db_dbs WHERE user_id = '.UID.' ORDER BY db_name';
  32. $res = mysql_query($sql) or mf(__FILE__, __LINE__, $sql);
  33. while ($row = mysql_fetch_array($res)) {
  34. ?>
  35. <tr class="<?PHP echo ($i == 0) ? 'even' : 'odd'; ?>">
  36. <td><?PHP echo h($row[1]); ?></td>
  37. <?PHP
  38. foreach ($users as $uid) {
  39. echo '<td><input type="checkbox" name="dbp_'.$row['db_id'].'_'.$uid.'"';
  40. if (isset($perms[$uid][($row['db_id'])])) {
  41. echo ' checked="checked"';
  42. }
  43. echo '></td>';
  44. }
  45. ?>
  46. </tr>
  47. <?PHP
  48. $i = 1 - $i;
  49. }
  50. ?>
  51. </table>
  52. <div class="innerblock">
  53. <input type="submit" value="Update">
  54. </div>
  55. </form>
  56. </div>