Hi,
die bleiben nur 2 Wochen gespeichert... Hm...
Dann musst Du die Kampfberichte auf Deinen Server übertragen
Du hast Glück, denn ich doktore gerade an einem Script, mit dem man externe Seiten auf den eigenen Server übertragen und speichern kann.
Ich habe das ein wenig abgeändert und für Deine Kampfberichte optimiert.
Lege auf Deinem Server per FTP einen Ordner an (z.B. kampfberichte) und gib diesem Ordner CHMOD 755.
Dann kopiere folgenden Code in einen Editor, speichere ihn als
index.php (UTF8 ohne BOM) und lade die Datei in den Ordner:
Code: Alles auswählen
<?php
error_reporting(E_STRICT);
function get_source_with_curl ( $url, $get_array = array(), $timeout = 4, $error_report = true )
{
$get_string = null;
foreach ($get_array as $key => $val)
{
$get_string
= $get_string
. $key
. '='
. urlencode($val)
. '&';
}
$get_string = rtrim($get_string, '&');
if (!empty($get_string)) $url .= '?' . $get_string;
$curl = curl_init();
$header[] = "Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5";
$header[] = "Cache-Control: max-age=0";
$header[] = "Connection: keep-alive";
$header[] = "Keep-Alive: 300";
$header[] = "Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7";
$header[] = "Accept-Language: en-us,en;q=0.5";
$header[] = "Pragma: ";
curl_setopt( $curl, CURLOPT_URL, $url);
curl_setopt( $curl, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.6) Gecko/20091201 Firefox/3.5.6');
curl_setopt( $curl, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 5.1; rv:7.0.1) Gecko/20100101 Firefox/7.0.1');
curl_setopt( $curl, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 6.1; rv:13.0) Gecko/20100101 Firefox/13.0.1');
curl_setopt( $curl, CURLOPT_HTTPHEADER, $header);
curl_setopt( $curl, CURLOPT_REFERER, 'http://www.google.com');
curl_setopt( $curl, CURLOPT_ENCODING, 'gzip,deflate');
curl_setopt( $curl, CURLOPT_AUTOREFERER, true);
curl_setopt( $curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt( $curl, CURLOPT_FOLLOWLOCATION, true);
curl_setopt( $curl, CURLOPT_TIMEOUT, $timeout);
curl_setopt( $curl, CURLOPT_SSL_VERIFYPEER, false);
$sourcecode = curl_exec($curl);
if ($sourcecode === false)
{
if ($error_report)
{
echo "<p>Achtung: Dieser Kampf-Bericht (URL) existiert nicht oder der Server ist z.Zt. nicht erreichbar.<br />Bitte erneut versuchen...</p>";
exit;
}
curl_close($curl);
return false;
}
curl_close($curl);
return $sourcecode;
}
$result = "<p>Kampf-Bericht-Link (URL) ins Feld kopieren und dann absenden.</p>";
if (!empty($_GET["url"]))
{
$url = strtolower($_GET["url"]);
if(!filter_var(($url), FILTER_VALIDATE_URL))
{
header('Location:' . $_SERVER['SCRIPT_NAME']);
}
$parsed_uri = parse_url($url);
if ($parsed_uri['query'])
{
$filename = $parsed_uri['query'];
}
else
{
$filename = time();
}
$sourcecode = get_source_with_curl($url);
$fp = fopen("$filename.html","wb");
if( $fp == false )
{
$result = "<p>Achtung: Dieser Kampf-Bericht existiert nicht oder der Server ist nicht erreichbar.<br />Es ist ein Fehler aufgetreten. Bitte erneut versuchen.</p>";
}
else
{
fwrite($fp, $sourcecode);
$new_html = 'http://' . $_SERVER['SERVER_NAME'] . dirname($_SERVER['REQUEST_URI']) . '/' . $filename . '.html';
$result = '
<p><hr /><b>Übertragung erfolgreich: </b>
<a href="' . $new_html . '" onclick="window.open(\'' . $new_html . '\');return false;"> >> Kampf-Bericht anzeigen << </a>
<br /><br />
Inhalt aus dem Feld kopieren und im Beitrag wieder einfügen:
<br />
<input type="text" size="76" value="[kb]' . $new_html . '[/kb]" maxlength="144" onclick="this.select();" />
<hr /></p>
';
fclose($fp);
}
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" lang="de" xml:lang="de">
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<title>...</title>
</head>
<body>
<div>
<form action="<?php echo $_SERVER['SCRIPT_NAME']; ?>" method="get">
<fieldset style="border:0;">
<strong>Link zum Kampfbericht einfügen:</strong><br />
<input type="text" size="70" name="url" value="" maxlength="144" />
<input type="submit" name="submit" value=">" title="Kampfbericht übertragen" />
<?php echo $result; ?>
</fieldset>
</form>
</div>
</body>
</html>
Nun kannst Du diese Datei aufrufen, indem Du "http://deine_domain.tld/der_neue_ordner/" aufrufst.
Lege jetzt einen weiteren bbCode an:
Nutzung:
[kb-upload][/kb-upload]
HTML-Ersetung:
Code: Alles auswählen
<div style="text-align:center;">
<object data="http://deine_domain.tld/der_neue_ordner/index.php" type="text/html" style="width:550px;height:220px;border:0;"></object>
</div>
Darin muss
http://deine_domain.tld/der_neue_ordner/index.php auf die neue Datei verweisen.
Du kannst diesen Link auch relativ angeben.
Jetzt können Deine User zuerst den neuen bbCode aufrufen, auf Vorschau klicken und dort ihren Kampfbericht übertragen.
Dazu wird die URL des Kmpfberichtes in das Textfeld kopiert und abgesendet.
Sofern Dein Server cURL und fopen() unterstützt, erscheint daraufhin ein weiteres Textfeld, indem man den kompletten Code des ersten bbCodes kopieren kann.
Wird dieser nun in den Beitrag eingefügt, wird der Kampfbericht wie zuvor angezeigt, nur dauerhaft und von Deinem Server...
LG
PS: Viel Spaß damit
