Я долго искал и не нашел правильного ответа на этот вопрос, что я хочу удалить только одну таблицу из базы данных. так что у меня есть это:
<?php
$database_name = "XXXXXX";
if (!$link = mysql_connect('XXXXXX', 'XXXXXX', 'XXXXXX')) {
die("Could not connect: " . mysql_error());
}
$sql = "SHOW TABLES FROM $database_name";
if($result = mysql_query($sql)){
while($row = mysql_fetch_row($result)){
$found_tables[]=$row[0];
}
}
else{
die("Error, could not list tables. MySQL Error: " . mysql_error());
}
foreach($found_tables as $table_name){
$sql = "DROP TABLE $database_name.$table_name";
if($result = mysql_query($sql)){
echo "Success - table $table_name deleted.";
}
else{
echo "Error deleting $table_name. MySQL Error: " . mysql_error() . "";
}
}
?>
он перечислит все таблицы из базы данных и удалит все темы, но я хочу удалить их одну за другой. что-то вроде этого:
delete.php? пункт = ONE_OF_TABLE
удалить таблицу по строке запроса с именем таблицы или …
Сначала взгляните на функция mysql устарела
Тогда ваш SQL-синтаксис должен быть отредактирован WHERE table_name LIKE 'ONE_OF_TABLE'
или замените ONE_OF_TABLE на $ _GET [‘item’]
Размещенный код делает именно то, что вы хотите — он удаляет таблицы одну за одной в цикле. Если вы имеете в виду — «Показать таблицы конечному пользователю, ТОГДА отбросить их одну за другой» — вы должны распечатать результат запроса SHOW TABLES и ожидать какого-то другого взаимодействия с пользователем.