PHP-Code:
<?php
session_start();
require("puser_main.php");
if (isset($pu_register_redirect) and !isset($user[id])) {
header("Location: $pu_register_redirect");
exit();
}
$pagetitle.=" - Profil";
require("kopf.php");
include("head.php");
// Sicherheitscode
function encrypt($string, $key) {
$result = '';
for($i=0; $i<strlen($string); $i++) {
$char = substr($string, $i, 1);
$keychar = substr($key, ($i % strlen($key))-1, 1);
$char = chr(ord($char)+ord($keychar));
$result.=$char;
}
return base64_encode($result);
}
$sicherheits_eingabe = encrypt($_POST["sicherheitscode"], "8h384ls94");
$sicherheits_eingabe = str_replace("=", "", $sicherheits_eingabe);
//VAR Set
$jetzt =time();
$setzps =$_REQUEST['setzps'];
$username =strip_tags($_POST['username']);
$pwd =$_POST['pwd'];
$pwd2 =$_POST['pwd2'];
$nickname =strip_tags($_POST['nickname']);
$email =$_POST['email'];
$icq =intval( str_replace("-","",$_POST['icq']) );
$ircserver =strip_tags($_POST['ircserver']);
$ircchan =$_POST['ircchan'];
$homepage =$_POST['homepage'];
$msnid =strip_tags($_POST['msnid']);
$aimid =strip_tags($_POST['aimid']);
$yahooid =strip_tags($_POST['yahooid']);
$skype =strip_tags($_POST['skype']);
$sicherheitscode = $_POST['sicherheitscode'];
//echo "<title>$pagetitel - User bearbeiten</title>";
//----------- Löschen nachfragen ---------------//
if ($_POST['act'] == "Account löschen") {
echo "Soll der Account wirklich gelöscht werden ?
<FORM METHOD=\"POST\" ACTION=\"$_SERVER[PHP_SELF]\">
<INPUT class=send TYPE=submit VALUE=\"Wirklich löschen\" name=\"delete\" />
<INPUT class=send TYPE=submit VALUE=\"Nicht löschen\" name=\"delete\" />
</form>";
require("fuss.php");
exit;
}
//------------ Löschen ---------------//
if ($_POST['delete'] == "Wirklich löschen") {
$sqlbefehl = "Delete from $tab_user where id=".$user['id']." and uin='".$_SESSION['UIN']."'";
mysql_query($sqlbefehl, $serverid);
@session_destroy();
UserMsgBox("Account wurde gelöscht");
@session_unset();
}
if ($_POST['act'] == "Bearbeiten") {
//Variablen
$nickname=trim(addslashes(strip_tags($nickname)));
$username=trim(addslashes(strip_tags($username)));
//$signatur=trim(addslashes($signatur));
$username = preg_replace("/( ){2,}/"," ",$username);
if (preg_match ("/admin/i", $usertitel)) {
$usertitel = "";
}
if (preg_match ("/moderator/i", $usertitel)) {
$usertitel = "";
}
if ($user[id] < 1 and $username=="" or $nickname =="") {
UserMsgBox("Nickname und Username werden zwingend benötigt !");
require("fuss.php");
exit;
}
if ($pwd != $pwd2) {
UserMsgBox("Das Passwort stimmt mit der Wiederholung nicht überein");
require("fuss.php");
exit;
}
if (isemail($email) != 1) {
UserMsgBox("Die angegebene Email Adresse ist ungültig !");
require("fuss.php");
exit;
}
//captcha test
if (!eregi("^[0-9]+$", $sicherheitscode)) {
$fehler['sicherheitscode'] = "Geben sie den <strong>Sicherheitscode</strong> ein!<br />\n";
require("fuss.php");
exit;
}
if($sicherheits_eingabe != $_SESSION['captcha_spam']) {
unset($_SESSION['captcha_spam']);
$fehler['captcha'] = "Captcha ungültig\n";
require("fuss.php");
exit;
}
// Ausgabe des Fehler (assoziatives Array)
if (is_array($fehler)) {
print "<h1>FEHLER:</h1>\n<p>";
foreach ($fehler as $feldname => $wert) {
print $wert;
}
print " </p>\n";
}
//######### Update ####################
if ($user[id] > 0) {
$sqlbefehl = "select * from $tab_user where nickname='$nickname' and id !=$user[id]";
$ergebnis = mysql_query($sqlbefehl, $serverid);
if (mysql_num_rows($ergebnis) == 0) {
if ($pwd != "") {
$sqlbefehl = "update $tab_user set nickname='$nickname',email='$email',icq='$icq',pwd=PASSWORD('$pwd'),homepage='$homepage', ircserver='$ircserver',ircchan='$ircchan',msnid='$msnid',aimid='$aimid',yahooid='$yahooid',setzps='$setzps', skype='$skype' where id=$user[id]";
}
else {
$sqlbefehl = "update $tab_user set nickname='$nickname',email='$email',icq='$icq',homepage='$homepage', ircserver='$ircserver',ircchan='$ircchan',msnid='$msnid',aimid='$aimid',yahooid='$yahooid',setzps='$setzps', skype='$skype' where id=$user[id]";
}
if (!$ergebnis = mysql_query($sqlbefehl, $serverid))
echo mysql_error($serverid);
}
else {
UserMsgBox("Der Nickname ist bereits vergeben, bitte wähle einen anderen <br>Zurück drücken !");
require("fuss.php");
exit();
}
}
else {
//################## Neuer Account #############################################
$sqlbefehl = "select * from $tab_user where username='$username' or nickname='$nickname'";
$ergebnis = mysql_query($sqlbefehl, $serverid);
if (mysql_num_rows($ergebnis) == 0) {
if ($checkuser == 1) {
srand((double)microtime()*1000000);
$newpass = md5(uniqid(rand()));
$pwd=substr($newpass,0,10);
}
$sqlbefehl = "insert INTO $tab_user (username,pwd,nickname,email,icq,lastlogin,logintime,joined,ircserver,ircchan,homepage,msnid,aimid,yahooid,skype) VALUES ('$username',PASSWORD('$pwd'),'$nickname','$email','$icq','$jetzt','$jetzt','$jetzt','$ircserver', '$ircchan','$homepage','$msnid','$aimid','$yahooid','$skype')";
//anlegen
if (!$ergebnis = mysql_query($sqlbefehl, $serverid))
echo mysql_error($serverid);
$new_id = mysql_insert_id($serverid);
if ($checkuser == 1) {
// Format : mail("empfaenger","betreff","nachricht","sonstige mailheader");
mail($email,"Neuer Account bei $pagetitel","Es wurde ein neuer Account erstellt:
Username: $username
Passwort für das erste Login: $pwd
Login: $puserurl/login.php",
"From: $pagetitel <$adminmail>
Content-Type:text");
UserMsgBox("Der Account wurde erstellt. Das Passwort für den ersten Login wurde an $email verschickt.<br><a href=\"login.php\">Login</a>");
}
else {
UserMsgBox("Account wurde erstellt. <br><a href=\"login.php\">Login</a>");
}
require("fuss.php");
exit;
}
else {
UserMsgBox("Der Username oder Nickname ist bereits vergeben, bitte wähle einen anderen <br>Zurück drücken !");
require("fuss.php");
exit;
}
}
}
// ################## Editor #################################################
if ($user[id] > 0) {
$sqlbefehl = "Select * FROM $tab_user where id = $user[id] and uin='".$_SESSION['UIN']."'";
$ergebnis = mysql_query($sqlbefehl, $serverid);
echo mysql_error();
$useredit = mysql_fetch_array ($ergebnis);
}
?>
<FORM METHOD="POST" ACTION="<?php echo"$PHP_SELF"; ?>">
<INPUT TYPE="hidden" NAME="filled" VALUE="1" />
<table class="cont_head_head" summary="edituser" cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="cont_head_l"> </td>
<td class="cont_head_c" colspan="2"><?php
if ($user[id] > 0) {
echo "Benutzer bearbeiten";
}
else {
echo "Registrieren";
}
?>
</td>
<td class="cont_head_r"> </td>
</tr>
<tr>
<td class="cont_body_l"> </td>
<td class="cont_body_c">Username (Login):</td>
<td class="cont_body_c"><?php
if ($user[id] > 0) {
echo "$useredit[username]";
}
else {
echo "<input type=\"text\" name=\"username\" maxlength=30 size=\"40\" value=\"".stripslashes($useredit[username])."\" />";
}
?></td>
<td class="cont_body_r"> </td>
</tr>
<tr>
<td class="cont_body_l"> </td>
<td class="cont_body_c">Nickname:</td>
<td class="cont_body_c"><input type="text" name="nickname" maxlength="<?php echo $pu_max_nicklen; ?>" size="40" value="<?php echo stripslashes($useredit[nickname]); ?>"></td>
<td class="cont_body_r"> </td>
</tr>
<tr>
<td class="cont_body_l"> </td>
<td class="cont_body_c">EMail:</td>
<td class="cont_body_c"><input type="text" name="email" size="40" value="<?php echo stripslashes($useredit[email]); ?>"></td>
<td class="cont_body_r"> </td>
</tr>
<tr>
<td class="cont_body_l"> </td>
<td class="cont_body_c">Homepage:</td>
<td class="cont_body_c"><input type="text" name="homepage" size="40" value="<?php echo stripslashes($useredit[homepage]); ?>"></td>
<td class="cont_body_r"> </td>
</tr>
<tr>
<td class="cont_body_l"> </td>
<td class="cont_body_c">ICQ UIN:</td>
<td class="cont_body_c"><input type="text" name="icq" size="20" value="<?php echo stripslashes($useredit['icq']); ?>"></td>
<td class="cont_body_r"> </td>
</tr>
<tr>
<td class="cont_body_l"> </td>
<td class="cont_body_c">Skype:</td>
<td class="cont_body_c"><input type="text" name="skype" size="40" value="<?php echo stripslashes($useredit['skype']); ?>" maxlength="50"></td>
<td class="cont_body_r"> </td>
</tr>
<tr>
<td class="cont_body_l"> </td>
<td class="cont_body_c">MSN ID:</td>
<td class="cont_body_c"><input type="text" name="msnid" size="40" value="<?php echo stripslashes($useredit['msnid']); ?>"></td>
<td class="cont_body_r"> </td>
</tr>
<tr>
<td class="cont_body_l"> </td>
<td class="cont_body_c">AIM ID:</td>
<td class="cont_body_c"><input type="text" name="aimid" size="40" value="<?php echo stripslashes($useredit['aimid']); ?>"></td>
<td class="cont_body_r"> </td>
</tr>
<tr>
<td class="cont_body_l"> </td>
<td class="cont_body_c">Yahoo ID:</td>
<td class="cont_body_c"><input type="text" name="yahooid" size="40" value="<?php echo stripslashes($useredit['yahooid']); ?>"></td>
<td class="cont_body_r"> </td>
</tr>
<tr>
<td class="cont_body_l"> </td>
<td class="cont_body_c">IRC Server:<br>Channel:</td>
<td class="cont_body_c"><input type="text" name="ircserver" size="60" value="<?php echo stripslashes($useredit[ircserver]); ?>" /><br /><input type="text" name="ircchan" size="30" value="<?php echo stripslashes($useredit[ircchan]); ?>" /></td>
<td class="cont_body_r"> </td>
</tr>
<?php if ($user['id'] > 0 or $checkuser != 1) {?>
<tr>
<td class="cont_body_l"> </td>
<td class="cont_body_c">Passwort:</td>
<td class="cont_body_c"><input type="password" name="pwd" size="20" />Wiederholung: <input type="password" name="pwd2" size="20" /></td>
<td class="cont_body_r"> </td>
</tr>
<?php } ?>
<tr>
<td class="cont_body_subdown_l"> </td>
<td class="cont_body_subdown_c" colspan="2">Einstellungen</td>
<td class="cont_body_subdown_r"> </td>
</tr>
<tr>
<td class="cont_body_l"> </td>
<td class="cont_body_c">Beiträge pro Seite:</td>
<td class="cont_body_c">Beiträge <select name ="setzps">
<option selected> <?php echo $useredit['setzps']; ?></option>
<option>5</option>
<option>10</option>
<option>15</option>
<option>20</option>
<option>25</option>
<option>30</option>
<option>40</option>
<option>50</option>
</select> pro Seite anzeigen
</td>
<td class="cont_body_r"> </td>
</tr>
<tr>
<td class="cont_body_l"> </td>
<td class="cont_body_c">Geben sie den Code ein:</td>
<td class="cont_body_c"><input type="text" name="sicherheitscode" size="4" /> <img src="../images/captcha.php" alt="captcha" border="0" title="Sicherheitscode"></td>
<td class="cont_body_r"> </td>
</tr>
<tr>
<td class="cont_foot_l"> </td>
<td class="cont_foot_c" colspan="2"><INPUT TYPE="submit" VALUE="Bearbeiten" name="act" />
<?php
if ($user[id] > 0) {
echo " <INPUT TYPE=\"submit\" name=\"act\" VALUE=\"Account löschen\" />";
}
?>
</td>
<td class="cont_foot_r"> </td>
</tr>
</table>
</form>
<?php
// ######################## Optionen #####################
if ($user[id] > 0) {
?>
<table border="0" width="100%" cellspacing="0" cellpadding="0" class="cont_head_head" summary="edituser">
<tr>
<td class="cont_head_l"> </td>
<td class="cont_head_c" colspan="2">Optionen</td>
<td class="cont_head_r"> </td>
</tr>
<?php
if ($allow_userinv == 1) {
?>
<tr>
<td class="cont_body_l"> </td>
<td class="cont_body_c">Invisible:</td>
<td class="cont_body_c"><?php
// ### Invisible ###
if ($useredit[invisible]==0) {
echo "<img src=\"$imgportal/off.gif\" alt=\"Aus\" align=\"middle\" border=\"0\" />Inv Mode ist aus - <a href=\"setoption.php?userinv=on\">Anschalten</a>";
}
if ($useredit[invisible]==1) {
echo "<img src=\"$imgportal/on.gif\" alt=\"An\" align=\"middle\" border=\"0\" />Inv Mode ist an - <a href=\"setoption.php?userinv=off\">Abschalten</a>";
}
?></td>
<td class="cont_body_r"> </td>
</tr>
<?php
}
?>
<tr>
<td class="cont_body_l"> </td>
<td class="cont_body_c">Email zeigen:</td>
<td class="cont_body_c"><?php
// ### Showemail ###
if ($useredit[showemail]==0) {
echo "<img src=\"$imgportal/off.gif\" alt=\"Aus\" align=\"middle\" border=\"0\" />Email Adresse wird verborgen - <a href=\"setoption.php?showemail=on\">Anschalten</a>";
}
if ($useredit[showemail]==1) {
echo "<img src=\"$imgportal/on.gif\" alt=\"An\" align=\"middle\" border=\"0\" />Email Adresse wird angezeigt - <a href=\"setoption.php?showemail=off\">Abschalten</a>";
}
?></td>
<td class="cont_body_r"> </td>
</tr>
<tr>
<td class="cont_body_l"> </td>
<td class="cont_body_c">PM:</td>
<td class="cont_body_c"><?php
// ### PM ###
if ($useredit[usepm]==0) {
echo "<img src=\"$imgportal/off.gif\" alt=\"Aus\" align=\"middle\" border=\"0\" />Private Nachrichten ist ausgeschalten - <a href=\"setoption.php?usepm=on&boardid=$boardid\">Anschalten</a>";
}
if ($useredit[usepm]==1) {
echo "<img src=\"$imgportal/on.gif\" alt=\"An\" align=\"middle\" border=\"0\" />Private Nachrichten ist an - <a href=\"setoption.php?usepm=off&boardid=$boardid\">Abschalten</a>";
}
?></td>
<td class="cont_body_r"> </td>
</tr>
<tr>
<td class="cont_body_l"> </td>
<td class="cont_body_c">Email bei neuer PM:</td>
<td class="cont_body_c"><?php
// ### PM Notify ###
if ($useredit[pmnotify]==0) {
echo "<img src=\"$imgportal/off.gif\" alt=\"Aus\" align=\"middle\" border=\"0\" />Keine Email bei neuer privater Nachricht - <a href=\"setoption.php?pmnotify=on&boardid=$boardid\">Anschalten</a>";
}
if ($useredit[pmnotify]==1) {
echo "<img src=\"$imgportal/on.gif\" alt=\"An\" align=\"middle\" border=\"0\" />Email bei neuer privater Nachricht - <a href=\"setoption.php?pmnotify=off&boardid=$boardid\">Abschalten</a>";
}
?></td>
<td class="cont_body_r"> </td>
</tr>
<tr>
<td class="cont_foot_l"> </td>
<td class="cont_foot_c" colspan="2"> </td>
<td class="cont_foot_r"> </td>
</tr>
</table>
<?php
}
require("fuss.php");
?>
und hier captcha.php:
PHP-Code:
<?php
session_start();
unset($_SESSION['captcha_spam']);
$text = rand(1000,10000); //Zufallszahl
function encrypt($string, $key) {
$result = '';
for($i=0; $i<strlen($string); $i++) {
$char = substr($string, $i, 1);
$keychar = substr($key, ($i % strlen($key))-1, 1);
$char = chr(ord($char)+ord($keychar));
$result.=$char;
}
return base64_encode($result);
}
$_SESSION['captcha_spam'] = encrypt($text, "8h384ls94"); //Key
$_SESSION['captcha_spam'] = str_replace("=", "", $_SESSION['captcha_spam']);
header('Content-type: image/png');
$img = ImageCreateFromPNG('../images/captcha.PNG'); //Backgroundimage
$color = ImageColorAllocate($img, 0, 0, 0); //Farbe
$ttf = $_SERVER['Document_Root']."../images/arial.ttf"; //Schriftart
$ttfsize = 25; //Schriftgrösse
$angle = rand(0,5);
$t_x = rand(5,50);
$t_y = 35;
imagettftext($img, $ttfsize, $angle, $t_x, $t_y, $color, $ttf, $text);
imagepng($img);
imagedestroy($img);
?>