Ich bin gerade dabei ein Browsergame zu basteln und wollte dazu eine Karte mit vielen Feldern bauen. Diese Karte bzw. die Felder sollen von einer PHP Datei und einer Datenbank erstellt werden.
Ich habe dazu eine Klasse verwendet.
Quelltext der Datei:
Die Datenbank enthält einfach die Felder ID, Name, Gebiet, Land.............
Jetzt zum Fehler. Wenn ich die Datei Aufrufe erhalte ich
kein, kein, kein, kein, kein, kein, kein, kein, keinkein, kein, kein, kein, kein, kein, kein, kein, kein
kein, kein, kein, kein, kein, kein, kein, kein, keinkein, kein, kein, kein, kein, kein, kein, kein, kein
kein, kein, kein, kein, kein, kein, kein, kein, keinkein, kein, kein, kein, kein, kein, kein, kein, kein
kein, kein, kein, kein, kein, kein, kein, kein, keinkein, kein, kein, kein, kein, kein, kein, kein, kein
Was mich sehr verwundert ist, dass selbst dieser Datenmüll ausgegeben wird wenn die KLasse noch nicht einmal zur Datenbank connectet hat(siehe Funktion ausgabe()).
Wäre freundlich wenn ihr mir helfen könntet, vieleicht habe ich ja auch einen grundsätzlichen Fehler in der Klassenprogammierung in PHP gemacht.
Ich habe dazu eine Klasse verwendet.
Quelltext der Datei:
PHP:
<?
$i = 1;
class Feld {
var $ID;
var $Kontinent;
var $Land;
var $Gebiet;
var $Name;
var $Typ;
var $Besitzer;
var $Rohstoffe;
var $Bebauung;
function Feld() {
$this->$ID = 0;
$this->$Kontinent = 0;
$this->$Land = 0;
$this->$Gebiet = 0;
$this->$Name = 0;
$this->$Typ = "kein";
$this->$Besitzer = "kein";
$this->$Rohstoffe = 10000;
$this->$Bebauung = "kein";
}
function ausgabe() {
echo $this->$ID.", ".$this->$Kontinent.", ".$this->$Land.", ".$this->$Gebiet.", ".$this->$Name.", ".$this->$Typ.", ".$this->$Besitzer.", ".$this->$Rohstoffe.", ".$this->$Bebauung;
}
function connect() {
$host = "localhost";
$user = "*******";
$pass = "*******";
$database = "***********";
@mysql_connect($host, $user, $pass) OR die(mysql_error());
mysql_select_db($database) OR die(mysql_error());
}
function upload($id2) {
$sql = "SELECT ID, Kontinent, Land, Gebiet, Name, Typ, Besitzer, Rohstoffe, Bebauung FROM Felder Where ID = '$id2'";
$result = mysql_query($sql) OR die(mysql_error());
while($row = mysql_fetch_assoc($result)) {
$this->$ID = $row['ID'];
$this->$Kontinent = $row['Kontinent'];
$this->$Land = $row['Land'];
$this->$Gebiet = $row['Gebiet'];
$this->$Name = $row['Name'];
$this->$Typ = $row['Typ'];
$this->$Besitzer = $row['Besitzer'];
$this->$Rohstoffe = $row['Rohstoffe'];
$this->$Bebauung = $row['Bebauung'];
}
}
function erstellen() {
echo("<html>". $this->$ID.", ".$this->$Kontinent.", ".$this->$Land.", ".$this->$Gebiet.", ". $this->$Name.", ".$this->$Typ.", ".$this->$Besitzer.", ".$this->$Rohstoffe.
", ".$this->$Bebauung."</html>");
}
}
while($i < 5) {
$control = new Feld;
$control->ausgabe();
$control->connect();
$control->upload($i);
$control->erstellen();
echo("<br><br>");
$i++;
}
?>
Die Datenbank enthält einfach die Felder ID, Name, Gebiet, Land.............
Jetzt zum Fehler. Wenn ich die Datei Aufrufe erhalte ich
kein, kein, kein, kein, kein, kein, kein, kein, keinkein, kein, kein, kein, kein, kein, kein, kein, kein
kein, kein, kein, kein, kein, kein, kein, kein, keinkein, kein, kein, kein, kein, kein, kein, kein, kein
kein, kein, kein, kein, kein, kein, kein, kein, keinkein, kein, kein, kein, kein, kein, kein, kein, kein
kein, kein, kein, kein, kein, kein, kein, kein, keinkein, kein, kein, kein, kein, kein, kein, kein, kein
Was mich sehr verwundert ist, dass selbst dieser Datenmüll ausgegeben wird wenn die KLasse noch nicht einmal zur Datenbank connectet hat(siehe Funktion ausgabe()).
Wäre freundlich wenn ihr mir helfen könntet, vieleicht habe ich ja auch einen grundsätzlichen Fehler in der Klassenprogammierung in PHP gemacht.