dedlfix: Problem mit mysql Klasse

Beitrag lesen

echo $begrüßung;

var $host="localhost"; #host, meisstens localhost
var $user=""; #username für datenbank
var $password=""; #passwort für datenbank
var $dbname="newcouch"; #datenbankname

Solche veränderlichen Werte zu setzen ist eigentlich Aufgabe des Konstruktors, den man mit entsprechenden Parametern versorgt. Sonst ist deine Klasse zu wenig universell.

if(!empty($order)) $order = " ORDER BY ".$order.""; # order by...
  if(!empty($dir)) $dir = " ".$dir; # gewünschte "richtung" (DESC / ASc)

Wenn $order nicht angegeben wird, darf auch kein $dir berücksichtigt werden.

$abfrage = ""SELECT ".$field." FROM ".$table."".$order."".$dir."".$limit."""; # abfrage string

Das sieht recht umständlich aus. Wenn schon einen ""-String nimmst, dann musst du nicht wegen der Variablen aus dem String rausgehen. Wenn du unbedingt rausgehen willst (aus welchen praktisch irrelevanten Gründen auch immer), dann kannst du '' nehmen und sparst dir beim " das . Leere Zeichenfolgen zu verketten ist sinnlos. Statt $order."".$dir kannst du $order.$dir schreiben.

if(!$this->result = mysql_query($abfrage, $this->connid)) return "Fehler beim Senden der Abfrage..."; # error
  else return $this->result; # gibt das resultat zurück

Testest du auch das Rückgabeergebnis, ob ein (nichtssagender) String ist, weil ein MySQL-Fehler aufgetreten ist (nur welcher?) oder eine Ressource ist?

echo "$verabschiedung $name";