Deine ganzen Varianten und Ausführungen sind mehr als verwirrend. Trotzdem:
In mysql_num_rows gehört eine Abfrageressource (expects parameter 1 to be resource), also das Ergebnis von mysql_query, kein Querystring (string given).
Umgekehr kannst Du das Ergebnis von mysql_query nicht ausgeben (echo "$var") weil Du hier nur einen nicht darstellbaren Ressourcetyp (Resource id #3) erhältst.
Und gewöhn Dir bitte sowas ab:
Das ist schlichtweg Unsinn. PHP unterstützt Variablenparsing in Strings, das heißt nicht, dass das notwendig ist.
PHP-Code:
echo $var; // mehr nicht!
Und es heißt natürlich auch nicht $echo.
Zitat:
PHP-Code: echo "Ihre Sucheingabe <strong>" . mysql_real_escape_string($suchwort) . " " . mysql_real_escape_string($marke) . "</strong>"; $anzahl = mysql_num_rows($abfrage); echo " ergab" . mysql_real_escape_string($anzahl) . " Ergebnisse.";
|
mysql_real_escape_string ist für die Arbeit in Querystrings gedacht. Für die Ausgabe am Bildschirm ist das Unsinn.
PHP-Code:
echo "Ihre Sucheingabe <strong>" .
htmlspecialchars($suchwort) . " " .
htmlspecialchars($marke) . " </strong> ergab" .
(int) mysql_num_rows($db_erg) . " Ergebnisse.";
PHP-Code:
?>
Ihre Sucheingabe
<strong><?php echo htmlspecialchars($suchwort); ?> <?php echo htmlspecialchars($marke); ?>
</strong> ergab <?php echo (int) mysql_num_rows($db_erg); ?> Ergebnisse.
<?php
PHP-Code:
printf (
'Ihre Sucheingabe <strong>%s %s</strong> ergab %d Ergebnisse.' ,
htmlspecialchars($suchwort) ,
htmlspecialchars($marke) ,
mysql_num_rows($db_erg)
);