Sollte eine einfache Ausgabe stattfinden ... aber
Florian M.
- php
0 romy0 Vimes0 Florian M.
Guten morgen,
ich stehe total auf dem Schlauch.
Ich möchte alle Datensätze aus der Tabelle [auth] anzeigen lassen.
Name der Datenbank -> [intranet]
Was mache ich falsch?
PHP Version: 4.1.2
Datei anzeige.php:
(Rechte: -rwxrwxr-x sollte aufjedenfall zum testen reichen)
1 #!/usr/bin/php4
2 <?php
3 $server = "localhost";
4 $user = "benutzer";
5 $pass = "passwort";
6
7 $db = mysql_connect($server, $user, $pass)
8 or die ("Es konnte keine Verbindung zum DB-Server hergestellt werden!");
9
10 $abfrage = mysql_db_query("intranet", "select * from auth");
11 $anzahl = mysql_num_rows($abfrage);
12 echo = "$anzahl Datensaetze gefunden";
13
14 for ($i=0; $i<$anzahl; $i++) {
15 $benutzer = mysql_result($anzahl, $i, "benutzer");
16 $passwort = mysql_result($anzahl, $i, "passwort");
17 echo "$benutzer, $passwort<br>";
18 }
19
20 mysql_close($db);
21 ?>
Hier die dazugehörige MySQL-Tabelle [auth]:
+----------+----------+
| benutzer passwort |
+----------+----------+
| name1 | pass1 |
| name2 | pass2 |
| name3 | pass3 |
+----------+----------+
Als Fehlermeldung erscheint:
Parse error: parse error, expecting '," or ';" in
/usr/lib/cgi-bin/problem/anzeige.php on line 11
Danke schon einmal im Voraus für Eure Hilfe !!
bis denn
Florian
Hi,
7 $db = mysql_connect($server, $user, $pass)
da fehlt das ;
das stand allerdings auch in der Fehlermeldung
ciao
romy
HallO!
7 $db = mysql_connect($server, $user, $pass)
da fehlt das ;
das stand allerdings auch in der Fehlermeldung
nö, das kommt nach "or die...;"
Ich vermute eher das Du die Zeilen verschoben hast(vielleicht zählt PHP die erste auch nicht mit), denn für mich sieht "echo =" sehr seltsam aus! Lass mal das "=" weg!
Grüße
Andreas
Hi Andreas,
zählt PHP die erste auch nicht mit), denn für mich sieht "echo =" sehr seltsam aus! Lass mal das "=" weg!
Wenn ich das "=" weg lasse dann bekomme ich folgenden Fehler:
Parse error: parse error in /usr/lib..... anzeige.php on line 21
Da schliesse ich das PHP-Skript. Was soll das?
bis denn
Florian
Hallo!
Wenn ich das "=" weg lasse dann bekomme ich folgenden Fehler:
Parse error: parse error in /usr/lib..... anzeige.php on line 21Da schliesse ich das PHP-Skript. Was soll das?
Vimes hat Recht, vermutlich gibt es die von Dir verwendete Funktion in Deiner PHP-Version nicht mehr(welche verwendest Du?)
Deine komplette Syntax ist sehr veraltet, ich würde Dir empfehlen Datenbank-Abfragen nach dem selben Schema wie die Beispiele unter http://www.php3.de/manual/de/function.mysql-fetch-array.php aufzubauen. Einen Fehler finde ich sonst nicht. Wobei die Fehlermeldung dann eigentlich nicht korrekt ist, denn die müßte lauten "keine Funktion mit dem namen xy gefunden...", naja.
Grüße
Andreas
moin,
auf http://www.php.net/manual/de/function.mysql-db-query.php steht, dass diese Funktion seit PHP 4.0.6 veraltet ist. Versuch das ganze doch mit mysql_selcect_db und mysql_query.
Vielleicht hilft auch, die DB-Verbindung mit anzugeben, also
mysql_db_query("intranet", "select * from auth;", $db) or die [...]
@romy Das "fehlende" Semikolon vor or die muss auch weggelassen werden, siehe http://www.php.net/manual/de/function.die.php.
Hi Leute,
danke für Eure Hilfe. Ich habe das Problem beseitigt.
Manchmal ist weniger besser.
1 #!/usr/bin/php4
2 <?php
3 $verbindung = mysql_connect("localhost", "benutzer", "passwort")
4 or die ("Es konnte keine Verbindung hergestellt werden!");
5 $datenbank = mysql_select_db("intranet", $verbindung) or die (mysql_error());
6 $ergebnis = mysql_query("SELECT * FROM auth")
7 or die ("Invalid query");
8 while ($row = mysql_fetch_array($ergebnis, MYSQL_NUM)) {
9 printf("Benutzername: %s Passwort: %s<br>", $row[0], $row[1]);
10
11 }
12 mysql_free_result($ergebnis);
13 mysql_close($verbindung);
14 ?>
bis die Tage
Florian