Php 弄清楚为什么我得到一个资源ID#5错误

Php 弄清楚为什么我得到一个资源ID#5错误,php,Php,这是我代码的一部分,echo是用来测试值的,它给了我资源ID#5 我刚刚开始编程,最近在使用数据库时看到很多资源ID输出/错误 有人能纠正我代码中的错误吗?并解释为什么它没有给我所需的输出?你是想回显$counter$id是一个资源,因为 如果您试图从查询中获取id列的值,则需要使用例如 以下是一段摘录: 请注意,在我的代码中,我还向查询中添加了限制1,因为您似乎只对获取一行感兴趣。这不是一个错误。这类似于在不指定索引的情况下打印数组,并且只打印字符串“array”。您可以使用诸如mysql\u

这是我代码的一部分,echo是用来测试值的,它给了我资源ID#5

我刚刚开始编程,最近在使用数据库时看到很多资源ID输出/错误


有人能纠正我代码中的错误吗?并解释为什么它没有给我所需的输出?

你是想
回显$counter
<代码>$id是一个资源,因为

如果您试图从查询中获取
id
列的值,则需要使用例如

以下是一段摘录:


请注意,在我的代码中,我还向查询中添加了
限制1
,因为您似乎只对获取一行感兴趣。

这不是一个错误。这类似于在不指定索引的情况下打印数组,并且只打印字符串“array”。您可以使用诸如mysql\u fetch\u array()之类的函数访问该资源中包含的实际数据(可以将其视为数据的集合)

事实上,如果这里有错误,$id的值将不是资源。在使用应该包含资源的变量之前,我通常使用is_resource()函数来验证一切是否正常

我想你打算做的是:

$result = mysql_query("SELECT id FROM users WHERE firstname='$submittedfirstname' AND lastname='$submittedlastname' AND email='$submittedemail'") or die(mysql_error());
if(is_resource($result) and mysql_num_rows($result)>0){
    $row = mysql_fetch_array($result);
    echo $row["id"];
    }
你在找什么

while ($row = mysql_fetch_array($id)) {
 echo $row['id'];
}

$kode_-gel=substr($\u-GET['gel',0,3); $no_-gel=substr($u-GET['gel'],3,5)


在代码的后面部分,当我看到资源id#5被保存到我的db中时,我回显$id以查看id中的字符串是什么。所以我在查找故障所在,并回显$id,它显示资源id#5$计数器用于代码Phoenix的其余部分。我真的想知道我在哪里犯了错误:)比我想象的要复杂一点。我将从现在开始适应它。谢谢你的快速回复和解释:)我听懂了你90%的话。因为我只取单个字段(即id)并将其分配给$id,所以我无法理解错误在哪里。当然,在处理删除所有字段时,这一点很重要。好奇我应该在这里使用什么代码。你知道它是一个字段,但函数没有。无论资源有0行还是1000行,它都将以相同的方式处理该资源。我添加了一些代码,从资源中获取一行(如果结果中有多行,则为第一行,我们可以保证不会有),并打印该行中id列的值。基本上是的,但我需要字段id的值,只有当firstname,lastname和email与表中的相应字段匹配。如果您刚刚开始编程,就不应该学习mysql_*函数。学习PDO或mysqli。我有这个,但那是因为我的代码中有一个旧的print_r($my->adapter)。我把它注释掉了。
$result =
  mysql_query("SELECT id FROM users WHERE firstname='$submittedfirstname' AND lastname='$submittedlastname' AND email='$submittedemail' LIMIT 1")
    or die(mysql_error());

if( $row = mysql_fetch_array($result, MYSQL_ASSOC) )
{
  $id = $row['id'];
}
else
{
  // No records matched query.
}
$result = mysql_query("SELECT id FROM users WHERE firstname='$submittedfirstname' AND lastname='$submittedlastname' AND email='$submittedemail'") or die(mysql_error());
if(is_resource($result) and mysql_num_rows($result)>0){
    $row = mysql_fetch_array($result);
    echo $row["id"];
    }
while ($row = mysql_fetch_array($id)) {
 echo $row['id'];
}
$cek = mysql_query("SELECT id_arisan 
                    FROM arisan WHERE kode_gel = '".$kode_gel."'
                    AND no_gel = '".$no_gel."'");
       $result = mysql_fetch_array($cek);
       $id = $result['id_arisan'];
   header("location: ../angsuran1_admin.php?id=".$id);