Hallo,
Die Schreibfunktion der Guestbook.php sieht so aus :
function write_input($new_name, $new_input,$bookfile){
include ("BILDER/check.inc");
$new_input = check($new_input);
$fd = fopen($bookfile,"a");
$new_input = str_replace("\n","<br>",$new_input);
Das geht auch schon in check(), warum hier nochmal den ganzen Text durchkauen?
Ob ich den befehl nu hier oder in check() reinschreibe ändert nichts, ausgeführt werden muss er.
fwrite ($fd, "<b>".$new_name.": (" . strftime("%d.%m.%Y", time()) . ")</b><br>".$new_input."\r\n");
fclose ($fd);
}
Die Funktion Check in der check.inc sieht so aus :
<?PHP
function check($txt){
$bookfile = "check.txt";
$fd = fopen($bookfile,"r");
Datei öffnen, lesen, schließen kostet alles Zeit. Warum nicht hardcoden?
(Ich bin zwar auch gegen hardcoden, aber hier kann man's machen)
öffnen lesen schließen ist notwendig um an die Daten die da stehen heranzukommen.Logisch oder ?
Und was meinst du mit hardcoden ?
$boa = 0;
while (!feof($fd)) {
Dadurch würdest Du hier über ein simples Array loopen, statt über eine Datei.
Leider hab ich nicht die geringste ahnung von Arrays.
$zeile = fgets($fd,1024);
Würde wegfallen.
$bob = 0;
$zeile = ereg_replace("\r\n","",$zeile);
Würde wegfallen.
if (strchr($zeile,"[")<>"") {$bob = 1;$boa = 1;}
if (strchr($zeile,"]")<>"") {$bob = 1;$boa = 0;}
if (($bob == 0)&&($boa == 0)) $dic = $zeile;
Würde wegfallen (Warum hast Du kein Switch genommen?)
Vom switch hab ich auch keine ahnung.
if (($bob == 0)&&($boa == 1)) $txt = ereg_replace("#" . trim($zeile) . "#","<img src="http://mitglied.lycos.de/hermannguensti/Others/ROT/BILDER/" . $dic . "/" . $zeile . ".gif" border="0">",$txt);
}
Müßte dann etwas angepaßt werden. Würde ich dann über einen großen Switch() laufen lassen. Soviel ist es nicht, da die Zeit zum Parsen einen Einfluß nehmen könnte. (Falls nicht eh schon gecached wird)
fclose ($fd);
Würde wegfallen.
return $txt;
}
?>
Uns die die check.txt sieht in etwa so aus :
Würde dann auch wegfallen
Man könnte das ganze zwar extrem kürzen wenn man stadt #Name# gleich den <img src="..../Name"> angeben würde, jedoch wäre das nicht so nutzerfreundlich die #Name# methode.
Das kannst Du dann behalten ;-)
Warum nimmst Du eigentlich nicht direkt #name# ?
Wie meinst du das ?
so short
Christoph Zurnieden
Wenns nicht zuviel arbeit macht könntest du mir mal zeigen wie das aussieht wenn du das machen würdest.