【问题标题】:delete row of database from a view list that displayed by looping从通过循环显示的视图列表中删除数据库行
【发布时间】:2015-12-02 07:13:55
【问题描述】:

我有一个通过 php 显示的视图列表

$quedchan=pg_query("SELECT agent.agentname,  agent.onlinename, agent.channel, agentgroup.leadername FROM Agent LEFT JOIN agentgroup on agent.agentid=agentgroup.agentid where agent.channel like '%$DCH%'order by agent.channel");
    echo "<td class=\"form1\" align=\"center\" > Number </td>";
    echo "<td class=\"form1\" align=\"center\" > Agent Name </td>";
    echo "<td class=\"form1\" align=\"center\"> Agent Online Name </td>";
    echo "<td class=\"form1\" align=\"center\"> Agent Channel </td>";
    echo "<td class=\"form1\" align=\"center\"> Agent Group </td>";
    echo "<td class=\"form1\" align=\"center\">  </td>";

$counttttt=1;
    While($row3=pg_fetch_array($quedchan))
echo "<tr>";
        echo "<td class=\"forma\" align=\"center\"> ".$counttttt++." </td>";
        echo "<td class=\"forma\"name=\"dement\" align=\"left\"style=\"padding-left:10%;\"> ".$row3['agentname']." </td>";
        echo "<td class=\"forma\" align=\"left\"style=\"padding-left:8%;\"> ".$row3['onlinename']." </td>";
        echo "<td class=\"forma\" align=\"left\"style=\"padding-left:8%;\"> ".$row3['channel']." </td>";
        echo "<td class=\"forma\"align=\"left\"style=\"padding-left:6%;\"> ".$row3['leadername']." </td>";
        echo "<td class=\"forma\" align=\"center\"><img src=\"image\\delete.png\" width=\"20px\" height=\"20px\" style=\"padding-left:22%;cursor:pointer;\"/></td>
        </tr>";     

而且我想做一个删除功能,这样一行的删除图片就可以删除它的一行。我通过为 agentname 行命名,name=\"dement\"。为了捕获我要删除的值。我在另一个名为 delete.php 的页面中使用 php :

<?php 
session_start();
include 'connect.php';

$dagname=$_GET['dement'];
$queda="DELETE FROM Agent where agentname='$dagname'";
$result=pg_query($queda);


if($result)
{   
    $_SESSION['delMessage11']='Selected Agent is successfully deleted!';
    header('Location: Dagent.php');
}
else
{
    echo "ERROR!"; 
}

?>

它不起作用。我尝试使用来自http://www.phpeasystep.com/mysql/7.html 的引用。它说我可以获得从地址栏发送的 id 值(我现在用 agentname 替换)。我实现它并成为这个

echo "<td class=\"form2\" align=\"center\"><a href=\"delete.php?agentname=<?    echo ".$row3['agentname'].";?>\">\"<img src=\"image\\delete.png\" onclick=\"dela();\" width=\"20px\" height=\"20px\" style=\"padding-left:22%;cursor:pointer;\"/></a></td>
                    </tr>";

但它不起作用。有什么帮助吗?谢谢

【问题讨论】:

  • 没有“不起作用”之类的东西。它做了一些事情而你没有提到什么。
  • @Jakub 它不会删除行
  • 不,不是这样。行没有被删除,当然。但是发生了什么?你收到错误了吗?是不是在数据库中没有找到该行并且没有被删除?查询甚至运行了吗?查询在 psql 中有效吗?
  • @jakub。查询运行。我没有错误。数据库中的行仍然存在并且没有被删除。该查询在 psql 中运行良好

标签: php postgresql row sql-delete


【解决方案1】:

为什么不使用方法="get"?它更简单。因此,当单击按钮时,“某事”(根据您的需要)将保存在一个变量中并直接进入一个由删除查询填充的新页面,并使用$_GET 捕获变量(由“某事”填充') 用于支持查询和属性。当您进入新页面时,您会看到链接,它会是这样的

DATA_NAME.php?$something.

我希望这可以帮助你。 :)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多