在javascript中执行php数据库代码
为了说明我的问题描述,这里有一个列表,其中可以附加一个或多个任务在javascript中执行php数据库代码,javascript,php,ajax,Javascript,Php,Ajax,为了说明我的问题描述,这里有一个列表,其中可以附加一个或多个任务 当用户试图删除列表时,php代码会检查mysql“tasks”表,查看是否有任何任务附加到要删除的列表 如果有/有任务,则会提示用户弹出一个弹出窗口,说明删除列表也会删除所有附加的任务,并要求用户确认 在OK上,将继续并删除所有任务,然后删除列表。。。。在取消时,将不执行任何操作 我设计了如下的东西 <?php try { $list_id = $_GET['id']; //Instantiate Dat
<?php
try
{
$list_id = $_GET['id'];
//Instantiate Database object
$database = new Database;
//check if task exist for the list to be deleted
$database->query('SELECT * FROM tasks WHERE list_id = :id');
$database->bind(':id',$list_id);
$database->single();
$rc = $database->rowCount();
if($rc > 0)
{
?>
<script type="text/javascript">
if(confirm('The list has one or more task attached to it. Deleting the list will also delete the attached tasks. Do you want to proceed ?'))
{
//prepare and execute delete tasks
$database->query('DELETE FROM tasks WHERE list_id = :id');
$database->bind(':id',$list_id);
$database->execute();
//prepare and execute delete lists
$database->query('DELETE FROM lists WHERE id = :id');
$database->bind(':id',$list_id);
$database->execute();
if($database->rowCount() > 0)
{
header("Location:index.php?msg=listdeleted");
}
}
</script>
<?php
}
}
catch(Exception $e)
{
echo '<p>'.$e->getMessage().'</p>';
}
?>
if(确认('列表附加了一个或多个任务。删除列表也将删除附加的任务。是否继续?'))
{
//准备并执行删除任务
$database->query('DELETE FROM tasks WHERE list_id=:id');
$database->bind(':id',$list\u id);
$database->execute();
//准备并执行删除列表
$database->query('DELETE FROM list,其中id=:id');
$database->bind(':id',$list\u id);
$database->execute();
如果($database->rowCount()>0)
{
标题(“位置:index.php?msg=listdeleted”);
}
}
问题是-代码什么都不做。没有错误。没什么。
我在谷歌上搜索了一下,发现大多数人都建议使用ajax调用来实现这一点。我不懂阿贾克斯。所以,为了做这一点点事情,我现在必须投入相当多的时间。所以,我需要以下两件事-
选择选项(a).是的,正如大家所说,ajax将是一种很好的方法 确认警报正在工作?
在js函数内部,如果没有“<?php..?>”的话,就不能像以前那样放置php代码。是的,ajax是您的解决方案……谢谢@Qaisar SattiThanks@MaggsWeb。。。谢谢你的选择(b)。因为我现在有点匆忙,所以现在这样对我来说很容易。但正如你们所建议的,我会的,但正如你们和其他人也建议使用AJAX,我肯定会这么做。武器越多,武器库越好:)