コード例 #1
0
ファイル: mysql.php プロジェクト: phenix-factory/SPIP
/**
 * Échapper une valeur selon son type ou au mieux
 * comme le fait `_q()` mais pour MySQL avec ses spécificités
 *
 * @param string|array|number $v
 *     Texte, nombre ou tableau à échapper
 * @param string $type
 *     Description du type attendu
 *    (par exemple description SQL de la colonne recevant la donnée)
 * @return string|number
 *    Donnée prête à être utilisée par le gestionnaire SQL
 */
function spip_mysql_quote($v, $type = '')
{
    if ($type) {
        if (!is_array($v)) {
            return spip_mysql_cite($v, $type);
        }
        // si c'est un tableau, le parcourir en propageant le type
        foreach ($v as $k => $r) {
            $v[$k] = spip_mysql_quote($r, $type);
        }
        return $v;
    } else {
        return _q($v);
    }
}
コード例 #2
0
ファイル: mysql.php プロジェクト: rhertzog/lcs
function spip_mysql_updateq($table, $champs, $where='', $desc=array(), $serveur='',$requeter=true) {

	if (!$champs) return;
	if (!$desc) $desc = description_table($table);
	if (!$desc) $champs = array(); else $fields =  $desc['field'];
	$set = array();
	foreach ($champs as $champ => $val) {
		$set[] = $champ . '=' . spip_mysql_cite($val, $fields[$champ]);
	}
	return spip_mysql_query(
			  calculer_mysql_expression('UPDATE', $table, ',')
			. calculer_mysql_expression('SET', $set, ',')
			. calculer_mysql_expression('WHERE', $where),
			$serveur, $requeter);
}