Page 1 sur 1

champ = champ + 'info'

Posté : 08 mars 2005, 01:51
par Elie
Bonjour,

Comment faire marcher ca ?

UPDATE `tbl_newsletter_user` SET `mailing_recu` = mailing_recu + '\|012' WHERE `email` = '[email protected]'

Posté : 08 mars 2005, 02:05
par albat
La première idée qui me vient à l'esprit est de décomposer :
$req1 = "SELECT mailing_recu FROM tbl_newsletter_user WHERE email = '[email protected]'";
// exécution de la requête et récupération des valeurs
$mailing_recu .= "\|012" ;
$req2 = "UPDATE tbl_newsletter_user SET mailing_recu = $mailing_recu WHERE email = '[email protected]'";

Posté : 08 mars 2005, 02:36
par Elie
Oauis ca serait simple mais je pense un peu long ca doit simplifiable non ?

J'ai tester ca :)
<?

		$sql4 = "SELECT mailing_recu FROM ".$tbl_newsletter_user." WHERE `email` = '".$user['email']."'";
		$req4 = mysql_query($sql4) or die("Erreur SQL ! <BR />".$sql4."<BR />".mysql_error());
		$info = mysql_fetch_array($req4);
		$mailing_recu = ($info['mailing_recu'] != "") ? $info['mailing_recu']."|".$id_mailing : $id_mailing;
?>

Posté : 08 mars 2005, 04:24
par Hubert Roksor
Si le + représente la concaténation alors j'imagine que ce que tu veux faire est:

Code : Tout sélectionner

UPDATE tbl_newsletter_user SET mailing_recu = CONCAT(mailing_recu, '\|012') WHERE email = '[email protected]'
...sous MySQL et

Code : Tout sélectionner

UPDATE tbl_newsletter_user SET mailing_recu = mailing_recu || '\|012' WHERE email = '[email protected]'
sous la plupart des SGBDR, MySQL inclus à condition qu'il ait été configuré pour.

Posté : 08 mars 2005, 04:26
par Elie
Je le saurais pour la prochaine fois :)

Je savais additionner des chiffres comme pour les compteur genre chiffre = chiffre+1

Mais pas pour des données ecrites :)

Merci !