-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Am 01.07.2010 12:11, schrieb Chris Bernhard:
> Hi zusammen, > vielen Dank für Eure ausführlichen Antworten, jetzt bin ich wieder in > Stück weiter, sprich, folgendes teste ich jetzt und hier nochmal die > Frage, ist das nun sicher? > $clause = "p.plz LIKE '$plz' LIMIT 1 "; > $clause = $GLOBALS['TYPO3_DB']->escapeStrForLike($clause,'tableb'); > $res = $GLOBALS['TYPO3_DB']->exec_SELECTquery('*','tablea p LEFT JOIN > tableb a ON p.bd = a.bd', $clause); > Allerbeste Grüße vom Chris Hi Chris, das die function eescapeStrForLike escaped lediglich die speziellen zeicen des like ausdrucks. hier die funktions definition: function escapeStrForLike($str, $table) { return preg_replace('/[_%]/','\\\$0',$str); } dies gibt keinen Schutz irgend einer art!!!!!! deswegen sollst du deine paramter mit fullQuoteStr() escapen. dein beispel code sollte dann ungefär so aussehen: <?php // Eingabe aus % (prozent) \% (backslash Prozent) machen. $plz = $GLOBALS['TYPO3_DB']->escapeStrForLike($plz,'tableb'); // prozent zeichen anhängen um teil suche der plz zu ermöglichen. $plz .= '%'; // PLZ string escapen um sich vor SQL injections zu schützen. $plz = $GLOBALS['TYPO3_DB']->fullQuoteStr($plz,'tableb'); // query zusammen bauen und datenbank abfragen. $clause = 'p.plz LIKE '. $plz .' LIMIT 1 '; $res = $GLOBALS['TYPO3_DB']->exec_SELECTquery('*', 'tablea p LEFT JOIN tableb a ON p.bd = a.bd', $clause); ?> gruss chris - -- Christian Wolff // Berlin http://www.connye.com some projects: http://richtermediagroup.com | http://titanic.de | http://fairplay-homepage.de -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.9 (MingW32) iEYEARECAAYFAkwsogMACgkQIcCaXPh/JHGZwQCeJTNYX+Pr1c+Cpz6WlHisJMWK R20AnjRiGCSazpr3b0v1QqQzo41P/i8F =DMat -----END PGP SIGNATURE----- _______________________________________________ TYPO3-german mailing list TYPO3-german@lists.typo3.org http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german