66 lines
2.0 KiB
PHP
66 lines
2.0 KiB
PHP
<?php
|
|
include "db.php";
|
|
|
|
$charSet = "utf8";
|
|
$collation = "utf8_general_ci";
|
|
|
|
$databases = array(
|
|
"hotlunch_20200413",
|
|
"hotlunch_20200502",
|
|
"hotlunch_20200831",
|
|
"hotlunch_20201011",
|
|
"hotlunch_20210313",
|
|
"hotlunch_20210427"
|
|
);
|
|
|
|
|
|
for ($i = 0; $i < count($databases); $i++) {
|
|
$database = $databases[$i];
|
|
db_query("USE $database");
|
|
|
|
$tables = db_query("SHOW TABLES");
|
|
while ($row = db_fetch_array($tables)) {
|
|
$tableName = $row[0];
|
|
echo("$tableName\n");
|
|
|
|
// if ($tableName != 'users') continue;
|
|
|
|
$columns = db_query("SHOW COLUMNS FROM $tableName");
|
|
while ($row = db_fetch_array($columns)) {
|
|
$columnName = $row['Field'];
|
|
$columnType = $row['Type'];
|
|
if (strpos($columnType, "enum") !== false) {
|
|
$count = db_getVal("SELECT count(*) FROM $tableName WHERE $columnName IS NULL OR $columnName = ''");
|
|
if ($count) {
|
|
echo("$columnName $columnType\n");
|
|
$values = str_replace("enum(","",$columnType);
|
|
$values = str_replace(")","",$values);
|
|
$Values = explode(',',$values);
|
|
|
|
for ($i = 0; $i < count($Values); $i++) {
|
|
$value = str_replace("'","",$Values[$i]);
|
|
|
|
$ans = readline(" - Select This Value ($value): ");
|
|
if (strlen($ans) > 0 && $ans == 'y') {
|
|
$query = "UPDATE $tableName SET $columnName = '$value' WHERE $columnName IS NULL OR $columnName = ''";
|
|
db_query($query);
|
|
|
|
$fp = fopen("fix.sql","a");
|
|
fwrite($fp,$query.";\n");
|
|
fclose($fp);
|
|
|
|
$num = db_affected_rows();
|
|
echo(" -> $num\n");
|
|
echo("\n");
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
echo("\n");
|
|
}
|
|
}
|
|
|
|
?>
|