ilch Forum » Ilch Clan 1.1 » Fehlersuche und Probleme » JoinUs-PN kommt nur manchmal an

Geschlossen
  1. #1
    User Pic
    DeadBirdy Mitglied
    Registriert seit
    24.11.2011
    Beiträge
    166
    Beitragswertungen
    9 Beitragspunkte
    Hallo

    Ich wundere mich, warum in der letzten Zeit neuerdings die Benachrichtigungen über einen Gruppenbeitritt nicht mehr ankommen. Statt dessen kann ich unter "Teams" im AC die "JoinUs-Anfragen"-beantworten. Nur da sehe ich null Angaben, die ein Spieler bei uns gemacht hat. Unsere JoinUs.php is en bissl bearbeitet, hatte aber bisher immer einwandfrei funktioniert. Hat das möglicherweise wasmit neuen Browserversionen zu tun?

    Wäre um Hilfe dankbar.

    EDIT: Hab mir ma die ganzen Beiträge durchgelesen; was ich ausschließen kann: Ich bin Leader des Teams des Gruppenbeitritts und mein Anbieter erlaubt auch alles - hat ja vorher auch gefunzt ohne dass wir mittlerweile was verändert haben.

    <?php
    
    # Copyright by Sebastian Müller Websolutions
    # created at 18.12.2010 for HCD
    # version 1.0
    
    
    defined ('main') or die ('no direct access');
    
    # set template information
    $title = $allgAr['title'].' :: Joinus';
    $hmenu = 'Joinus';
    $design = new design ($title , $hmenu);
    $design->header();
    $tpl = new tpl('joinus.htm');
    
    # Meldung, falls kein Team für JoinUs freigegeben ist
    $num = db_count_query("SELECT COUNT(*) FROM xic_groups WHERE show_joinus = 1");
    if ($num == 0) {
    	
    	exit($lang['noteamthere'].$design->footer());
    }
    
    # Eingabe Felder
    $required = array ('squad', 'name', 'realname', 'mail', 'icq', 'age', 'hometown', 'clanhistory', 'games', 'ground', 'rules');
    
    # Team Select Feld erstellen
    $squad  = '<option value="0">choose</option>';
    $squad .= dblistee ($squad, "SELECT id,name FROM xic_groups WHERE show_joinus = 1 ORDER BY pos");
    if (loggedin()) { $name = $_SESSION['authname']; }
    
    # Nickname einsetzen, falls eingeloggt
    $xname = escape_nickname($name);
    $ch_name = false;
    if (loggedin()) {
    	
      $ch_name = true; 
    } else if(isset($_POST['sub']) && $name == $xname && !empty($name) && 0 == db_result(db_query("SELECT COUNT(*) FROM xic_user WHERE name = BINARY '".$name."'"), 0)) {
    	   
      $ch_name = true;
    }
    
    if($_POST['sub']) {
    	
    	# Eingabedaten überprüfen
    	foreach($_POST as $key => $value) {
    		
    		$out[$key] = escape($value, 'string');
    	}
    
    	# Überprüfen, ob alle Pflichtfelder ausgefüllt sind
    	$error = false;
    	foreach($out as $key => $value) {
    		
    		if($key = in_array($key, $required)) {
    			
    			if(!$value) {
    				
    				$error = true;
    				break;
    			}
    		}
    	}
    
    	if($error) {
    		
    		echo '<stromg>Bitte alle Felder ausf&uuml;llen!</strong><br /><br />';
    		
    		$ar = array ('squad' => $squad, 
    					'name' => $out['name'], 
    					'realname' => $out['realname'], 
    					'mail' => $out['mail'], 
    					'icq' => $out['icq'], 
    					'age' => $out['age'], 
    					'hometown' => $out['hometown'], 
    					'clanhistory' => $out['clanhistory'], 
    					'games' => $out['games'], 
    					'ground' => $out['ground'], 
    					'rules' => '',
    					'ANTISPAM' => get_antispam('joinus', 100),
    					'readonly', (loggedin()?' readonly': ''));
    		$tpl->set_ar_out($ar, 0);
    		
    	} else {
    	
    		$name = $xname;
    		$userreg = $lang['no'];
    	
    		if (!loggedin() AND $allgAr['forum_regist'] <> 0) {
    			$x = user_regist ($name,$mail,genkey(8));
    			$userreg = $lang['yes'];
    		}
    
    		# Temprär speichern
      		db_query("INSERT INTO xic_usercheck (`check`,name,datime,ak,groupid) VALUES ('".genkey(8)."','".$out['name']."',NOW(),4, '".$out['squad']."')");
    
    		$squad = escape($out['squad'], 'integer');
    		$abf   = "SELECT `mod1`, `mod2`, `mod4`, name FROM xic_groups WHERE id = ".$squad;
    		$erg   = db_query($abf);
    		$row   = db_fetch_assoc($erg);
    		$rulz  = (isset($_POST['rules'])?$_POST['rules']:$lang['no']);
    		
    		$name = $out['name'];
    		$realname = $out['realname'];
    		$email = $out['mail'];
    		$icq = $out['icq'];
    		$age = $out['age'];
    		$hometown = $out['hometown'];
    		$clanhistory = $out['clanhistory'];
    		$games = $out['games'];
    		$ground = $out['ground']; // nl2br(); wurde seit dem letzten mal entfernt
    		
    		foreach($out as $key => $value) {
    			
    			if(preg_match('/waffengattungen/i', $key) && $value != '') {
    				
    				$waffengattungen .= $value.', ';
    			} else if(preg_match('/skills/i', $key) && $value != '') {
    				
    				$skills .= $value.', ';
    			} else if(preg_match('/eigenschaften/i', $key) && $value != '') {
    				
    				$eigenschaften .= $value.', ';
    			}
    		}
    		$waffengattungen = substr($waffengattungen, 0, strlen($waffengattungen) - 2);
    		$skills = substr($skills, 0, strlen($skills) - 2);
    		$eigenschaften = substr($eigenschaften, 0, strlen($eigenschaften) - 2);
    
    		# bitte in der richtigen reihenfolge angeben, sonst das nicht gehen tun, kann.
    		$mailtxt = str_replace('{name}', $name, $lang['joinusprivmsg']);
    		$mailtxt = str_replace('{squad}', $row['name'], $mailtxt);
    		$mailtxt = str_replace('{realname}', $realname, $mailtxt);
    		$mailtxt = str_replace('{email}', $email, $mailtxt);
    		$mailtxt = str_replace('{icq}', $icq, $mailtxt);
    		$mailtxt = str_replace('{age}', $age, $mailtxt);
    		$mailtxt = str_replace('{hometown}', $hometown, $mailtxt);
    		$mailtxt = str_replace('{clanhistory}', $clanhistory, $mailtxt);
    		$mailtxt = str_replace('{games}', $games, $mailtxt);
    		$mailtxt = str_replace('{ground}', $ground, $mailtxt);
    		$mailtxt = str_replace('{waffengattungen}', $waffengattungen, $mailtxt);
    		$mailtxt = str_replace('{skills}', $skills, $mailtxt);
    		$mailtxt = str_replace('{eigenschaften}', $eigenschaften, $mailtxt);
    		$mailtxt = str_replace('{rulz}', $rulz, $mailtxt);
    		$mailtxt = str_replace('{userreg}', $userreg, $mailtxt);
    		
      
    	  	# pm an den leader  
    		sendpm ($_SESSION['authid'], $row['mod1'], 'Joinus Anfrage',$mailtxt, -1);
    	  	# Wenn Co Leader != Leader
    		if ($row['mod2'] != $row['mod1']){
    			sendpm ($_SESSION['authid'], $row['mod2'], 'Joinus Anfrage',$mailtxt, -1);
    		}
    		if ($row['mod4'] != $row['mod1'] AND $row['mod2'] != $row['mod4']){
    			sendpm ($_SESSION['authid'], $row['mod4'], 'Joinus Anfrage',$mailtxt, -1);
    		}
    	  
    		if (!loggedin() AND $allgAr['forum_regist'] <> 0) {
    			echo $lang['amailhasbeensenttoyouwithmailandpass'].'<br /><br />';
    	  	}
      		echo sprintf($lang['leaderofxalert'], $row['name']);	
    	}
    } else {
    	
    	$ar = array (	'squad' => $squad, 
    					'name' => $name, 
    					'realname' => '', 
    					'mail' => '', 
    					'icq' => '', 
    					'age' => '', 
    					'hometown' => '', 
    					'clanhistory' => '', 
    					'games' => '', 
    					'ground' => '', 
    					'rules' => '',
    					'ANTISPAM' => get_antispam('joinus', 100),
    					'readonly', (loggedin()?' readonly': ''));
    	$tpl->set_ar_out($ar, 0);
    }
    	
    	
    echo "<h2 id='rules'>Regeln</h2>";
    # Rules Anzeige
    $erg = db_query('SELECT zahl,titel,text FROM `xic_rules` ORDER BY zahl');
    while ($row = db_fetch_row($erg)) {
    	
    		echo '<table width="100%" border="0" cellpadding="5" cellspacing="1" class="border">';
    	  echo '<tr class="Chead"><td><b>&sect;'.$row[0].'. &nbsp; '.$row[1].'</b></td></tr>';
    		echo '<tr class="Cnorm"><td>'.bbcode($row[2]).'</td></tr>'; 
    		echo '</table><br /><br />';
    } 
    
    
    $design->footer();
    ?>



    Zuletzt modifiziert von DeadBirdy am 24.11.2011 - 10:08:19
    0 Mitglieder finden den Beitrag gut.
  2. #2
    User Pic
    s4sch4 Mitglied
    Registriert seit
    09.12.2007
    Beiträge
    183
    Beitragswertungen
    5 Beitragspunkte
    Also meines Erachtens liegt der Fehler bei $mailtext, er setzt in jeder zeile $mailtext auf einen neuen wert, um alles in $mailtext zu packen muss man ab dem 2. mal $mailtext .= verwenden... Also der punkt fehlt hier, aber ich kann mich auch irren, am besten fragst du mal den "Sebastian Müller" der das script offensichtlich geschrieben hat...

    Gruß Sascha
    Visit me on: externer Link
    Visit my Clan: externer Link
    Mein ilch Modul: Höhrercharts v0.8 für OnlineRadios
    0 Mitglieder finden den Beitrag gut.
  3. #3
    User Pic
    oink Mitglied
    Registriert seit
    23.09.2010
    Beiträge
    740
    Beitragswertungen
    227 Beitragspunkte
    @ s4sch4

    nein er ersetzt dort in jeder zeile platzhalter mit ihrer ersetzung.
    dies ist korrekt
    before creation there must be destruction
    0 Mitglieder finden den Beitrag gut.
  4. #4
    User Pic
    s4sch4 Mitglied
    Registriert seit
    09.12.2007
    Beiträge
    183
    Beitragswertungen
    5 Beitragspunkte
    ok alles klar, ja dann sollte sich das am besten der Sebastian Müller mal ansehen...
    Visit me on: externer Link
    Visit my Clan: externer Link
    Mein ilch Modul: Höhrercharts v0.8 für OnlineRadios
    0 Mitglieder finden den Beitrag gut.
  5. #5
    User Pic
    DeadBirdy Mitglied
    Registriert seit
    24.11.2011
    Beiträge
    166
    Beitragswertungen
    9 Beitragspunkte
    Ja den erreich ich grad net. Was ich noch sagen wollte, wenn es mal geht, sind alle Ausgaben im Formular bloß "%s"

    Ich glaube das kommt ja daher, wenn irgendwo ne Angabe gemavht is, diese aber nirgends sonst miteingebaut wurde, also auch nich in htm oder de.php. Aber wie gesagt, wir haben seit Erstellung des Formulars nichts dran gemacht, und seit geraumer Zeit is das so.



    EDIT: Sportz? XD GG euch hab ich schon gespielt als iohr noch Starz wart zwinker


    Zuletzt modifiziert von DeadBirdy am 25.11.2011 - 21:00:20
    0 Mitglieder finden den Beitrag gut.
Geschlossen

Zurück zu Fehlersuche und Probleme

Optionen: Bei einer Antwort zu diesem Thema eine eMail erhalten