Example #1
0
        }
        require_once dirname(__FILE__) . "/templets/resetpassword3.htm";
    }
    exit;
} elseif ($dopost == "safequestion") {
    $mid = ereg_replace("[^0-9]", "", $id);
    $sql = "Select safequestion,safeanswer,userid,email From #@__member where mid = '{$mid}'";
    $row = $db->GetOne($sql);
    if (empty($safequestion)) {
        $safequestion = '';
    }
    if (empty($safeanswer)) {
        $safeanswer = '';
    }
    if ($row['safequestion'] == $safequestion && $row['safeanswer'] == $safeanswer) {
        sn($mid, $row['userid'], $row['email'], 'N');
        exit;
    } else {
        ShowMsg("对不起,您的安全问题或答案回答错误", "-1");
        exit;
    }
} elseif ($dopost == "getpasswd") {
    //修改密码
    if (empty($id)) {
        ShowMsg("对不起,请不要非法提交", "login.php");
        exit;
    }
    $mid = ereg_replace("[^0-9]", "", $id);
    $row = $db->GetOne("Select * From #@__pwd_tmp where mid = '{$mid}'");
    if (empty($row)) {
        ShowMsg("对不起,请不要非法提交", "login.php");
Example #2
0
function ftr()
{
    global $license;
    ?>
		</div>
		<div id='FOOT'>
			<a href='/contact/' class='contact'><?php 
    i18n(array('en' => 'Imprint&nbsp;/ Contact&nbsp;/ Disclaimer', 'de' => 'Impressum&nbsp;/ Kontakt&nbsp;/ Haftungsausschluss'));
    ?>
</a>
<?php 
    echo $license;
    ?>
		</div>
	</div></div>
	<div id='LEFT'><div id='SITENAME' class='<?php 
    echo SECTION;
    ?>
'><a href='/'><?php 
    echo sn();
    ?>
</a></div><div id='MENUCONNECT'><img src='/style/07/menuconnect.gif' width='120' height='7' alt='Dekoration' /></div><div id='MENU'><ul
		><li
			><a href='/blog/' class='blog'>Blog</a></li><li
			><a href='/proj/' class='proj'><?php 
    i18n(array('en' => 'Projects', 'de' => 'Projekte'));
    ?>
</a><ul><li
				><a href='/proj/forscript/'>forscript</a></li><li
				><a href='http://levit.at/ion/'>Levitation</a></li><li
				><a href='/proj/dretweet/'>dretweet</a></li><li
				><a href='/proj/qb/'>qb: quick blogging</a></li><li
				><a href='/git/'><?php 
    i18n(array('en' => 'Source Code at', 'de' => 'Quellcode bei'));
    ?>
 GitHub</a></li></ul></li><li
			><a href='/files/' class='files'><?php 
    i18n(array('en' => 'Files', 'de' => 'Dateien'));
    ?>
</a><ul><li
				><a href='/files/talks/'><?php 
    i18n(array('en' => 'Talks', 'de' => 'Vortr&auml;ge'));
    ?>
</a></li><li
				><a href='/files/doc/'><?php 
    i18n(array('en' => 'Writings', 'de' => 'Geschreibsel'));
    ?>
</a></li><li
				><a href='/files/scytale.asc'><?php 
    i18n(array('en' => 'PGP key', 'de' => 'PGP-Key'));
    ?>
</a></li></ul></li><!--<li
			><a href='/me/'><?php 
    i18n(array('en' => 'About Me', 'de' => '&uuml;ber mich'));
    ?>
</a></li>--><li
			><a href='/wish/' class='wish'><?php 
    i18n(array('en' => 'Wishlist', 'de' => 'Wunschzettel'));
    ?>
</a></li><li
			><a href='/contact/' class='contact'><?php 
    i18n(array('en' => 'Contact', 'de' => 'Kontakt'));
    ?>
</a></li></ul
		></div>
	</div>
	<div id='RIGHT'><div id='AVATAR'><!-- <a href='/me/' title='<?php 
    i18n(array('en' => 'about me', 'de' => 'über mich'));
    ?>
'> --><img src='/style/07/scytale.png' width='48' height='48' alt='Scytale, <?php 
    i18n(array('en' => 'avatar image', 'de' => 'Avatarbild'));
    ?>
' /><!-- </a> --></div></div>
<script type="text/javascript">

  var _gaq = _gaq || [];
  _gaq.push(['_setAccount', 'UA-23544141-1']);
  _gaq.push(['_trackPageview']);

  (function() {
    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
  })();

</script>
</body>

</html><?php 
}
Example #3
0
	Deshalb sind auch <em>localhost.localdomain</em> oder Konstrukte wie <em>bilbo.daheim.local</em> nicht brauchbar für Message-IDs.
	Du verringerst zwar vielleicht die Wahrscheinlichkeit, dass jemand anderer die selbe Message-ID benutzt, aber ohne registrierte Domain ist sie immer noch viel zu hoch.
</p>
<p>
	Der Teil vor dem <tt>@</tt> muss nur innerhalb der Domain eindeutig sein und besteht meist aus einem Zeitstempel, einer Prozess-ID, einer internen ID der Mail, einer Zufallszahl, beliebigen Kombinationen daraus oder irgendwelchem anderen Unfug, der halbwegs brauchbar einmalig sein soll.
</p>
<p>
	Laut Standard <em>sollte</em> jede Mail eine Message-ID haben.
	Das Wort <em>sollte</em> bedeutet hier "wenn du einen guten Grund hast, keine zu haben, und dir der Konsequenzen bewusst bist, kannst du sie weglassen".
	Auf Deutsch heißt das dann: "Es ist keine gute Idee, sie wegzulassen, weil es massive Mengen Ärger bedeuten kann".
	Unter anderem gibt es ohne Message-ID keine Möglichkeit mehr, deine Mail in <em>In-Reply-To</em> zu referenzieren, und alle Antworten auf deine Mail sprengen automatisch die Threads.
	Das ist extrem unschön, und ich kann jedem nur empfehlen, auf Mails ohne Message-ID nicht zu antworten.
</p>

<h2 id='history'>Versionsgeschichte</h2>
<dl>
<dt>9. September 2007</dt>
	<dd>Erste Veröffentlichung.</dd>
<dt>25. September 2007</dt>
	<dd>An das neue Design von <?php 
echo sn();
?>
 angepasst. Bild unter <a href='#thread'>Threads</a> verkleinert. Versionsgeschichte erstellt. <a href='#clients'>Clientempfehlungen</a> und <a href='#format'>Formatierungshinweise</a> auf Vorschlag von Hauke hinzugefügt.</dd>
<dt>19. Dezember 2007</dt>
	<dd>ReplyToList-Plugin für Thunderbird verlinkt.</dd>
<dt>11. Juni 2009</dt>
	<dd>Unter Creative Commons gestellt.</dd>
</dl>
<p style='text-align:center; font-size:80%;'><a rel="license" href="http://creativecommons.org/licenses/by-nc/3.0/de/"><img alt="Creative Commons License" style="border-width:0" src="http://i.creativecommons.org/l/by-nc/3.0/de/88x31.png" /></a><br /><span xmlns:dc="http://purl.org/dc/elements/1.1/" href="http://purl.org/dc/dcmitype/Text" property="dc:title" rel="dc:type">Benutzen einer offenen Mailingliste</span> von <a xmlns:cc="http://creativecommons.org/ns#" href="http://scytale.name/" property="cc:attributionName" rel="cc:attributionURL">Tim Weber</a> steht unter einer <a rel="license" href="http://creativecommons.org/licenses/by-nc/3.0/de/">Creative Commons Namensnennung-Keine kommerzielle Nutzung 3.0 Deutschland Lizenz</a>.<br />Beruht auf einem Inhalt unter <a xmlns:dc="http://purl.org/dc/elements/1.1/" href="http://scytale.name/files/doc/list-faq/" rel="dc:source">scytale.name</a>.</p>
<?php 
ftr();
Example #4
0
<?php

require_once 'scytale.name.php';
lang('en de');
$err = 200;
if (isset($_SERVER['REDIRECT_STATUS'])) {
    $err = (int) $_SERVER['REDIRECT_STATUS'];
}
$errors = array('en' => array(200 => 'OK|<p>Error code 200 is no error, but rather means "no error occured". You most likely called this error handler manually even though there was no error at all. Oh well.</p>', 403 => 'forbidden|<p>You do not have permission to view this page, sorry.</p>', 404 => 'not found|<p>The file you requested is no longer available or never existed.</p><ul><li>If you typed the address directly into your browser\'s address bar, please check it for typing errors.</li><li>If you came here from another web site, please inform the maintainer of that web site.</li><li>If you came here using an internal link on ' . sn() . ', please use the contact information below to notify me. Please note that files below <a href=\'/files/tmp/\'>/files/tmp/</a> can be deleted without announcing in advance.</li><li>You may also contact me if you are desperately looking for some information that used to be here once, I\'ll see whether I can find something in my archives.</li></ul>', 405 => 'method not allowed|<p>Your request method is not allowed. You are most likely pentesting this server, please buzz off.</p>', 410 => 'gone|<p>This address once existed, but has been deleted. The reason for this could be that it was a never-finished project, hopelessly outdated or that it has been taken down for legal reasons. If you need more information, please contact me.</p>', 500 => 'internal server error|<p>An internal server error occured. This means that something is broken on my server. Please retry in a couple of minutes. If the problem persists, please contact me.</p>', 503 => 'service unavailable|<p>Your request cannot be handled at the moment, most likely because the server is already handling its maximum number of concurrent requests. Please try again later. If the problem persists, please contact me.</p>'), 'de' => array(200 => 'OK|<p>Fehlercode 200 ist kein Fehler, sondern bedeutet "kein Fehler aufgetreten". Sie haben wahrscheinlich diese Fehlerbehandlung manuell aufgerufen, obwohl es überhaupt keinen Fehler gab. Nun ja.</p>', 403 => 'verboten|<p>Sie haben leider keine Berechtigung, diese Seite zu betrachten.</p>', 404 => 'nicht gefunden|<p>Die angeforderte Datei ist nicht mehr verfügbar oder existierte nie.</p><ul><li>Wenn Sie die Adresse direkt in die Adresszeile Ihres Browsers eingegeben haben, prüfen Sie sie auf Tippfehler.</li><li>Wenn Sie von einer fremden Website hierher kamen, informieren Sie bitte den Verantwortlichen jener Website.</li><li>Wenn Sie über einen internen Link auf ' . sn() . ' hierher kamen, benutzen Sie bitte die unten stehenden Kontaktinformationen, um mich zu benachrichtigen. Bitte beachten Sie, dass Dateien unter <a href=\'/files/tmp/\'>/files/tmp/</a> jederzeit ohne Ankündigung gelöscht werden können.</li><li>Sie können mich ebenfalls kontaktieren, wenn Sie verzweifelt nach Informationen suchen, die sich hier einst befunden haben. Ich werde sehen, ob ich etwas in meinen Archiven finden kann.</li></ul>', 405 => 'Methode nicht erlaubt|<p>Ihre Request-Methode ist nicht erlaubt. Wahrscheinlich pentesten Sie diesen Server, bitte verschwinden Sie.</p>', 410 => 'verschwunden|<p>Diese Adresse existierte einst, wurde aber gelöscht. Der Grund dafür könnte sein, dass es sich um ein nie beendetes Projekt handelte, dass die Informationen hoffnungslos veraltet waren oder dass sie aus rechtlichen Gründen vom Netz genommen wurden. Falls Sie weitere Informationen benötigen, kontaktieren Sie mich bitte.</p>', 500 => 'interner Serverfehler|<p>Ein interner Serverfehler ist aufgetreten. Das bedeutet, dass auf meinem Server etwas kaputt ist. Bitte versuchen Sie es in ein paar Minuten erneut. Falls das Problem weiterhin besteht, informieren Sie mich bitte.</p>', 503 => 'Dienst nicht verfügbar|<p>Ihre Anfrage kann momentan nicht verarbeitet werden, wahrscheinlich weil der Server bereits seine Maximalanzahl gleichzeitiger Anfragen verarbeitet. Bitte versuchen Sie es später erneut. Fals das Problem weiterhin besteht, informieren Sie mich bitte.</p>'));
if (isset($errors[$LANG][$err])) {
    $error = explode('|', $errors[$LANG][$err]);
    $short = $error[0];
    $long = $error[1];
} else {
    $short = i18n(array('en' => 'unknown', 'de' => 'unbekannt'), true);
    $long = i18n(array('en' => '<p>There is no additional description of that error available.</p>', 'de' => '<p>Es ist keine weitere Beschreibung des Fehlers verfügbar.</p>'), true);
}
hdr(array('en' => "Error {$err} ({$short})", 'de' => "Fehler {$err} ({$short})"));
echo "<p class='error'>\n\t";
i18n(array('en' => "While handling your request, an error with code {$err} ({$short}) occured. A more detailed description follows.", 'de' => "Beim Bearbeiten Ihrer Anfrage trat ein Fehler mit dem Code {$err} ({$short}) auf. Es folgt eine detailliertere Beschreibung."));
echo "\n</p>\n";
echo $long;
echo "\n<h2>";
i18n(array('en' => 'Contact', 'de' => 'Kontakt'));
echo "</h2>\n<p>\n\t";
i18n(array('en' => 'If you think that this error is my fault and that I should do something about it, please <a href=\'/contact/\'>contact me</a>. You should include the following information to make it easier for me to reproduce the error.', 'de' => 'Falls Sie der Meinung sind, dass dieser Fehler meine Schuld ist und dass ich etwas dagegen tun sollte, <a href=\'/contact/\'>kontaktieren Sie mich</a> bitte. Sie sollten die folgenden Informationen beifügen, um es mir leichter zu machen, den Fehler nachzuvollziehen.'));
echo "\n</p>\n<table>\n";
$info = array('Status' => $err, 'Date and Time' => date('c'), 'Request' => $_SERVER['REQUEST_URI'], 'Method' => $_SERVER['REQUEST_METHOD'], 'Referrer' => $_SERVER['HTTP_REFERER'], 'Client IP' => $_SERVER['REMOTE_ADDR'], 'Agent' => $_SERVER['HTTP_USER_AGENT']);
foreach ($info as $k => $v) {
    $v = htmlspecialchars($v);
    echo "\t<tr><th>{$k}</th><td>{$v}</td></tr>\n";
Example #5
0
hdr(array('en' => 'Mail Services', 'de' => 'Maildienste'));
?>
<p><?php 
i18n(array('en' => "\n\tOn this page you can find information about some rules of the " . sn() . " mail service, run by <a href='/contact/'>Tim Weber</a>, that is managing e-mail for several domains.\n\tIf you have received a link to this page as an error message while you were trying to send an e-mail to one of my users, you can find additional explanations of what caused the error and what you can do to fix it here.\n", 'de' => "\n\tAuf dieser Seite finden Sie Informationen über einige Regeln des " . sn() . "-Maildienstes, betrieben von <a href='/contact/'>Tim Weber</a>, der E-Mail für verschiedene Domains verwaltet.\n\tFalls Sie einen Link auf diese Seite als Fehlermeldung erhalten haben, während Sie versucht haben, einem meiner Benutzer eine E-Mail zu schreiben, dann finden Sie weitere Erklärungen darüber, was den Fehler verursacht hat und was Sie tun können, um ihn zu beheben, hier.\n"));
?>
</p>
<h2 id='norelay'><?php 
i18n(array('en' => 'No relaying', 'de' => 'Kein Relaying'));
?>
</h2>
<p><?php 
i18n(array('en' => "\n\tThe message <samp class='net-in'>This server won't relay for you</samp> means that you were trying to deliver an e-mail to my server with a recipient address for which it is not responsible.\n\tPlease contact the correct mail server or ask your administrator about it.\n\tIf you are sure that I am indeed responsible for the address you are trying to send mail to, please <a href='/contact/'>contact me</a>.\n", 'de' => "\n\tDie Meldung <samp class='net-in'>This server won't relay for you</samp> bedeutet, dass Sie versucht haben, eine E-Mail an meinen Server einzuliefern, die eine Empfängeradresse trägt, für die er nicht zuständig ist.\n\tBitte benutzen Sie den korrekten Mailserver oder fragen Sie bei Ihrem Administrator nach.\n\tWenn Sie sicher sind, dass ich tatsächlich zuständig für die Adresse bin, an die Sie die E-Mail verschicken möchten, <a href='/contact/'>kontaktieren Sie mich</a> bitte.\n"));
?>
</p>
<p><?php 
i18n(array('en' => "\n\tIf you are a legitimate user of the " . sn() . " mail service, please activate SMTP authentication in your e-mail client software.\n\tIf you have problems doing this, <a href='/contact/'>contact me</a>.\n", 'de' => "\n\tFalls Sie ein berechtigter Benutzer des " . sn() . "-Maildienstes sind, aktivieren Sie bitte SMTP-Authentifizierung in Ihrer Mailclient-Software.\n\tSollten Sie damit Probleme haben, <a href='/contact/'>kontaktieren Sie mich</a> bitte.\n"));
?>
</p>
<h2 id='grey'>Greylisting</h2>
<p><?php 
i18n(array('en' => "\n\tThe message <samp class='net-in'>Spam protection, please wait two minutes</samp> means exactly that:\n\tIn two minutes, your message will be allowed to reach the desired recipients, please try again later.\n\tNote that you as a normal user don't have to re-send your e-mail; the mail server of your provider will do that automatically.\n", 'de' => "\n\tDie Meldung <samp class='net-in'>Spam protection, please wait two minutes</samp> bedeutet genau das:\n\tIn zwei Minuten wird Ihre Nachricht ihre gewünschten Empfänger erreichen dürfen, bitte versuchen Sie es später noch einmal.\n\tBeachten Sie, dass Sie als normaler Benutzer Ihre E-Mail nicht erneut versenden müssen; der Mailserver Ihres Providers wird dies automatisch tun.\n"));
?>
</p>
<p><?php 
i18n(array('en' => "\n\tThe idea behind this spam protection measure is that spammers usually don't care about retrying:\n\tIf a message doesn't reach its recipient at the first try, the spammer moves on to the next victim, while real mail servers delivering real mail will try the delivery again some minutes later.\n\tYour first delivery attempt is noted down, and the second one will be allowed to pass through.\n", 'de' => "\n\tDie Idee hinter dieser Schutzmaßnahme gegen Spam besteht darin, dass Spammer sich für gewöhnlich nicht um mehrere Zustellungsversuche kümmern:\n\tWenn eine Nachricht ihren Empfänger nicht beim ersten Versuch erreicht, macht der Spammer beim nächsten Opfer weiter, während echte Mailserver, die echte Mails ausliefern, einige Minuten später einen zweiten Auslieferungsversuch starten werden.\n\tIhr erster Zustellversuch wird notiert, der zweite wird dann durchgelassen.\n"));
?>
</p>
<h2 id='nouser'><?php 
i18n(array('en' => 'User does not exist', 'de' => 'Benutzer existiert nicht'));
?>
</h2>