From c47f0dc2db6bcedbc57407d8ebddda1e29f86221 Mon Sep 17 00:00:00 2001 From: Joe Presbrey Date: Fri, 15 Jul 2005 15:12:24 +0000 Subject: [PATCH] git-svn-id: svn://presbrey.mit.edu/php/php@29 a142d4bd-2cfb-0310-9673-cb33a7e74f58 --- lib/joe/joe.lib.php | 199 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 199 insertions(+) create mode 100644 lib/joe/joe.lib.php diff --git a/lib/joe/joe.lib.php b/lib/joe/joe.lib.php new file mode 100644 index 0000000..2672321 --- /dev/null +++ b/lib/joe/joe.lib.php @@ -0,0 +1,199 @@ + 0) { + $arr = array(); + if (is_null($key)) { + while ($r = mysql_fetch_assoc($rs)) { + $arr[] = $r; + } + } elseif (is_numeric($key)) { + while ($r = mysql_fetch_row($rs)) { + $arr[$r[$key]] = $r; + } + } else { + while ($r = mysql_fetch_assoc($rs)) { + $arr[$r[$key]] = $r; + } + } + mysql_free_result($rs); + return $arr; + } else { + mysql_free_result($rs); + return array(); + } +} + +function printErrors($errArray) { + if (isset($errArray) && count($errArray)) { + echo ''; + } +} + +function buildSQLSet($fields, $values=NULL) { + $ex = array('NOW()','NULL'); + $sql = 'SET'; + $c = 0; + if (!is_null($values)) { + foreach($fields as $field) { + if ($c++) $sql .= ','; + $sql .= " `$field`='".mysql_escape_string(array_shift($values))."'"; + } + } else { + foreach($fields as $field=>$value) { + if ($c++) $sql .= ','; + if (in_array($value,$ex)) { + $sql .= " `$field`= $value"; + } else { + $sql .= " `$field`='".mysql_escape_string($value)."'"; + } + } + } + return $sql; +} + +function buildSQLInsert($array, $table=NULL) { + $ex = array('NOW()','NULL'); + $sql = '('; + $c = 0; + foreach($array as $field=>$value) { + if ($c++) $sql .= ','; + $sql .= " `$field` "; + } + $sql .= ') VALUES ('; + $c = 0; + foreach($array as $field=>$value) { + $v = mysql_escape_string($value); + if ($c++) $sql .= ','; + if (in_array($v, $ex)) + $sql .= " $v "; + else + $sql .= " '$v' "; + } + $sql .= ')'; + return (is_null($table)?$sql:('INSERT INTO `'.$table.'` '.$table)); +} + +function build_str($query_array) { + $query_string = array(); + foreach ($query_array as $k => $v) { + $new = $k; + if (strlen($v)) + $new .= '='.$v; + $query_string[] = $new; + } + return join('&', $query_string); +} + +function newQS($key, $val) { + parse_str($_SERVER['QUERY_STRING'], $arr); + $arr[$key] = $val; + return '?'.build_str($arr); +} + +function newQSA($array=array()) { + parse_str($_SERVER['QUERY_STRING'], $arr); + $s = count($arr); + foreach($array as $key=>$val) { + $arr[$key] = $val; + if (is_null($val)) + unset($arr[$key]); + } + return (count($arr)||$s)?'?'.build_str($arr):''; +} + +function formQSA($array=array()) { + if (!count($array)) $array = $_SERVER['QUERY_STRING']; + parse_str($array, $arr); + $text = ''; + foreach($arr as $key=>$val) { + $text .= sprintf('', $key, $val); + } + return $text; +} + +?> -- 2.45.2