PHP tazelede kod çalıştırmak etmeyin

4 Cevap

Yani sadece bir kullanıcı 5 defa görülebilen bu sayfa var. Ve ben veritabanına girer ve ne yapmak istediğinizi kullanıcı kendi web tarayıcısını yenilenir, AccessCount çalıştırmayın kaydeden kodu olması içeri her kullanıcı günlükleri AccessCount alana 1 ekler bu kodu yaptı.

Bunu nasıl yapabilirim? Teşekkürler!

4 Cevap

kullanıcı günlükleri sadece onlar artırılır ediliyor karşı olmadığını, sadece sayfayı yeniden endişelenmenize gerek yok, (çerezler, oturum değişkenler, vb ayarlar) onları günlükleri kod kısmına bunu artırmak.

Aksi takdirde bir sayfayı yeniden vs kullanıcı tarafından yeni bir 'ziyaret' algılamak için bir yolu yoktur. Eğer onlar sayaç artırılır sahip sayfayı yenileyin ve edemediği bir zaman dilimi ayarlayın olabilir.

yerine giriş sayım sınırlamak istediğiniz sayfayı oluşturur php script infazların sayısını saymak. Eğer komut dosyası çalıştıran kimin için kullanıcı kimliği korumak ve almak için $ _SESSION ve session işlevlerini kullanabilirsiniz

Genellikle başka bir sayfa sayım yapmak ve onlar sadece sayısı artan 5 kat sonra görmek gerekiyor sayfaya kullanıcıyı geçerdi. Bu, bir formu gönderdikten sonra mutlaka o zaman tam olduğunu söyleyerek yeni bir sayfa boyunca tarayıcıyı geçmek veritabanına veri girdiğinde bir sayfaya formu göndermek ne benzer. Sayfayı yeniden bu şekilde form verileri ya da sizin durumunuzda sayımı verilerinden ile veritabanını güncellemek için devam etmez.

Sen çözüm oturumları kullanmak zorunda. Aşağıdaki kodu amaçlar için çalışması gerekir.

session_start();

function incrementAccessCount() {
    if (empty($_SESSION['loggedin'])) {

        /* mysql code to increment access count */

        $_SESSION['loggedin'] = 1;
    }

}

incrementAccessCount();