mantıken bu şekilde olabilir. testdb1 den testdb10 'a kadar oluşturacaktır.
edit: diğer fonksiyonları da ekledim.
create_db: db'yi oluşturur
remove_db: db'yi siler
flush_db: db içindeki tabloları siler
<?php
function create_db($server,$user,$pass,$db){
$link = mysqli_connect($server, $user, $pass);
if (!$link) {
die('Hata: bağlanılamadı.');
}
$db_selected = mysqli_select_db($link, $db);
if (!$db_selected) {
$sql = 'CREATE DATABASE '.$db.' CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;';
if (mysqli_query($link, $sql)) {
echo "".$db." adlı veritabanı oluşturuldu.<br>";
} else {
echo 'Hata: ' . mysqli_error($link) . "\n";
}
}
mysqli_close($link);
}
function remove_db($server,$user,$pass,$db){
$link = mysqli_connect($server, $user, $pass);
if (!$link) {
die('Hata: bağlanılamadı.');
}
$db_selected = mysqli_select_db($link, $db);
if ($db_selected) {
$sql = 'DROP DATABASE '.$db.';';
if (mysqli_query($link, $sql)) {
echo "".$db." adlı veritabanı silindi.<br>";
} else {
echo 'Hata: ' . mysqli_error($link) . "\n";
}
}else {
echo 'Hata: ' . mysqli_error($link) . "\n";
}
}
function flush_db($server,$user,$pass,$db){
$mysqli = new mysqli($server, $user, $pass, $db);
$mysqli->query('SET foreign_key_checks = 0');
if ($result = $mysqli->query("SHOW TABLES"))
{
while($row = $result->fetch_array(MYSQLI_NUM))
{
$remove = $mysqli->query('DROP TABLE IF EXISTS '.$row[0]);
if ($remove) {
echo "".$row[0]." adlı tablo silindi.<br>";
}
}
}
$mysqli->query('SET foreign_key_checks = 1');
$mysqli->close();
}
//flush_db('localhost','root','','testdb1');
$limit = 10;
for ( $i = 1; $i <= $limit; $i++ ){
//create_db('localhost','root','','testdb'.$i.'');
//remove_db('localhost','root','','testdb'.$i.'');
}
?>