PDO,mysqli,PEAR::DBのどれも使えない人のための簡易クエリー実行クラス
多分そういう人は
ってサーバーしか使えないのだと思う。
class QueryObject{ var $database; var $query; function execute(){ $result = mysql_query($this->query,$this->database); if (!$result) { $message = 'Invalid query: ' . mysql_error() . "\n"; $message .= 'Whole query: ' . $query; die($message); } return $result; } function prepare($db,$q,$p){ $this->database = $db; $this->query = vsprintf($q,$this->prepareParams($p)); } function prepareParams($p){ $po = array(); foreach($p as $pp){ echo $pp . "<br />"; if(is_numeric($pp)){ //数値はそのままでOK $po[] = $pp; } else if(is_string($pp)){ $poo = ""; if(get_magic_quotes_gpc()) { $poo =stripslashes($pp); } else { $poo =$pp; } $po[] =mysql_escape_string($poo); } else{ $po[] = "null"; } } var_dump($po); return $po; } }
datetimeとかそこら辺は入れてません。まだ調べてない。
int系の列に「''」とかクォートでくくったようなsqlが気持ち悪いのですよ。
(nullに対応できるのか?)
というかとっととPDOなりに移行(したがってPHP4は捨てる)方が幸せになれそうだお