Tach!
num_rows kann nämlich nur auf dem Client zählen und muss dazu die gesamte Ergebnismenge abgeholt haben, was PHPs MySQL-Treiber im Hintergrund erledigen, wenn man das nicht explizit anders verlangt.
Und man muss dazu das PHP-Handbuch lesen. Im Zusammenhang mit Prepared Statements muss man vorher noch die Methode store_result() aufrufen.
dedlfix.