【发布时间】:2023-03-12 11:48:01
【问题描述】:
我正在尝试在数据库中创建一个表。如果表已经存在,我想让ajax留言说这个表已经存在。
这是我目前所拥有的:
JS
<script>
// Add table
$(document).ready(function() {
$("#sender_table").find(".add-icon").click(function() {
var tableName = $(this).attr("data-tablename");
$.ajax({
type: 'post',
url: "<?= base_url(); ?>table/moveTable/",
data: "table_name=" + $(this).attr("data-tablename"),
success: function(r) {
$.notify(tableName + " was successfully added.", "success");
}
});
});
});
</script>
PHP
public function moveTable() {
$this->load->model('Connection_model');
$sTablename = $this->input->post('table_name', true);
$db1 = $this->session->userdata('receiver_db');
$db2 = $this->session->userdata('sender_db');
// Clone table
$this->Connection_model->get_custom_db('receiver')->query("CREATE TABLE $db1.$sTablename LIKE $db2.$sTablename");
// Copy data
$query = $this->Connection_model->get_custom_db('sender')->get($sTablename);
foreach ($query->result() as $row) {
$this->Connection_model->get_custom_db('receiver')->insert($sTablename, $row);
}
// Check if table exists
if ($this->Connection_model->get_custom_db('receiver')->table_exists($sTablename)) {
return true;
}
else {
return false;
}
}
当前消息始终是“表名已成功添加”,即使表已经存在。
【问题讨论】:
标签: php ajax codeigniter