home *** CD-ROM | disk | FTP | other *** search
/ PC World 2001 August / PCWorld_2001-08_cd.bin / Komunikace / phptriad / phptriadsetup2-11.exe / htdocs / phpMyAdmin / tbl_change.php < prev    next >
PHP Script  |  2000-08-20  |  4KB  |  137 lines

  1. <?php
  2. /* $Id: tbl_change.php,v 1.22 2000/08/05 15:53:34 tobias Exp $ */
  3.  
  4. require("header.inc.php");
  5.  
  6. $table_def = mysql_db_query($db, "SHOW FIELDS FROM $table");
  7.  
  8. if(isset($primary_key))
  9. {
  10.     $primary_key = stripslashes($primary_key);
  11.     $result = mysql_db_query($db, "SELECT * FROM $table WHERE $primary_key");
  12.     $row = mysql_fetch_array($result);
  13. }
  14. else
  15. {
  16.     $result = mysql_db_query($db, "SELECT * FROM $table LIMIT 1");
  17. }
  18.  
  19. ?>
  20. <form method="post" action="tbl_replace.php">
  21. <input type="hidden" name="server" value="<?php echo $server;?>">
  22. <input type="hidden" name="db" value="<?php echo $db;?>">
  23. <input type="hidden" name="table" value="<?php echo $table;?>">
  24. <input type="hidden" name="goto" value="<?php echo $goto;?>">
  25. <input type="hidden" name="sql_query" value="<?php echo isset($sql_query) ? $sql_query : "";?>">
  26. <input type="hidden" name="pos" value="<?php echo isset($pos) ? $pos : 0;?>">
  27. <?php
  28.  
  29. if(isset($primary_key))
  30.     echo '<input type="hidden" name="primary_key" value="' . htmlspecialchars($primary_key) . '">' . "\n";
  31. ?>
  32. <table border="<?php echo $cfgBorder;?>">
  33. <tr>
  34. <th><?php echo $strField; ?></th>
  35. <th><?php echo $strType; ?></th>
  36. <th><?php echo $strFunction; ?></th>
  37. <th><?php echo $strValue; ?></th>
  38. </tr>
  39. <?php
  40.  
  41. for($i=0;$i<mysql_num_rows($table_def);$i++)
  42. {
  43.     $row_table_def = mysql_fetch_array($table_def);
  44.     $field = $row_table_def["Field"];
  45.     if(($row_table_def['Type']  == "datetime") AND ($row[$field] == ""))
  46.         $row[$field] = date("Y-m-d H:i:s", time());
  47.     $len = @mysql_field_len($result,$i);
  48.  
  49.     $bgcolor = $cfgBgcolorOne;
  50.     $i % 2  ? 0: $bgcolor = $cfgBgcolorTwo;
  51.     echo "<tr bgcolor=".$bgcolor.">\n";
  52.     echo "<td>$field</td>\n";
  53.     switch (ereg_replace("\\(.*", "", $row_table_def['Type']))
  54.     {
  55.         case "set":
  56.             $type = "set";
  57.             break;
  58.         case "enum":
  59.             $type = "enum";
  60.             break;
  61.         default:
  62.             $type = $row_table_def['Type'];
  63.             break;
  64.     }
  65.     echo "<td>$type</td>\n";
  66.     echo "<td><select name=\"funcs[$field]\"><option>\n";
  67.     for($j=0; $j<count($cfgFunctions); $j++)
  68.         echo "<option>$cfgFunctions[$j]\n";
  69.     echo "</select></td>\n";
  70.     if(isset($row) && isset($row[$field]))
  71.     {
  72.         $special_chars = htmlspecialchars($row[$field]);
  73.         $data = $row[$field];
  74.     }
  75.     else
  76.     {
  77.         $data = $special_chars = "";
  78.     }
  79.  
  80.     if(strstr($row_table_def["Type"], "text"))
  81.     {
  82.         echo "<td><textarea name=fields[$field] style=\"width:$cfgMaxInputsize;\" rows=5>$special_chars</textarea></td>\n";
  83.     }
  84.     elseif(strstr($row_table_def["Type"], "enum"))
  85.     {
  86.         $set = str_replace("enum(", "", $row_table_def["Type"]);
  87.         $set = ereg_replace("\\)$", "", $set);
  88.  
  89.         $set = split_string($set, ",");
  90.         echo "<td><select name=fields[$field]>\n";
  91.         echo "<option value=\"\">\n";
  92.         for($j=0; $j<count($set);$j++)
  93.         {
  94.             echo '<option value="'.substr($set[$j], 1, -1).'"';
  95.             if($data == substr($set[$j], 1, -1) || ($data == "" && substr($set[$j], 1, -1) == $row_table_def["Default"]))
  96.                 echo " selected";
  97.             echo ">".htmlspecialchars(substr($set[$j], 1, -1))."\n";
  98.         }
  99.         echo "</select></td>";
  100.     }
  101.     elseif(strstr($row_table_def["Type"], "set"))
  102.     {
  103.         $set = str_replace("set(", "", $row_table_def["Type"]);
  104.         $set = ereg_replace("\)$", "", $set);
  105.  
  106.         $set = split_string($set, ",");
  107.         for($vals = explode(",", $data); list($t, $k) = each($vals);)
  108.             $vset[$k] = 1;
  109.         $size = min(4, count($set));
  110.         echo "<td><input type=\"hidden\" name=\"fields[$field]\" value=\"\$set\$\">";
  111.         echo "<select name=field_${field}[] size=$size multiple>\n";
  112.         for($j=0; $j<count($set);$j++)
  113.         {
  114.             echo '<option value="'.htmlspecialchars(substr($set[$j], 1, -1)).'"';
  115.             if($vset[substr($set[$j], 1, -1)])
  116.                 echo " selected";
  117.             echo ">".htmlspecialchars(substr($set[$j], 1, -1))."\n";
  118.         }
  119.         echo "</select></td>";
  120.     }
  121.     else
  122.     {
  123.         echo "<td><input type=text name=fields[$field] value=\"".$special_chars."\" style=\"width:$cfgMaxInputsize;\" maxlength=$len></td>";
  124.     }
  125.     echo "</tr>\n";
  126. }
  127.  
  128. echo "</table>";
  129.  
  130. ?>
  131.   <p>
  132.   <input type="submit" value="<?php echo $strSave; ?>">
  133.   </form>
  134.  
  135. <?php
  136. require ("footer.inc.php");
  137. ?>