Tjerk Wolterink wrote:
> ow deze reactie van mij klopt niet echt met je vraag merk ik nu
Je antwoord was niet geheel nutteloos. Het geeft me wel een idee hoe ik
het een beetje structureel kan oplossen.. dussu.. bedankt...
Gerard
Likes: 0
Tjerk Wolterink wrote:
> ow deze reactie van mij klopt niet echt met je vraag merk ik nu
Je antwoord was niet geheel nutteloos. Het geeft me wel een idee hoe ik
het een beetje structureel kan oplossen.. dussu.. bedankt...
Gerard
Tjerk Wolterink wrote:
> Zoiets:
>
> // ff een paar global functies
> function format_input($txt) {
> if($txt==null) return "NULL";
> $txt=trim($txt);
> if($txt=="" || $txt==" ") return "NULL";
> if(!get_magic_quotes_gpc())
> $txt=addslashes($txt);
> $txt="'$txt'";
> return $txt;
> }
>
> function validate_email($text) {
> return
> eregi("^[0-9a-z]([-_.~]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\\.[a-z]{2,4}$",
> $text);
> }
>
>
> //abstracte klasse
> class DataType {
> var $type;
>
> function validate($name) {
> return true;
> }
>
> function sql_format($name) {
> global $_POST;
> return format_input[$name]
> }
>
> }
>
> // specifieke datatype voor bijvoorbeeld e-mail (niet uitgewerkt)
> class EmailDataType extends DataType {
>
> function validate($name) {
> global $_POST:
> return validate_email($name) ? true : "Het ingevulde e-mail adres is
> ongeldig";
> }
>
> }
>
heee, bedankt.. ik ga wat dingetjes van je gebruiken..
Gerard
Rene Pijlman wrote:
> John Bokma:
>>Rene Pijlman:
>>> Ik gebruik zelf vooral Java/JDBC en PostgreSQL met Python. Daarbij
>>> gebruik je in de applicatie aparte parameters, construeert de
>>> database driver de querystring en die zorgt daarbij voor quoten en
>>> escapen. Bij een echte database als Oracle worden de parameters
>>> gebonden, in plaats van in de querystring geplakt.
>>
>>Uhm, dat kan met JDBC (Java) of DBI (Perl) ook, dat binden.
>
> Met dat binden bedoelde ik: query en parameter values gescheiden tot
> in de database engine. Dit in tegenstelling tot de client-side
> benadering, waarbij de parameters 'onder water' in de querystring
> worden geplakt (met quoten en escapen, dat wel).
Ja, ik gokte dat je dat bedoelde, vandaar:
>>Of het echte werk in de driver plaatsvind, of de database doet er niet
>>zo veel toe.
>
> Voor de veiligheid en functionaliteit van de applicatie niet nee, dat
> is waar.
>
> Voor de performance misschien wel. Bij dat echte server-side binden
> kan een voorbereide query (geparsed, autorisaties gechecked, execution
> plan geoptimaliseerd) namelijk worden hergebruikt met verschillende
> parameterwaarden.
Yup, eens.
Maar ik begreep ooit uit een discussie dat zoiets nu ook middels een
PEAR module in PHP te doen is?
--
John Voorbeeldscripts in Perl: http://johnbokma.com/perl/
Website design: http://johnbokma.com/websitedesign/
Ervaren Perl / Java programmeur beschikbaar: http://castleamber.com/
Tevreden opdrachtgevers: http://castleamber.com/testimonials.html
John Bokma schreef op 24-05-05 20:14:
> Ik begreep dat dit voor PHP ook mogelijk zou zijn? Wat een feest moet zijn,
> want betekent een einde van stripslashaddquoteescapemagic, toch?
Dat zou dan http://pear.php.net/manual/en/package.database.db.php moeten
zijn, gok ik.
Groeten,
Patrick
John Bokma wrote:
> Maar ik begreep ooit uit een discussie dat zoiets nu ook middels een
> PEAR module in PHP te doen is?
Parameter binding zit ook in mysqli onder PHP5, zag ik net.
(mysqli_stmt_bind_param o.a.)
eveneens het escapen van karaters (mysqli_real_escape_string)
tis natuurlijk wel in de driver dan, zal met latere versies van mysql
ook wel in het DBMS kunnen, neem ik aan. versie 5 ofzo..
Gerard
gerard wrote:
> John Bokma wrote:
>
>> Maar ik begreep ooit uit een discussie dat zoiets nu ook middels een
>> PEAR module in PHP te doen is?
>
> Parameter binding zit ook in mysqli onder PHP5, zag ik net.
> (mysqli_stmt_bind_param o.a.)
> eveneens het escapen van karaters (mysqli_real_escape_string)
^^^^
Heerlijk dat PHP (not), het is wachten op
mysql_tng_magic_escape_really_real_string
> tis natuurlijk wel in de driver dan,
ik zie daar hier geen probleem mee (SQL injecties voorkomen)
--
John Voorbeeldscripts in Perl: http://johnbokma.com/perl/
Website design: http://johnbokma.com/websitedesign/
Ervaren Perl / Java programmeur beschikbaar: http://castleamber.com/
Tevreden opdrachtgevers: http://castleamber.com/testimonials.html
John Bokma <john@castleamber.com> wrote:
>> eveneens het escapen van karaters (mysqli_real_escape_string)
> ^^^^
>
> Heerlijk dat PHP (not), het is wachten op
> mysql_tng_magic_escape_really_real_string
Dat is nu eenmaal de naam in de mysql API
(http://dev.mysql.com/doc/mysql/en/c-api-functions.html)
Daniel Tryba wrote:
> John Bokma <john@castleamber.com> wrote:
>>> eveneens het escapen van karaters (mysqli_real_escape_string)
>> ^^^^
>>
>> Heerlijk dat PHP (not), het is wachten op
>> mysql_tng_magic_escape_really_real_string
>
> Dat is nu eenmaal de naam in de mysql API
Ah, ik vroeg mij al af waarom het niet real_mysqli_string_escape was :-)
--
John Voorbeeldscripts in Perl: http://johnbokma.com/perl/
Website design: http://johnbokma.com/websitedesign/
Ervaren Perl / Java programmeur beschikbaar: http://castleamber.com/
Tevreden opdrachtgevers: http://castleamber.com/testimonials.html