#4
http://php.net/manual/en/reserved.variables.server.phpBrugerens IP-adresse er givet ved $_SERVER['REMOTE_ADDR'].
#5
Ja, noget i den stil... Her er et hurtigt eksempel:
== index.php ==
<?php
//Har vi specificeret et produkt?
if (isset($_GET["p"]) && $_GET["p"]!="") {
//I dette tilfælde henter vi et unikt ID for produktet via GET-variablen "p"
$product = $_GET["p"];
//Har vi tidligere sat en cookie, der indikerer, at vi har rated produktet?
$cookie = "product_".$product;
if (isset($_COOKIE[$cookie]) && $_COOKIE["$cookie"]) {//Findes cookie && er cookie sand
//I så fald må vi ikke rate igen
$form = "Du har allerede rated produktet ".$product;
} else {
//Ellers må vi gerne rate
$form = "<form action=\"rate.php\" method=\"post\"><label>Rating til ".$product.":</label><input name=\"p\" value=\"".$product."\" type=\"hidden\"><input name=\"r\" type=\"text\"><input type=\"Submit\" value=\"Send rating\"></form>";
}
} else {
$form = "<form action=\"index.php\" method=\"get\"><label>Produkt:</label><input name=\"p\" type=\"text\"><input type=\"Submit\" value=\"Find produkt\"></form>";
}
?><!DOCTYPE html>
<html>
<head>
<title>Rate produkt</title>
</head>
<body>
<p><?php echo $form; ?></p>
</body>
</html>
== rate.php ==
<?php
if (isset($_POST["p"]) && isset($_POST["r"])) {
$product = $_POST["p"];
$rating = $_POST["r"];
//Gøt noget med rating her - f.eks. tilføj til database
//I dette tilfælde vil $rating bruges, men det er selvf. vilkårligt
$cookie = "product_".$product;
setcookie($cookie, true, time()+365*24*60*60);
}
header("Location: index.php");//Send os tilbage til index
?>