home *** CD-ROM | disk | FTP | other *** search
/ PC World 2005 April / PCWorld_2005-04_cd.bin / akce / web / phptriad / phptriad2-2-1.exe / htdocs / phpmyadmin / mult_submits.inc.php < prev    next >
PHP Script  |  2002-01-06  |  6KB  |  162 lines

  1. <?php
  2. /* $Id: mult_submits.inc.php,v 1.8 2001/12/06 19:35:14 loic1 Exp $ */
  3.  
  4.  
  5. /**
  6.  * Confirmation form if required or include of other scripts
  7.  */
  8. if (!empty($submit_mult)
  9.     && (!empty($selected_db) || !empty($selected_tbl) || !empty($selected_fld))) {
  10.  
  11.     if (get_magic_quotes_gpc()) {
  12.         $submit_mult  = stripslashes($submit_mult);
  13.     }
  14.     if (!empty($selected_db)) {
  15.         $selected     = $selected_db;
  16.         $what         = 'drop_db';
  17.     } else if (!empty($selected_tbl)) {
  18.         if ($submit_mult == $strPrintView) {
  19.             include('./tbl_printview.php');
  20.             exit();
  21.         } else {    
  22.             $selected = $selected_tbl;
  23.             $what     = (($submit_mult == $strDrop) ? 'drop_tbl' : 'empty_tbl');
  24.         }
  25.     } else {
  26.         $selected     = $selected_fld;
  27.         if ($submit_mult == $strDrop) {
  28.             $what     = 'drop_fld';
  29.         } else {
  30.             include('./tbl_alter.php');
  31.             exit();
  32.         }
  33.     }
  34.  
  35.     // Builds the query
  36.     $full_query     = '';
  37.     $selected_cnt   = count($selected);
  38.     for ($i = 0; $i < $selected_cnt; $i++) {
  39.         switch ($what) {
  40.             case 'drop_db':
  41.                 $full_query .= 'DROP DATABASE '
  42.                             . PMA_backquote(htmlspecialchars(urldecode($selected[$i])))
  43.                             . ';<br />';
  44.                 break;
  45.  
  46.             case 'drop_tbl':
  47.                 $full_query .= (empty($full_query) ? 'DROP TABLE ' : ', ')
  48.                             . PMA_backquote(htmlspecialchars(urldecode($selected[$i])))
  49.                             . (($i == $selected_cnt - 1) ? ';<br />' : '');
  50.                 break;
  51.  
  52.             case 'empty_tbl':
  53.                 $full_query .= 'DELETE FROM '
  54.                             . PMA_backquote(htmlspecialchars(urldecode($selected[$i])))
  55.                             . ';<br />';
  56.                 break;
  57.  
  58.             case 'drop_fld':
  59.                 if ($full_query == '') {
  60.                     $full_query .= 'ALTER TABLE '
  61.                                 . PMA_backquote(htmlspecialchars($table))
  62.                                 . '<br />  DROP '
  63.                                 . PMA_backquote(htmlspecialchars(urldecode($selected[$i])))
  64.                                 . ',';
  65.                 } else {
  66.                     $full_query .= '<br />  DROP '
  67.                                 . PMA_backquote(htmlspecialchars(urldecode($selected[$i])))
  68.                                 . ',';
  69.                 }
  70.                 if ($i == $selected_cnt-1) {
  71.                     $full_query = ereg_replace(',$', ';<br />', $full_query);
  72.                 }
  73.                 break;
  74.         } // end switch
  75.     }
  76.  
  77.     // Displays the form
  78.     echo $strDoYouReally . ' :<br />' . "\n";
  79.     echo '<tt>' . $full_query . '</tt> ?<br/>' . "\n";
  80.     ?>
  81. <form action="<?php echo $action; ?>" method="post">
  82.     <input type="hidden" name="lang" value="<?php echo $lang; ?>" />
  83.     <input type="hidden" name="server" value="<?php echo $server; ?>" />
  84.     <?php
  85.     echo "\n";
  86.     if ($action == 'db_details.php') {
  87.         echo '    <input type="hidden" name="db" value="' . $db . '" />' . "\n";
  88.     } else if ($action == 'tbl_properties.php') {
  89.         echo '    <input type="hidden" name="db" value="' . $db . '" />' . "\n";
  90.         echo '    <input type="hidden" name="table" value="' . $table . '" />' . "\n";
  91.     }
  92.     for ($i = 0; $i < $selected_cnt; $i++) {
  93.         echo '    <input type="hidden" name="selected[]" value="' . $selected[$i] . '" />' . "\n";
  94.     }
  95.     ?>
  96.     <input type="hidden" name="query_type" value="<?php echo $what; ?>" />
  97.     <input type="submit" name="mult_btnDrop" value="<?php echo $strYes; ?>" />
  98.     <input type="submit" name="mult_btnDrop" value="<?php echo $strNo; ?>" />
  99. </form>
  100.     <?php
  101.     echo"\n";
  102.  
  103.     include('./footer.inc.php');
  104.     exit();
  105. }
  106.  
  107. /**
  108.  * Executes the query
  109.  */
  110. else if ((get_magic_quotes_gpc() && stripslashes($mult_btnDrop) == $strYes)
  111.          || $mult_btnDrop == $strYes) {
  112.  
  113.     $sql_query      = '';
  114.     $selected_cnt   = count($selected);
  115.     for ($i = 0; $i < $selected_cnt; $i++) {
  116.         switch ($query_type) {
  117.             case 'drop_db':
  118.                 $a_query   = 'DROP DATABASE '
  119.                            . PMA_backquote(urldecode($selected[$i]));
  120.                 $reload    = 1;
  121.                 break;
  122.  
  123.             case 'drop_tbl':
  124.                 $sql_query .= (empty($sql_query) ? 'DROP TABLE ' : ', ')
  125.                            . PMA_backquote(urldecode($selected[$i]))
  126.                            . (($i == $selected_cnt-1) ? ';' : '');
  127.                 $reload    = 1;
  128.                 break;
  129.  
  130.             case 'empty_tbl':
  131.                 $a_query   = 'DELETE FROM '
  132.                            . PMA_backquote(urldecode($selected[$i]));
  133.                 break;
  134.  
  135.             case 'drop_fld':
  136.                 $sql_query .= (empty($sql_query) ? 'ALTER TABLE ' . PMA_backquote($table) : ',')
  137.                            . ' DROP ' . PMA_backquote(urldecode($selected[$i]))
  138.                            . (($i == $selected_cnt-1) ? ';' : '');
  139.                 break;
  140.         } // end switch
  141.  
  142.         // All "DROP TABLE" and "DROP FIELD" statements will be run at once below
  143.         if ($query_type != 'drop_tbl' && $query_type != 'drop_fld') {
  144.             $sql_query .= $a_query . ';' . "\n";
  145.  
  146.             if ($query_type != 'drop_db') {
  147.                 mysql_select_db($db);
  148.             }
  149.             $result = @mysql_query($a_query) or PMA_mysqlDie('', $a_query, FALSE, $err_url);
  150.         } // end if
  151.     } // end for
  152.  
  153.     if ($query_type == 'drop_tbl' || $query_type == 'drop_fld') {
  154.         mysql_select_db($db);
  155.         $result = @mysql_query($sql_query) or PMA_mysqlDie('', '', FALSE, $err_url);
  156.     }
  157.  
  158.     PMA_showMessage($strSuccess);
  159. }
  160.  
  161. ?>
  162.