Mysql
 sql >> база данни >  >> RDS >> Mysql

PHP:Как да увеличите стойност в реда на таблицата, за да преброите изгледите и да ограничите броя до един IP адрес

DUPLICATE KEY UPDATE

се използва с INSERT а не с UPDATE изявление DOCS

броят за един IP ще бъде такъв

SELECT COUNT(*) FROM profiles WHERE IP = "127.1.0.0";

[Ако не търсите това, което написах по-горе]

ако IP адресът е вашият първичен ключ, тогава

INSERT INTO 
profiles (ip,views) 
VALUES ("127.1.0.0",1)
ON DUPLICATE KEY 
UPDATE views=views+1;

Ако искате кодът ви да работи правилно [не използвайте mysql_* също така избягвайте въвеждането на потребителя]

<?php
require_once 'db_conx.php';
$result = mysql_query( "SELECT * FROM profiles WHERE pid =2")  or die (mysql_error());
  /*ON DUPLICATE KEY UPDATE mviews = mviews+ 1 */               
if(mysql_num_rows($result) == 0){
     mysql_query( "INSERT INTO profiles (views) value(1) ")  or die (mysql_error());
    }else {
             mysql_query( "UPDATE profiles SET mviews = mviews +1 WHERE pid = '2' ")  or die (mysql_error());
      }
mysql_close($con);
?> 


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL комбинира две колони в една колона

  2. Какво е индекс?

  3. Обобщени таблици PHP/MySQL

  4. Как да извлека последния запис в таблица на база данни на MySQL с помощта на PHP?

  5. MySQL пълнотекстово търсене на хештагове (включително символа # в индекса)