PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Brauche dringend Hilfe wegen Reloadsperre!!!!!!


Hiyanha
27.06.2002, 13:40:02
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.php?board=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
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