2010-11-18 8 views
14

Comment puis-je ajouter un +1 au champ c_request. chaque fois que je fais et insérez je veux ajouter un 1 au nombre actuel (ex. comme un compteur de coup)Ajouter +1 au champ (compteur d'accès)

mysql_query("INSERT INTO ed_names (com_id, c_date, c_time, c_type, c_request, c_by) 
     VALUES ($id, CURRENT_DATE, CURRENT_TIME, '.($type == 'normal' ? 1 : 2).',0,$user)");  

$rid = mysql_insert_id(); 
+3

on dirait que vous voulez UPDATE plutôt que INSERT, non? – tbleckert

+0

'METTRE A JOUR le set reference = '$ referencedUser', hits = hits + 1 où referrer_id = '$ referrer'' –

Répondre

45
mysql_query("UPDATE ed_names SET c_request = c_request+1 WHERE id = 'x'"); 
2

utilisation mise à jour si vous souhaitez ajouter à un existant, sinon, entrez 1

INSERT INTO ed_names (com_id, c_date, c_time, c_type, c_request, c_by) 
    VALUES ($id, CURRENT_DATE, CURRENT_TIME, '.($type == 'normal' ? 1 : 2).',1,$user) 

si vous souhaitez mettre à jour, vous pouvez faire

update ed_names set c_date = CURRENT_DATE, C_time = CURRENT_TIME, c_type = '.($type == 'normal' ? 1 : 2).''.($type == 'normal' ? 1 : 2).', c_request = c_request + 1, c_by = $user where com_id = $id 
+0

si j'utilisais Update au lieu de Insert je pourrais toujours utiliser mysql_insert_id(); obtenir la ligne insert_id? – acctman

+0

Si vous ne savez pas quel Id devrait être augmenté, comment pouvez-vous l'augmenter alors? et non, mysql_insert_id ne fonctionne pas à la mise à jour. – Kennethvr

+0

jetez un coup d'oeil à ceci pour savoir comment fonctionne mysql_insert_id: http://stackoverflow.com/questions/1388025/how-to-get-id-of-the-last-updated-row-in-mysql – Kennethvr

Questions connexes