Created
February 21, 2023 23:37
-
-
Save dilakv/16508a76318392daf4b0e40435326c8e to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
ini_set('memory_limit', '0'); | |
// Configuración de la base de datos | |
$db_host = "mysql.service.bcdev"; | |
$db_user = "root"; | |
$db_pass = "magic"; | |
function get_databases() { | |
global $db_host, $db_user, $db_pass; | |
// Conexión al servidor de la base de datos | |
$dsn = "mysql:host=$db_host;"; | |
$pdo = new PDO($dsn, $db_user, $db_pass); | |
$bases_de_datos = []; | |
// Obtener una lista de todas las bases de datos | |
$stmt = $pdo->query("SHOW DATABASES"); | |
while ($row = $stmt->fetch()) { | |
$bases_de_datos[] = $row['Database']; | |
} | |
// Cerrar la conexión a la base de datos | |
$pdo = null; | |
return $bases_de_datos; | |
} | |
function open_mysql($db_name) { | |
global $db_host, $db_user, $db_pass; | |
// Conexión a la base de datos | |
$mysqli = new mysqli($db_host, $db_user, $db_pass, $db_name); | |
// Verificar la conexión | |
if ($mysqli->connect_errno) { | |
echo "Falló la conexión a la base de datos: " . $mysqli->connect_error; | |
exit(); | |
} | |
return $mysqli; | |
} | |
function get_tables($mysqli) | |
{ | |
// Obtener todas las tablas de la base de datos | |
$tables = array(); | |
$result = $mysqli->query("SHOW TABLES"); | |
while ($row = $result->fetch_array()) { | |
$tables[] = $row[0]; | |
} | |
return $tables; | |
} | |
function iterate_in_tables($tables, $mysqli, $loquebuscas) | |
{ | |
foreach ($tables as $table) { | |
$result = $mysqli->query("SELECT * FROM $table"); | |
while ($row = $result->fetch_assoc()) { | |
search_in_row($table, $row); | |
} | |
} | |
} | |
function search_in_row($table, $row) { | |
foreach ($row as $key => $value) { | |
echo "."; | |
// Si se encuentra la cadena, mostrar la tabla y la columna | |
if (strpos($value, "bluesnap") !== false) { | |
echo "<br>Tabla: $table, Columna: $key, Valor: $value<br>"; | |
} | |
} | |
} | |
function search($loquebuscas) | |
{ | |
$bases_de_datos = get_databases(); | |
foreach($bases_de_datos as $bd) | |
{ | |
echo "-> BD: $bd <br />"; | |
$mysqli = open_mysql($bd); | |
$tablas = get_tables($mysqli); | |
iterate_in_tables($tablas, $mysqli, $loquebuscas); | |
$mysqli->close(); | |
echo "<br> ---------------------- <br>"; | |
} | |
} | |
search("gato negro"); | |
?> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment