JQuery ve PHP bana senaryoyu değerlendirirsiniz?

2 Cevap php

Ben [http://docs.jquery.com/Tutorials:Getting_Started_with_jQuery # Rate_me: _Using_Ajax] Bu değerlendirme komut dosyası bulundu ve ben tıkladığımda ben http://jquery.bassistance.de/example-rateme.html üzerine örnekteki gibi işe almak gibi olamaz değerlendirmesi hiçbir şey olmuyor.

Ben nasıl bu sorunu düzeltebilirim?


Aşağıda tam yazısıdır.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
<title>jQuery Starterkit</title>

<link rel="stylesheet" type="text/css" media="screen" href="css/screen.css" />
<script src="jquery.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function() {
    // generate markup
    var ratingMarkup = ["Please rate: "];
    for(var i=1; i <= 5; i++) {
        ratingMarkup[ratingMarkup.length] = "<a href='#'>" + i + "</a> ";
    }
    var container = $("#rating");
    // add markup to container
    container.html(ratingMarkup.join(''));

    // add click handlers
    container.find("a").click(function(e) {
        e.preventDefault();
        // send requests
        $.post("starterkit/rate.php", {rating: $(this).html()}, function(xml) {
            // format result
            var result = [
                "Thanks for rating, current average: ",
                $("average", xml).text(),
                ", number of votes: ",
                $("count", xml).text()
            ];
            // output result
            $("#rating").html(result.join(''));
        } );
    });
});
</script>

</head>
<body>
<h1>jQuery Getting Started Example - rate me</h1>

<?php

define('STORE', 'ratings.dat');

function put_contents($file,$content) {
    $f = fopen($file,"w");
    fwrite($f,$content);
    fclose($f);
}

if(isset($_REQUEST["rating"])) {
    $rating = $_REQUEST["rating"];
    $storedRatings = unserialize(file_get_contents(STORE));
    $storedRatings[] = $rating;
    put_contents(STORE, serialize($storedRatings));
    $average = round(array_sum($storedRatings) / count($storedRatings), 2);
    $count = count($storedRatings);
    $xml = "<ratings><average>$average</average><count>$count</count></ratings>";
    header('Content-type: text/xml'); 
    echo $xml;
}

?>

<p>This example demonstrate basic use of AJAX. Click one of the links below to rate. The
number of rating and the average rating will be returned from the serverside script and displayed.</p>

<div id="rating">Container</div>

</body>
</html>

2 Cevap

o Check jsquery. jquery soru geçerlidir - Eğer (geçerli bir jquery kaynak dosyaya işaret emin olun benim için, o anki dizinde "jquery-1.4.2.js" dir.

o Check the location of rate.php. Örnek-rateme.html klasör Starterkit içinde rate.php bulmak bekliyor. Sevk edildiği dosyalar bir klasöre tüm vardır - bu yüzden, bu sorunu gidermek.

o php sessions must be turned on. benim pc benim test sunucusunda yüklü varsayılan php session.auto_start bayrağı ile ini dosyasını kullanan kapalı (http://www.learnphp-tutorial.com/Sessions.cfm).

o Restart your server, flush caches and sacrifice a small animal. Ben burada biraz şaka yapıyorum, ama ben sanıyorum, çünkü dosya (lar) eski sürümünü çalıştıran, bir süre sonra ortadan kayboldu sorunları kovalayan çok fazla zaman harcamak vermedi I düşünce güncellendi.

/ Herhangi bir javascript hataları görmek almak kundakçı kullanın ... Ayrıca Firefox hata konsolu kontrol edebilir. (Ya da değil) neler oluyor bilmeden, bu sorunu çözmek zor.

Saçma bir soru, ama jquery.js sunucuda var?