0

所以我得到了这个代码:

<?php
include('dbconnect.php');
if(isset($_POST['remover']))
{
$nome = $_POST['nome'];
$result = mysql_query("select imagem from sitio WHERE id_sitio='".$nome."'");
$query=mysql_query("DELETE FROM sitio WHERE id_sitio='".$nome."'") or die (mysql_error());
if($query === true)
  {
    $sucesso = '<span  class="yes">Sitio removido com sucesso!</span>';
    echo $sucesso;
    echo $result;
  }
  else
    {
        $erro = '<span class="error">Ocorreu um erro!</span>';
        echo $retorno;
    }
}
?>

我希望它从数据库中选择图像名称。该脚本从数据库中删除数据,因此查询正常。但是 $result 不返回图像的名称。它返回资源 id#10。我想这样做然后取消图像的链接。我只是用echo看看是否正确,结果不是数据库上的..

有人能帮我吗?

4

1 回答 1

1

您尚未收集第一个查询的结果。mysql_query() 使用选择查询运行时会生成一个结果集,有点像一个只有您在查询中指定的字段的临时表。这可以包含一行,就像您的一样,也可以包含多行。一旦 mysql_query() 成功运行,您必须使用任一方法一次从结果集中获取数据

mysql_fetch_object()
mysql_fetch_array()
mysql_fetch_assoc()
mysql_fetch_row()

每个都以稍微不同的格式传递行,即数组或对象或仅单个字段。

在此处查看手册PHP mysql 函数

试试这个代码,例如:

<?php
    include('dbconnect.php');
    if(isset($_POST['remover'])) {
        $nome = $_POST['nome'];
        $result = mysql_query("select imagem from sitio WHERE id_sitio='".$nome."'");
        // collect the data from the previous query
        $sitio = mysql_fetch_object($result);

        $query=mysql_query("DELETE FROM sitio WHERE id_sitio='".$nome."'") or die (mysql_error());
        if($query === true) {
            echo '<span  class="yes">Sitio removido com sucesso!</span>';
            echo $sitio->imagem;
        }  else  {
            echo '<span class="error">Ocorreu um erro!</span>';
        }
    }
?>
于 2013-06-27T10:51:30.727 回答