| PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Post your PHP questions here! |
 |

10-11-2007, 06:05
|
|
Bersi667
Newbie
|
|
Registriert seit: Mar 2007
Ort: Geldern/Duisburg
Beiträge: 87
|
|
Neues Problem mit Datenbankabstraktion..explizit mit den bind-parameters
Also...ich habe gerade mal festgestellt, dass keine bind_parameters mit einem Wert höher als 9 verkraftet werden, imho...so funtzt es nicht:
PHP-Code:
public function execute(){
$binds = func_get_args();
foreach ($binds as $index => $name){
$this->binds[$index + 1] = ''. $name .'';
}
$cnt = count($binds);
$query = $this->query;
foreach ($this->binds as $ph => $pv){
$query = str_replace(":".$ph,"'". mysql_real_escape_string($pv) ."'", $query);
}
print $query;
$this->result = mysql_query($query, $this->dbh);
if(!$this->result){
require_once(FS_LIB_ROOT.DS.'database'.DS.'mysql'.DS.'mysql_exception.php');
throw new MysqlException;
}
}
Hab mir überlegt, das ganze mit preg_replace umzumodeln... falls jemand eine bessere Idee hat... kundtun
Danke im Vorraus, Dennis
__________________
Musik beflügelt unseren Geist
Geändert von Bersi667 (10-11-2007 um 16:52 Uhr)
|

10-11-2007, 10:21
|
|
ModestLife
Registrierter Benutzer
|
|
Registriert seit: Sep 2007
Beiträge: 105
|
|
Ich habe das auch mal so gemacht und hatte das selbe Problem. Meine Lösung war, einfach rückwärts über die Binds zu loopen, dann ist ":10" bereits ersetzt wenn ":1" dran kommt. :-)
Aber wieso benutzt du nich PDO?
|

10-11-2007, 16:51
|
|
Bersi667
Newbie
|
|
Registriert seit: Mar 2007
Ort: Geldern/Duisburg
Beiträge: 87
|
|
Weil PDO eben nicht auf allen Systemen verfügbar ist, deswegen halt das workaround, im Regelfall würde ich die mysqli Schnittstelle verwenden, allerdings sieht's da ähnlich aus, wie mit PDO... natürlich bietet PDO Riesenvorteile, allein die Performance...weil...ist ja in C geschrieben und nicht mit php, aber naja...fummel da noch nen bißchen dran rum, iwie wird das schon hinhauen..
Grüße, Dennis
__________________
Musik beflügelt unseren Geist
|

10-11-2007, 19:03
|
|
PHP-Desaster
PHP Expert
|
|
Registriert seit: Mar 2006
Beiträge: 3.104
|
|
Wenn dein System entsprechend groß ist (CMS, Firmensoftware, ...), würde ich PDO einfach voraussetzen! Der Vorteil überwiegt meiner Meinung nach absolut dem Nachteil, die Extension installiert haben zu müssen! Vor allem, bevor du noch mit deiner eigenen Fehler-behafteten Klasse daherkommst!
|

10-11-2007, 22:27
|
|
Bersi667
Newbie
|
|
Registriert seit: Mar 2007
Ort: Geldern/Duisburg
Beiträge: 87
|
|
Überleg mir im Moment das komplett über PDO anzusteuern, davor wird dann ne Factory geschmissen und dann passt das schon... ich werd da mal nachhaken, vllt lässt sich ja was machen...
Grüße, Dennis
__________________
Musik beflügelt unseren Geist
|
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
|
| Themen-Optionen |
|
|
| Thema bewerten |
|
|
Forumregeln
|
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.
HTML-Code ist aus.
|
|
|
|
PHP News
|