Fehler in meiner vote.php aber wo?


 
Neues Thema eröffnen   Neue Antwort erstellen    Webmaster Forum -> Hilfe für Webmaster
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Gast


BeitragFehler in meiner vote.php aber wo? Antworten mit Zitat

hi leute,
ich habe zu erst in line 100 und jetzt in line 134 einen fehler angezeigt bekommen, habe den ersten korrigiert, finde aber den zweiten nicht. Es könnten aber noch weitere Fehler existieren.
Schon mal danke für eure Hilfe im Voraus
PHP-Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
<?php
require 'badword.php';

function 
schreiben($datei,$mode) { 
   global 
$REMOTE_ADDR
   
$fp = @fopen($datei,$mode); 
   
flock($fp,2); 
   
fwrite($fp,$REMOTE_ADDR."|".time()."\n"); 
   
flock($fp,3); 
   
fclose($fp); 


function 
ip_sperre() { 
   global 
$REMOTE_ADDR
   
$reloadlogdatei "ips.txt"
   
$anzahleintraege 50// nach sovielen ip´s werden die alten gelöscht
   
$zeitlimit 3600// solange bleibt eine ip gesperrt
    
   // 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 (
$i=0;$i<$size;$i++) { 
         
$zeile explode("|",$fp[$i]); 
         if (
$zeile[0] == $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

$anzahl 5;  // Anzahl der Auswahloptionen

$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


//////////////////////////////////////////////////////////////////////////////////////////
// so, und hier das Script&#058;                                                             //
//                                                                                      //
// zuerst oeffnen wir die Ergebnisdatei, bzw. 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
    
$i=0;
    for (
$i$i<$anzahl$i++) {  //fuer 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 muessen wir das Ergebnis anpassen und in die Datei schreiben //
//////////////////////////////////////////////////////////////////////////////////////////////////

if (($submitvote) && (ip_sperre()==false))  
    
settype($votes[$radio],"integer");
    
$votes[$radio]++;  //entsprechende Option um eins erhoehen
    
$handle fopen($datei"w+");  //Datei oeffnen
    
$i=0;
    for (
$i$i<$anzahl$i++) {  //fuer jede Option
        
settype($votes[$i],"integer");
        
fputs($handle,"$votes[$i]\n");  //Anzahl in Datei schreiben (mit Zeilenvorschub)
    
}
    
fclose($handle);  //Datei wieder schliessen


////////////////////////////////////////////////////////////
// jetzt startet die Ausgabe! zuerst mal die Ueberschrift //
////////////////////////////////////////////////////////////

echo "<H1>".$frage."</H1>\n\n";  //Ueberschrift schreiben

////////////////////////////////////////
// dann das Ergebnis als Balkengrafik //
////////////////////////////////////////

$i=0;
for (
$i$i<$anzahl$i++) {  //fuer jede Option
    
$j=0;
    echo 
$option[$i]."&nbsp;&nbsp;&nbsp;<FONT COLOR=\"".$farbe[$i]."\">";  //Option ausgeben und Farbe setzen
    
for($j$j<$votes[$i]; $j++) {  //fuer Anzahl der Votes
        
echo "|";  //je einen Strich ausgeben
    
}
    echo 
"&nbsp;&nbsp;&nbsp;".$votes[$i]."</FONT><BR>\n";  //Balken zu ende, also Zeilenumbruch


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

echo "<FORM ACTION=\"".$PHP_SELF."\" METHOD=\"Post\">\n";  //Formular anfangen
$i=0;
for (
$i$i<$anzahl$i++) {  //fuer jede Option
    
echo "<INPUT TYPE=\"radio\" NAME=\"radio\" VALUE=\"".$i."\">".$option[$i]."<BR>\n";  //Radiobutton anzeigen
}

echo 
"<INPUT TYPE=\"Submit\" VALUE=\"Abstimmen\" NAME=\"submitvote\"></FORM>";  //Formularende


?>

mfg
michi
12 Apr 2008 21:38
Werner
Homepage-Total.de
Moderator

Beitrag Antworten mit Zitat

PHP-Code:
1
for ($i$i<$anzahl$i++) {  //fuer jede Option 

Die abschließende Klammer für diese Schleife ist nicht vorhanden.
PHP-Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
////////////////////////////////////////
// dann das Ergebnis als Balkengrafik //
////////////////////////////////////////

$i=0;
for (
$i$i<$anzahl$i++) {  //fuer jede Option
    
$j=0;
    echo 
$option[$i]."&nbsp;&nbsp;&nbsp;<FONT COLOR=\"".$farbe[$i]."\">";  //Option ausgeben und Farbe setzen
    
for($j$j<$votes[$i]; $j++) {  //fuer Anzahl der Votes
        
echo "|";  //je einen Strich ausgeben
    
}
    echo 
"&nbsp;&nbsp;&nbsp;".$votes[$i]."</FONT><BR>\n";  //Balken zu ende, also Zeilenumbruch

### Hier sollte die Schleife enden
//////////////////////////////////// 

_________________
Bei Fragen oder Fehlermeldungen - Bitte ausführlichen Code posten!
Wie man Fragen richtig stellt
12 Apr 2008 21:57
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Gast


Beitrag Antworten mit Zitat

danke
12 Apr 2008 22:21
Gast


Beitrag Antworten mit Zitat

sorry nochmal,
ich habe das dann mal getestet.
es gab keine fehlermeldung mehr (deswegen nochmal danke), allerdings habe ich es dann getestet und er zählt nichts dazu

weisst du wie man das beheben kann? ich bin ein anfänger und habe dieses script nur im internet gefunden.
kannst du das möglichst auch in eine mysql-datenbank schreiben lassen?
das kann ich immer mit phpmyadmin

mfg
michi
12 Apr 2008 22:26
Werner
Homepage-Total.de
Moderator

Beitrag Antworten mit Zitat

Anonymous hat Folgendes geschrieben:

kannst du das möglichst auch in eine mysql-datenbank schreiben lassen?
das kann ich immer mit phpmyadmin

Und was steht bei PHPmyadmin , nachdem du einen
Datensatz eingefügt hast? -> Der SQL-Quellcode um einen weiteren Datensatz einzufügen.

Daten in eine mysql-datenbank schreiben (SQL INSERT INTO)

_________________
Bei Fragen oder Fehlermeldungen - Bitte ausführlichen Code posten!
Wie man Fragen richtig stellt
13 Apr 2008 11:08
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Gast


Beitrag Antworten mit Zitat

muss man sonst nichts mehr ändern?
also müsste des so dann doch auch gehen
13 Apr 2008 12:33
Werner
Homepage-Total.de
Moderator

Beitrag Antworten mit Zitat

Also ich habe das Script zum laufen gebracht Wink
Getestet auf einem lokalen Webserver!
PHP-Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
<?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
?>

Das Script erstellt zwei txt-Dateien "ips.txt" und "ergebnis.txt"

_________________
Bei Fragen oder Fehlermeldungen - Bitte ausführlichen Code posten!
Wie man Fragen richtig stellt
13 Apr 2008 20:18
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Gast


Beitrag Antworten mit Zitat

bei mir klappts nicht
-->immer noch
19 Apr 2008 22:18
Werner
Homepage-Total.de
Moderator

Beitrag Antworten mit Zitat

Tipp 1: Zwei leere txt-Dateien "ips.txt" und "ergebnis.txt" erstellen.
Tipp 2: Arrow Schreib- und Zugriffsrechte für die erstellten Dateien ändern.

_________________
Bei Fragen oder Fehlermeldungen - Bitte ausführlichen Code posten!
Wie man Fragen richtig stellt
21 Apr 2008 17:49
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
axinio Internet Marketing
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Webmaster Forum -> Hilfe für Webmaster Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  

Ähnliche Beiträge
Thema Webmaster Forum Antw. Autor Verfasst am
Keine neuen Beiträge Angehängte Bilder werden übermittelt,... PHP / MySQL 3 Casadero 19 Nov 2011 19:17 Letzten Beitrag anzeigen
Keine neuen Beiträge Super Sache, aber bitte die Fenster G... PHP / MySQL 4 Casadero 27 Okt 2011 00:11 Letzten Beitrag anzeigen
Keine neuen Beiträge Ich finde den Fehler nicht Javascript 7 Werner 07 Aug 2011 14:03 Letzten Beitrag anzeigen
Keine neuen Beiträge Gästebuch erstellen (aber ohne Smilies) Hilfe für Webmaster 1 Steffen_1971 26 Mai 2011 21:13 Letzten Beitrag anzeigen
Keine neuen Beiträge Kontaktformular-Generator Fehler PHP / MySQL 4 proshot 01 Apr 2011 11:33 Letzten Beitrag anzeigen