Hallo! 
Ich hab eine eigene MySQL-Klasse, in der ich diverse Funktionen habe.
Eine davon ist auch num_rows(), welche den PHP-Befehl mysql_num_rows ausführt.
Mein Problem ist nun, dass ich dem PHP-Befehl bekanntermaßen eine Resource-ID übergeben muss.
Dazu wird zuvor per $mysql->query() ein Query ausgeführt, welcher ja als Ergebnis eine Resource-ID enthält.
Nun ist es gewöhnlich so, dass ich
	
 nutze.
Das funktioniert einwandfrei - bis zu dem Punkt, an dem ich eben diese Verschachtelung nicht nutze, sondern es einzeln erledige, z. B. so:
	
 Und genau hier kommt es zum Fehler, denn num_rows() bekommt keine Resource-ID übergeben und meldet mir deshalb: 
	
		
Nun hab ich versucht, dass Problem so zu umgehen: 
	
Sofern beim Aufruf von num_rows nichts in Klammern übergeben wird, soll die Resource-ID des letzten Querys genutzt werden.
Die Variable $numrowsQuery ist direkt am Anfang der Klasse deklariert.
Im Prinzip funktioniert das auch, aber warum kriege ich dann trotzdem diese Warning-Meldung?!?
Bitte helft mir! - Danke schon mal im Voraus dafür!
MfG, Martin!
							
						
					
Ich hab eine eigene MySQL-Klasse, in der ich diverse Funktionen habe.
Eine davon ist auch num_rows(), welche den PHP-Befehl mysql_num_rows ausführt.
Mein Problem ist nun, dass ich dem PHP-Befehl bekanntermaßen eine Resource-ID übergeben muss.
Dazu wird zuvor per $mysql->query() ein Query ausgeführt, welcher ja als Ergebnis eine Resource-ID enthält.
Nun ist es gewöhnlich so, dass ich
PHP-Code:
	
	
$mysql->num_rows($mysql->query("SELECT irgendwas FROM irgendwo")); 
Das funktioniert einwandfrei - bis zu dem Punkt, an dem ich eben diese Verschachtelung nicht nutze, sondern es einzeln erledige, z. B. so:
PHP-Code:
	
	
$mysql->query("SELECT irgendwas FROM irgendwo");
$mysql->num_rows(); 
			
			
				Warning: Missing argument 1 for num_rows() in /home/www/web8/html/test.php on line 73
			
		
	PHP-Code:
	
	
    function num_rows($numrowsQuery)
{
    $numrowsQuery == 0 ? $this->num_rows = mysql_num_rows($this->query) : $this->num_rows = $numrowsQuery;
    return $this->num_rows;
} 
Die Variable $numrowsQuery ist direkt am Anfang der Klasse deklariert.
Im Prinzip funktioniert das auch, aber warum kriege ich dann trotzdem diese Warning-Meldung?!?
Bitte helft mir! - Danke schon mal im Voraus dafür!

MfG, Martin!
							
						
          
 Moderator


 
Kommentar