Engelein: simple Abfrage funktioniert nicht

Beitrag lesen

Ich sag nur: Anführungszeichen.

das habe ich vergessen dazu zu schreiben: anführungszeichen habe ich schon probiert. dann kommt aber die Meldung: Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING in I:\Server\www\test\index.php on line 15

Die tollen PHP-Fehlermeldungen .. Der SQL-Befehl muss wie alle Texte in Anführungszeichen. Aber wenn du mal in die Anleitung zu mysql_db_query() schaust, wirst du folgende Parameterfolge sehen:

resource mysql_db_query ( string database, string query [, resource link_identifier] )

Mit mysql_db_query("SELECT * FROM tabelle"); wird das dann natürlich auch nichts, denn die Funktion möchte mindestens zwei Parameter haben.
In der Anleitung solltest du allerdings auch lesen, dass von der Benutzung von mysql_db_query() schon seit einer ganzen Weile abgeraten wird, genauer gesagt: seit vor 7 Jahren die Version 4.0.6 rauskam.

Wie nachfolgend wäre das zum Üben ziemlich korrekt:

$benutzer= "root";
$passwort= "PW";
$dbname= "testdatenbank";

if (! $link = mysql_connect("localhost", $benutzer, $passwort)) {
    die("Keine Verbindung zum MySQL-Server: " . mysql_error());
}
if (! mysql_select_db($dbname, $link)) {
    die("Kann Datenbank " . $dbname . " nicht auswählen: " . mysql_error());
}
if (! $r = mysql_query("SELECT * FROM tabelle", $link)) {
    die("Fehler bei SQL-Abfrage: " . mysql_error());
}
while ($z = mysql_fetch_assoc($r)) {
    var_dump($z);
}

Für den richtigen Einsatz wäre daran noch zu bemängeln, dass a) man nicht mit dem root-Konto arbeitet und b) die Fehlermeldungen in die Seite ausgegeben werden - die Besucher gehen diese Fehlermeldungen aber nichts an, sie gehören mittels error_log() in das Fehlerprotokoll des Servers geschrieben.
Außerdem werden hier keine weiteren Variablen eingesetzt, solltest du welche benutzen, deren Inhalt von außen kommt (URL-Parameter, HTML-Formulare), gehören sie mittels mysql_real_escape_string() abgesichert.