2010-11-18 37 views
14

làm cách nào để thêm +1 vào trường c_request. mỗi khi tôi làm và chèn Tôi muốn thêm một từ 1 tới số lượng hiện tại (ví dụ. giống như một hit counter) cập nhậtthêm +1 vào trường (số lượt truy cập)

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

Hình như bạn muốn CẬP NHẬT hơn là INSERT, phải không? – tbleckert

+0

'Bộ đếm cập nhật UPDATE được gọi là '$ referUser', hits = hits + 1 trong đó referrer_id = '$ referrer'' –

Trả lời

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

sử dụng nếu bạn muốn thêm vào một hiện có, nếu không, chỉ cần nhập 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) 

nếu bạn muốn cập nhật bạn có thể làm

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

nếu tôi sử dụng Update thay vì Insert, tôi vẫn có thể sử dụng mysql_insert_id(); để có được hàng insert_id? – acctman

+0

nếu bạn không biết Id nào sẽ được tăng lên, làm cách nào bạn có thể tăng Id đó? và không, mysql_insert_id không hoạt động khi cập nhật. – Kennethvr

+0

hãy xem điều này để biết cách mysql_insert_id hoạt động: http://stackoverflow.com/questions/1388025/how-to-get-id-of-the-last-updated-row-in-mysql – Kennethvr

Các vấn đề liên quan