Logo - MyWebsolution.de
User gesamt  :  2387905
User online  :  2
KubaSeoTräume, PHP Forum, PHP Community and more ... MyWebsolution.de!
   
   
 
Registrieren Login User F.A.Q Suche Home

eingeloggt bleiben

MyWebsolution.de Foren » PHP und MYSQL » Brauche Hilfe zur meiner vote.php für meine Homepage

Seite: 1 Posts pro Seite: 5 10 20
Autor Thread
16.04.2008 17:14 Uhr Brauche Hilfe zur meiner vote.php für meine Homepage
TEST
Forenposter
 
registriert 16.04.2008
wohnt in Deutschland
Beiträge 81
hi leute,
diese vote.php erstellt die ips.txt und ergebnis.txt.
PHP:
<?php
error_reporting
(E_ALL); // Zeigt alle PHP-Fehlermeldungen an

function schreiben($datei$mode) {
 
$fp fOpen($datei$mode);
 
fLock($fp2);
 
fWrite($fp$_SERVER["REMOTE_ADDR"] . "|" time() . "\n");
 
fLock($fp3);
 
fClose($fp);
}

function 
ip_sperre() {
 
$reloadlogdatei "ips.txt";
 
$anzahleintraege 50// Nach sovielen IP´s werden die alten gelöscht
 
$zeitlimit 3600// Solange bleibt eine IP gesperrt - Zeit in Sekunden

 // Prüfen ob Datei existiert wenn nicht erstellen
 
if (!file_exists($reloadlogdatei)) {
  
$datei fopen($reloadlogdatei"w+");
  
fclose($datei);
 }
 
$fp file($reloadlogdatei);
 
$size sizeof($fp);

 
// Beschreibt die Datei, wenn Liste voll
 
if ($size >= $anzahleintraege) {
  
schreiben($reloadlogdatei,"w");
  
// Prüft, ob eine IP in der Liste steht
 
}
 else {
  
$ausgabe false;
  for (
$zaehler 0$zaehler $size$zaehler++) {
   
$zeile explode("|"$fp[$zaehler]);
   if (
$zeile[0] == $_SERVER["REMOTE_ADDR"] AND $zeile[1] > (time()-$zeitlimit)) {
    
// IP wird gefunden
    
$ausgabe true;
   }
  }
  
// Protokolliert die IP
  
schreiben($reloadlogdatei"a+");
 }
 return 
$ausgabe;
}

$frage "Wie findet Ihr meine Seite ?";  // Thema der Abfrage

$option[0] = "Sehr Gut";  // Option 1
$option[1] = "Gut";  // Option 2
$option[2] = "Mittelmaessig";  // usw.
$option[3] = "Schlecht";
$option[4] = "Sehr Schlecht";

$farbe[0]="#0000FF";  // Farbe des 1. Balkens
$farbe[1]="#00FF00";  // Farbe des 2. Balkens
$farbe[2]="#FF0000";  // usw.
$farbe[3]="#FFFF00";
$farbe[4]="#00FFFF";

$datei "ergebnis.txt";  // Ergebnisdatei

$anzahl count($option); // Ermittelt die Anzahl der Auswahloptionen

///////////////////////////////////////////////////////////////////////////////////////
// Ergebnisdatei öffnen bzw. wir legen diese neu an, falls nicht vorhanden //
/////////////////////////////////////////////////////////////////////////////////////

if (file_exists($datei)) {  // Existiert die Datei?
 
$votes file($datei);  // Dann in Array "$votes" einlesen
}
else {  
//Wenn nicht ->
 
$handle fOpen($datei"w+");  // Datei anlegen
 
for ($zaehler 0$zaehler$anzahl$zaehler++) {  // Für jede Option
  
fPuts($handle"0\n");  // "0" in Datei schreiben (mit Zeilenvorschub)
 
}
 
fClose($handle);  // Datei wieder schliessen
 
$votes file($datei);  // Datei in Array "$votes" einlesen
}

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Wurde abgestimmt? wenn ja, dann müssen wir das Ergebnis anpassen und in die Datei schreiben //
////////////////////////////////////////////////////////////////////////////////////////////////////////////////

if ((isset($_POST["submitvote"])) && (ip_sperre() == false)) {
 
settype($votes[$_POST["radio"]], "integer");
 
$vote_nr = ((isset($_POST["radio"])) ? $_POST["radio"] : 0);
 
$votes[$vote_nr]++;  // Entsprechende Option um eins erhöhen
 
$handle fOpen($datei"w+");  // Datei öffnen

 
for ($zaehler 0$zaehler $anzahl$zaehler++) {  // Für jede Option
  
settype($votes[$zaehler], "integer");
  
fPuts($handle"$votes[$zaehler]\n");  // Anzahl in Datei schreiben (mit Zeilenvorschub)
 
}
 
fClose($handle);  // Datei wieder schliessen
}

//////////////////////////////////////////////////////////////////
// Jetzt startet die Ausgabe! zuerst mal die Überschrift //
////////////////////////////////////////////////////////////////

echo "<H2>" $frage "</H2>\n\n";  // Überschrift schreiben

////////////////////////////////////////////
// Dann das Ergebnis als Balkengrafik //
//////////////////////////////////////////

for ($zaehler 0$zaehler $anzahl$zaehler++) { // Für jede Option
 
$balken 0;
 echo 
$option[$zaehler] . "&nbsp; &nbsp; <SPAN style=\"color: " $farbe[$zaehler] . "\">";  // Option ausgeben und Farbe setzen
 
for ($balken$balken $votes[$zaehler]; $balken++) { // Für Anzahl der Votes
  
echo "|";  // Je einen Strich ausgeben
 
}
 echo 
"&nbsp; &nbsp; " $votes[$zaehler] . "</SPAN><BR>\n";  // Balken zu ende, also Zeilenumbruch
}

//////////////////////////////////////////
// am Schluss das Auswahlformular //
////////////////////////////////////////

echo "<h3>Abstimmen:</h3>";
echo 
"<FORM ACTION=\"" $_SERVER["PHP_SELF"] . "\" METHOD=\"Post\">\n";  // Formular anfangen
for ($zaehler 0$zaehler $anzahl$zaehler++) {  // Fuer jede Option
 
echo "<INPUT TYPE=\"radio\" NAME=\"radio\" VALUE=\"" $zaehler "\">" $option[$zaehler] . "<BR>\n";  // Radiobutton anzeigen
}
echo 
"<INPUT TYPE=\"Submit\" VALUE=\"Abstimmen\" NAME=\"submitvote\"></FORM>";  // Formularende
?>

Allerdings zählt er nach abgeben einer Bewertung nichts dazu. Wenn ihr den Fehler findet, habe ich noch mal eine Bitte, kann man das Ergebnis mit Balken darstellen???
Profil ansehen
Seite: 1 no reply
Powered by Pascal Landau © 2006 MyWebsolution.de
Designed by Pascal Landau © 2006 MyWebsolution.de
 
 
 
 
Home Email Impressum Disclaimer Statistik