Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

PHP-Error: 'Parse error: unexpected '(', expecting ',' or ';' in ... line 11'

Empfohlene Antworten

Veröffentlicht

Hallo,

ich versuch im moment ein programm mit php und mysql zu schreiben. Damit meine Index.php zur Datenbank connecten kann hab ich mir das mit klassen gedacht, damit das schneller läuft. die index.php sucht in der mysql_db.php nach den verbindungsdaten und connected. Doch die mysql_db.php muss die server-daten usw zuerst aus einer Textdatei lesen (ich bin anfänger). Wenn ich dann die index.php starte kommt folgender Fehler: 'Parse error: parse error, unexpected '(', expecting ',' or ';' in D:\apach...\mysql_db.php on line 11'

hier noch die ersten zeilen der quelltexte von mysql_db.php:

'class mysql_db {

//Die Datei DB-info.txt wird ausgelesen

var $fp = "DB-info.txt";

(line 11 -->) var $datei = fopen($fp, "r");

var $angebot = file("DB-info.txt");

var $num = 0;

while($num < count($angebot)) {

$dat = explode("|", $angebot[$num]);

$num ++;

}

//Ende des auslesens

var $link = false;

var $resid = false;

var $doerror = true;

var $host = $dat1[0];

var $user = $dat1[1];

var $passwd = $dat1[2];

var $tables = "pollger";

function set_doerror($boolvalue) {

$this->doerror = $boolvalue;

}

function connect() // Verbindet zur Datenbank

{

$temp = @mysql_connect

($this->host, $this->user, $this->passwd);

if (!$temp)

.....'

und hier die ersten paar zeilen der index.php:

'include("mysql_db.php");

$a = "SELECT COUNT(IDhu) AS ID FROM bla";

$tbl_umfrage=mysql_query($a,$db);

$test2 = mysql_fetch_array ($tbl_umfrage);'

:mod:

Sieht sehr lang aus, aber bitte helft mir. ich habe die 11. Zeile in mysq_db.php noch extra markiert. :)

Ich weiß echt nicht weiter. :confused:

und wenns geht keine dummen kommentare :)

Verschoben -> Webserverprogrammierung

sorry hab ich wohl übersehen

und da ist immer noch der selbe fehler zu sehen.

Kommt der Fehler wenn Du die Zeile 11 rauswirfst? Denn so wies ausschaut brauchst du sie ja eigentlich nicht (denk ich). Du öffnest hier ja die txt mit fopen und in der Zeile danach öffnest du sie nochmal mit file und liest sie in ein Array.

ja, jetzt ist die raus und der browser zeigt den gleichen fehler, nur halt mit der nächsten zeile.

in PHP4 ist es nicht möglich ein Klassenattribut mit Default werten zu belgen

und was heißt das mit den default werten?

Ich hab das mit der MySQL Klasse doch auch nur aus einem Buch das nur auf PHP4 und Mysql basiert.


class mysql_db {

	//Die Datei DB-info.txt wird ausgelesen

	var $fp = "DB-info.txt";

	var $datei = fopen($fp, "r");

	var $angebot = file("DB-info.txt");

	var $num = 0;

	while($num < count($angebot)) {

		$dat = explode("|", $angebot[$num]);

		$num ++;

	}

Also zum einen ist es ohnehin ne Unart Variablen ausserhalb des Konstruktors zu initialisieren und zum anderen... darf man bei PHP überhaupt innerhalb der Klasse einfach so eine Schleife laufen lassen? Glaube nicht...


class mysql_db {

	//Die Datei DB-info.txt wird ausgelesen

	var $fp = "DB-info.txt";

	var $datei = fopen($fp, "r");

	var $angebot = file("DB-info.txt");

	var $num = 0;

	while($num < count($angebot)) {

		$dat = explode("|", $angebot[$num]);

		$num ++;

	}

Also zum einen ist es ohnehin ne Unart Variablen ausserhalb des Konstruktors zu initialisieren und zum anderen... darf man bei PHP überhaupt innerhalb der Klasse einfach so eine Schleife laufen lassen? Glaube nicht...

Das initialisieren von Variablen ausserhalb des Konstruktors ist in PHP4 nicht erlaubt.

In PHP5 geht das vielleicht, da weiss ichs nicht...

Das mit der While schleife kann ich mir auch nicht vorstellen das das so ohne weiteres geht...

Das initialisieren von Variablen ausserhalb des Konstruktors ist in PHP4 nicht erlaubt.

In PHP5 geht das vielleicht, da weiss ichs nicht...

Sowas dachte ich mir schon :) Allerdings bin ich noch nie an diese Reglementierung gestoßen da wir "Initialisiere deine Variablen im Konstruktor" ewig und 3 Tage eingebläut bekommen haben damals. ;)

Bei Java und C++ ist es das selbe Spiel allerdings akzeptiert der Compiler auch direkte Initalisierungen :rolleyes:

Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.