PHP Forum

PHP Forum (http://www.selfphp.de/forum/index.php)
-   PHP Grundlagen (http://www.selfphp.de/forum/forumdisplay.php?f=12)
-   -   Brauche dringend Hilfe wegen Reloadsperre!!!!!! (http://www.selfphp.de/forum/showthread.php?t=1651)

Hiyanha 27.06.2002 13:40:02

Brauche dringend Hilfe wegen Reloadsperre!!!!!!
 
Servus!

Ich hab mir gesetern ein PHPscript für ein Forum downgeloadet und installiert.
Es klappt alles soweit wunderbar, aber in einem Script ist eine Reloadsperre eingebaut, die verhindert, dass ein User zweimal im selben Beitrag antworten darf.
Diese Sperre möchte ich gerne entfernen, weiss aber nicht wie.

Hier ist mal das entsprechende Script. Ich habe leider keinen Plan, wo diese verflixte Sperre steckt. Vielleicht findet sie ja einer von Euch (Bin übrigens noch totaler PHP- Anfänger)


<?PHP
include("top.php");
if ($passwd=="") $passwd="nicht registriert";
if (file_exists("themen/".$board."_".$thema.".txt"))
{
if ((strlen($name)>4) && ($passwd==passwd($name)))
{
global $REMOTE_ADDR; //IP-Adresse des Besuchers
$logfile = "themen/".$board."_".$thema.".ipx";
if(!file_exists($logfile)){$datei = fopen($logfile,"w+");fwrite($datei,"100.0.0.0"); fclose($datei);}


$f=fopen($logfile,"r");
$ips = fgetcsv($f,1000,"|");
fclose($f);
$locked=false;
if($ips[0]==$REMOTE_ADDR) $locked=true;
http://www.hp-planet.de/board/thema....ard=10&thema=9

if($locked==false)
{
$f=fopen($logfile,"w");
fwrite($f,$REMOTE_ADDR);
fclose($f);
}

if ($locked==false)
{

$datei = fopen("boards/".$board."beitrage.txt","r");
$zaehler = fgets($datei, 1000);
fclose ($datei);
$zaehler++;
$datei = fopen ("boards/".$board."beitrage.txt","w");
fputs ($datei, $zaehler);
fclose($datei);

$datei = fopen ("boards/".$board."datum.txt","w");
fputs ($datei, "<a href="thema.php?board=$board&thema=$thema&page=999">".date("d.m.y H:i")."<br>$name</a>");
fclose($datei);

$fp = fopen("themen/".$board."_".$thema.".txt","a");
fwrite($fp, date("d.m.Y H:i")."#".$name."#".$titel."#".format($text)."
");
fclose($fp);
countbeitr($name);
echo "<center><h3>Ihre Antwort wurde eingetragen.<br><a href=thema.php?board=$board&thema=$thema&page=999>zum Thema</a>";
}
else
{
echo "<center><h3>Sie können nicht 2 Mal hintereinander auf das selben Thema antworten.<p><a href=index.php>zurück zum Board</a>";
}
}
else
{
echo "<center><h3>Der Name ist zu kurz (5 Zeichen) oder das Passwort ist falsch.<p><a href=javascript:history.back()>zurück</a>";
}
}
else
{
echo "<center><h3>Das Thema $id existiert nicht, oder wurde gesperrt.<p><a href=index.php>zurück zum Board</a>";
}
?>

</table>
</center>
<?PHP
readfile("bottom.htm");
?>




Bitte, bitte sagt mir, wie ich diese Reloadsperre eliminieren kann.
Die URl zu dem entsprechendem Forum (falls Ihr sie braucht) ist http://testforum.hiyanha.de

Liebe Grüsse,
Hiyanha

xtension 27.06.2002 14:25:34

Hi Hiyanha,


ich denke das problem liegt an dieser stelle:

if($ips[0]==$REMOTE_ADDR) $locked=true;

wenn ich mich nicht total irre müsste es so funzen:

if($ips[0]==$REMOTE_ADDR) $locked=false;

in der if-abfrage wird die IP-Adr. des benutzers abgefragt,
hat er schon einmal gepostet wird '$locked' auf 'true' gesetzt und der treadt ist gesperrt.

im der nachfolgenden If-abfrage wird dann '$locked' abgefragt, wenn auf 'false' gestellt wird der beitrag gepostet.

scheiss dann noch:
....
else
{
echo "<center><h3>Sie können nicht 2 Mal hintereinander auf das selben Thema antworten.<p><a href=index.php>zurück zum Board</a>";
}
....
raus
und es müsste funktionieren

Gruss xtension

Hiyanha 27.06.2002 14:27:38

Oh Danke!!!!!!

Ich versuche es gleich mal!

Liebe Grüsse,
Hiyanha

Hiyanha 27.06.2002 14:36:01

Ich nochmal.

Nachdem ich beitragadd.php umgebaut habe, erscheint beim posten folgender Fehler:

Parse error: parse error in /usr/local/httpd/htdocs/kunden/web161/html/forum/beitragadd.php on line 18


Habe ich etwas falsch gemacht?
Mein Quelltext lautet jetzt so:

<?PHP
include("top.php");
if ($passwd=="") $passwd="nicht registriert";
if (file_exists("themen/".$board."_".$thema.".txt"))
{
if ((strlen($name)>4) && ($passwd==passwd($name)))
{
global $REMOTE_ADDR; //IP-Adresse des Besuchers
$logfile = "themen/".$board."_".$thema.".ipx";
if(!file_exists($logfile)){$datei = fopen($logfile,"w+");fwrite($datei,"100.0.0.0"); fclose($datei);}


$f=fopen($logfile,"r");
$ips = fgetcsv($f,1000,"|");
fclose($f);
$locked=false;
if($ips[0]==$REMOTE_ADDR) $locked=false;
http://www.hp-planet.de/board/thema...oard=10&thema=9

if($locked==false)
{
$f=fopen($logfile,"w");
fwrite($f,$REMOTE_ADDR);
fclose($f);
}

if ($locked==false)
{

$datei = fopen("boards/".$board."beitrage.txt","r");
$zaehler = fgets($datei, 1000);
fclose ($datei);
$zaehler++;
$datei = fopen ("boards/".$board."beitrage.txt","w");
fputs ($datei, $zaehler);
fclose($datei);

$datei = fopen ("boards/".$board."datum.txt","w");
fputs ($datei, "<a href="thema.php?board=$board&thema=$thema&page=999">".date("d.m.y H:i")."<br>$name</a>");
fclose($datei);

$fp = fopen("themen/".$board."_".$thema.".txt","a");
fwrite($fp, date("d.m.Y H:i")."#".$name."#".$titel."#".format($text)."
");
fclose($fp);
countbeitr($name);
echo "<center><h3>Ihre Antwort wurde eingetragen.<br><a href=thema.php?board=$board&thema=$thema&page=999>zum Thema</a>";
}

}
else
{
echo "<center><h3>Der Name ist zu kurz (5 Zeichen) oder das Passwort ist falsch.<p><a href=java script:history.back()>zurück</a>";
}
}
else
{
echo "<center><h3>Das Thema $id existiert nicht, oder wurde gesperrt.<p><a href=index.php>zurück zum Board</a>";
}
?>

</table>
</center>
<?PHP
readfile("bottom.htm");
?>


Wo liegt denn da bitte der Hase im Pfeffer? Köttest Du nicht für mich Anfängerin den Quettext genau so posten, wie ich ihn hochladen muss? *bittebittebittebittebitte*


Liebe Grüsse,
Hiyanha, die total verzeifelt ist

Ben20 27.06.2002 14:40:34

Zitat:

Original geschrieben von Hiyanha


... $fp = fopen("themen/".$board."_".$thema.".txt","a");
fwrite($fp, date("d.m.Y H:i")."#".$name."#".$titel."#".format($text)."
");
fclose($fp);
countbeitr($name);
echo "<center><h3>Ihre Antwort wurde eingetragen.<br><a href=thema.php?board=$board&thema=$thema&page=999>zum Thema</a>";
} <-- Hier ist der Fehler!

}
else
{
echo "<center><h3>Der Name ist zu kurz (5 Zeichen) oder das ...

Die Klammer ist zuviel (stammt wahrscheinlich noch vom "else" - Block den Du entfernt hast.)

Hiyanha 27.06.2002 14:41:52

Danke Dir!
Ich versuche es direkt nochmal!


MfG,
Hiyanha

Ben20 27.06.2002 14:43:51

Gern geschehen

xtension 27.06.2002 14:47:24

und überprüf die {} das es zu jeder öffnenden eine schliessende gibt


gruss xtension

Hiyanha 27.06.2002 14:53:17

Es klappt!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!1

Ich könnt Euch knutschen! Vielen, lieben Dank!!!!!!!

Hiyanha


Alle Zeitangaben in WEZ +2. Es ist jetzt 18:14:43 Uhr.

Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.