[PHP] mysql_num_rows() expects parameter 1 to be resource

02/08/2015 20:23 Meikbrosoft#1
hey,

folgendes Problem: ich habe diesen "tut" benutzt, um seine Registrierung zu bestätigen per mail: [Only registered and activated users can see links. Click Here To Register...]

bekomme jedoch diesen fehler wenn ich einen Account aktivieren möchte:

Quote:
Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in C:\Program Files (x86)\XAMPP\htdocs\Reinforcement\reg-aktivieren.php on line 19
hier der quelltext:

PHP Code:
<?php

$DatabaseHost 
"localhost";
$DatabaseUser "root";
$DatabasePassword "";
$Database "reinforcement";
$TableAktivierung "login";

if(
$_REQUEST['ID'] && $_REQUEST['Aktivierungscode'])
{
    
$DatabasePointer mysql_connect($DatabaseHost$DatabaseUser$DatabasePassword);
    
mysql_select_db($Database$DatabasePointer);

    
$_REQUEST['ID']               = mysql_real_escape_string($_REQUEST['ID']);
    
$_REQUEST['Aktivierungscode'] = mysql_real_escape_string($_REQUEST['Aktivierungscode']);

    
$ResultPointer mysql_query("SELECT ID FROM $TableAktivierung WHERE ID = '".$_REQUEST['ID']."' AND Aktivierungscode = '".$_REQUEST['Aktivierungscode']."'"$DatabasePointer);

    if(
mysql_num_rows($ResultPointer) > 0)
    {
        @
mysql_query("UPDATE $TableAktivierung SET Aktiviert = 'Ja' WHERE ID = '".$_REQUEST['ID']."'"$DatabasePointer);
        echo
"Vielen Dank für Ihre Registrierung. Der Aktivierungsprozess ist nun abgeschlossen.";
    }
}

?>
kann mir jemand helfen?, ich vermute, dass es an $ResultPointer liegt, denn diese Variable besitzt keinen Wert.

mfg

EDIT:
Quote:
if (!$ResultPointer){
die(mysql_error());
}
hab ich mal eingefügt: sagt mir das er AKTIVIERUNGSCODE nicht findet... habs in meiner datenbank "code" benannt, jedoch klappt es immer noch nicht, spuckt nun das aus:
Quote:
Notice: Undefined index: code in C:\Program Files (x86)\XAMPP\htdocs\Reinforcement\reg-aktivieren.php on line 9

EDIT 2: ich hab den fehler gefunden, man war ich doof^^ hier der funktionierende code:
PHP Code:
<?php

$DatabaseHost 
"localhost";
$DatabaseUser "root";
$DatabasePassword "";
$Database "reinforcement";
$TableAktivierung "login";

if(
$_REQUEST['ID'] && $_REQUEST['Aktivierungscode'])
{
    
$DatabasePointer mysql_connect($DatabaseHost$DatabaseUser$DatabasePassword);
    
mysql_select_db($Database$DatabasePointer);

    
$_REQUEST['ID']               = mysql_real_escape_string($_REQUEST['ID']);
    
$_REQUEST['Aktivierungscode'] = mysql_real_escape_string($_REQUEST['Aktivierungscode']);

    
$ResultPointer mysql_query("SELECT ID FROM $TableAktivierung WHERE ID = '".$_REQUEST['ID']."' AND code = '".$_REQUEST['Aktivierungscode']."'"$DatabasePointer);
    if (!
$ResultPointer){
    die(
mysql_error());
    }
    if(
mysql_num_rows($ResultPointer) > 0)
    {
        @
mysql_query("UPDATE $TableAktivierung SET Aktiviert = 'Ja' WHERE ID = '".$_REQUEST['ID']."'"$DatabasePointer);
        echo
"Vielen Dank für Ihre Registrierung. Der Aktivierungsprozess ist nun abgeschlossen.";
    }
}

?>
#closerequest
02/08/2015 20:48 snow#2
#closed (on request)