Bonsoir à tous,

Mon problème est plus théorique que pratique, mais après des heures de recherche, je m'en remet à vous.

J'ai la table suivante, qui contient les paramètres généraux de mon site :
id | name | data
1 | title | Mon titre
2 | subtitle | Mon sous-titre
3 | front_lang | fr_FR
etc

Je souhaite permettre l'édition de ces paramètres via un formulaire dans mon back-office, le voici :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
 
<?php echo savePreferences(); ?>
<form id="preferences_form" action="<?php echo HERE; ?>" method="post">
	<fieldset>
		<legend><?php echo SITE_PARAMS; ?></legend>
		<label for="title"><?php echo SITE_TITLE; ?></label>
		<input type="text" name="title" id="title" value="<?php echo getSiteParam('title'); ?>"/>
		<label for="title"><?php echo SITE_SUBTITlE; ?></label>
		<input type="text" name="subtitle" id="subtitle" value="<?php echo getSiteParam('subtitle'); ?>"/>
	</fieldset>
	<fieldset>
		<legend><?php echo SITE_LANGUAGES_TITLE; ?></legend>
		<label for="front_language"><?php echo SITE_FRONT_LANGUAGE; ?></label>
		<select name="front_language" id="front_language"><?php getLanguages(getSiteParam('front_lang')); ?></select>
		<label for="back_language"><?php echo SITE_BACK_LANGUAGE; ?></label>
		<select name="back_language" id="back_language"><?php getLanguages(getSiteParam('back_lang')); ?></select>
	</fieldset>
	<input type="submit" id="submit_preferences" name="submit_preferences" value="<?php echo SAVE; ?>"/>
</form>
Pour votre comréhension, voici ma fonction getSiteParam :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
function getSiteParam($param) {
	global $Db;
	$thisParam = $Db->query("SELECT data FROM "._DB_PREFIX_."params WHERE name = '".$param."'")->fetch(PDO::FETCH_OBJ);
	return stripslashes($thisParam->data);
}
Quant à la fonction savePreferences(), il s'agit de ma fonction d'Update.

Bref, venons-en au fait .
J'ai besoin de pouvoir faire un update sur chaque champs de manière automatique (ma liste de paramètres est amenée à évoluer constamment).
Problème, je ne sais absolument pas comment identifier chaque champ dans les conditions de ma requête.

Voici la fameuse fonction :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
 
function savePreferences() {
	global $Db;
	if(isset($_POST['submit_preferences'])) {
		foreach($_POST AS $k => $param) {
			//$Db->exec("UPDATE "._DB_PREFIX_."params (name, data) VALUES ("") WHERE ;	
		}
	}
}
Voilà mon soucis. Que faire avec cette fameuse ligne commentée ?
Merci d'avance pour votre aide, je l'espère salvatrice.
En espérant avoir été suffisamment claire,

Pauline.