УСЕЧЬ таблицу по нажатию кнопки


Почему-то мой запрос не работает, когда я нажимаю кнопку. То, что я пытаюсь сделать, - это УСЕЧЬ таблицу, когда пользователь нажимает кнопку.

if(isset($_POST['extract'])){

@mysql_query("TRUNCATE TABLE temp");

}

Я также попробовал это:

if(isset($_POST['extract'])){

$myquery = mysql_query("TRUNCATE TABLE temp");

}

Почему он не выполняется?

Это html-код:

<input type="submit" value="Extract CSV file" name="extract">
Author: Brian Tompsett - 汤莱恩, 2014-01-15

2 answers

Итак, вот как бы подойти к отладке этой проблемы:

1) Проверьте, действительно ли форма отправлена. Поместите это в начало вашего PHP-файла (примечание: только для отладки)

echo "I have reached my destination";
die();

2) Проверьте, отправляете ли вы сообщение по ПОЧТЕ или ПОЛУЧАЕТЕ. Или проще, замените $_POST на $_REQUEST, который содержит как $_POST, так и $_GET.

if(isset($_REQUEST['extract'])){

3) Убедитесь, что соединение с базой данных открыто.

4) Предоставьте вашему сценарию средства, позволяющие сообщить вам, выполнен ли запрос успешно

$myquery = mysql_query("TRUNCATE TABLE temp") or die("Error: ".mysql_error());

5) Убедитесь, что вы ищете правильное место для изменений

You would be surprised how easy it is to get confused with multiple databases opened.
Double check the ip address of your DB server, your DB and table name and contents.

Один из вышеперечисленных 5 шагов подскажет вам, что пошло не так.

 3
Author: user1853181, 2014-01-15 07:27:01

Пожалуйста, следуйте следующему коду. Это вам поможет.

<?php 
mysql_connect("Host Name", "User Name", "User Password") or die("Connection Failed"); 
mysql_select_db("DataBase Name")or die("Connection Failed"); 
$temptable = $_POST['temptable']; 
$query = "truncate table $temptable";
 if(mysql_query($query)){ 
      echo "table empty";
  } else{ 
      echo "fail";
  } ?>
 3
Author: , 2014-01-15 07:36:58