/ UPDATE SELECT ve SELECT / INSERT MySQL sunucusunu öldürür

0 Cevap php

Ben o puanları saklamak için bizim iPhone oyunlarından biri oluyor istekleri sayısına göre öldürülenin bir sunucusu çalıştırmak. Bu ben sunucu yanıt vermemeye dönüşür demek.

Ben sadece gerçekten almak için yeterli MySQL / PHP biliyorum, bu yüzden bunu düzeltmek için benim girişimi içinde çırpınırken duyuyorum. Biz özel bir sunucu var çünkü optimize edilebilir onun bir sorun eminim. Biz sadece 300 istekleri bir dakika kolu.

Temelde biz skor birileri varolan puanı varsa görmek için (bir SELECT kullanarak) kendi iPhone oyunu gönderme olup olmadığını kontrol edin. Yaptıkları ve yeni puan daha iyi ise, aksi takdirde biz bir INSERT yapmak, bir UPDATE yapmak. Ifadeleri şöyle:

$ Sql ​​= "tahta = '$ kurulu' AND name = '$ isim' VE UDID = '$ UDID' VE fbuid = '$ fbuid' $ id FROM tablo, puan, seviye SEÇ"

UPDATE ve INSERT deyimleri şöyle:

$ Sql ​​= "UPDATE $ tablo SET puan = '$ skor', seviye = '$ seviyesi', ülke = '$ ülke', tarih = CURRENT_TIMESTAMP WHERE kurulu = '$ kurulu' AND name = '$ isim' VE UDID = ' $ UDID 'VE fbuid =' $ fbuid '"

$ Sql ​​= "$ masada (tahta, UDID, fbuid, isim, puan, seviye, ülke) VALUES ('$ kurulu', '$ UDID', '$ fbuid', '$ isim', '$ skor' INSERT INTO, '$ seviye', $ ülke ') "

Ve bütünlüğü için, burada tablo tanımı:

CREATE TABLE $table (
id int(11) NOT NULL auto_increment,
board tinyint(4) NOT NULL,
udid varchar(45) default NULL,
fbuid bigint(20) unsigned default NULL,
name varchar(25) default NULL,
country tinyint(4) default NULL,
level tinyint(4) default NULL,
score decimal(10,0) default NULL,
date timestamp NOT NULL default CURRENT_TIMESTAMP,
PRIMARY KEY (id),
KEY scoreidx (score),
KEY udididx (udid),
KEY fbuididx (fbuid),
KEY boardidx (board),
KEY levelidx (level),
KEY countryidx (country)
) ENGINE=MyISAM DEFAULT CHARSET=latin1

Ben şu anda kullanarak PHP MySQL sunucusuna bağlanmak:

$ Conn = mysql_pconnect (DB_HOST, DB_USER, DB_PASSWORD, MYSQL_CLIENT_INTERACTIVE);

Ama msql_connect önce kullanmak için kullanılır, ancak bu konuda bir iyileşme fark etmedi.

Herhangi Ben bu duruma nasıl işaretçiler, ya da ben ne yapmaları gerektiğini anlatmak herhangi bir web sayfalarına bağlantılar derece mutluluk duyacağız.

0 Cevap