Ich versuche mit mysqli prepared statements zu verwenden. Dazu möchte ich eine Klasse schreiben, die die Verbindung aufbaut und dann auch die Anforderungen an die Datenbank übernimmt. Nun stellt sich das Problem mit der Methode bind_param. Da ich nun sehr flexibel die Menge der Variablen übergeben möchte. In Java habe ich mir etwas ähnliches geschaffen und dort habe ich mit einem Vector gearbeitet, der dann in einer Schleife ausgelesen wird und dann die einzelnen Variablen an die Statementvariable übergibt. Nur scheint dies in PHP nicht so einfach zu sein.
Beispiel in Java:
nun möchte ich das ähnlich gern in PHP schreiben
hier mein Ansatz:
Ich hoffe ihr könnt mir ein Tipp geben
Danke und Gruß niesel
Beispiel in Java:
Code:
public static PreparedStatement pstup(Connection conn, Vector v, String sql) throws SQLException { PreparedStatement stm = null; stm = conn.prepareStatement(sql); /*Beispiel für übergabe der Variablen falls Variablen name und vorname in Parameterliste stehen sollten sql="INSERT INTO mitarbeiter(m_name,m_vorname) " + "VALUES (?, ?)"); stm.setString(1, name); stm.setString(2, vorname); */ /*Flexible Variante int vsize = v.size();//Vectorgroesse bestimmen for (int i = 0; i < vsize; i++) { stm.setString(i + 1, v.get(i).toString());//Übegabe der einzelne Vectorposition an Statementvariable } return stm; }
hier mein Ansatz:
PHP-Code:
<?php
class mysql_db {
private $host = "localhost";
private $user = "root";
private $password = "werner80";
private $dbname = "qrcodes";
private $link = false;
public function connect() {
$tmp = @mysqli($this->host, $this->user, $this->password, $this->dbname);
if ($tmp->connect_errno) {
echo "Fehler bei Datenbankverbindung ".$tmp->connect_error;
return;
}
else {
$this->link=$tmp;
return $this->link;
}
}
function query($sql,$paramstrg, $array) {
if(!$this->link) {
$this->doerror;
echo "Es wurde keine Verbindung zur Datenbank aufgebaut";
}
else {
$statement=$this->link->prepare($sql);
$statement->bind_param($paramstrg,...);//Problemstelle
}
}
}//class
?>
Danke und Gruß niesel
Kommentar