# PHP-Schnittstelle



## Crowley (2. Februar 2005)

Da XML mitunter etwas umständlich ist, wenn man seine Gildendaten einfach nur in einem PHP-Array will, habe ich zusätzlich zu unserer XML-Schnittstelle noch eine einfachere Schnittstelle in Form eines komprimierten serialisierten PHP-Arrays gebastelt.

hier ein Beispiel:
http://www.blasc.de/guild.php?g=2

Das ganze lässt sich folgendermaßen in PHP einbinden (vorausgesetzt, der Provider erlaubt, dass PHP HTTP-Zugriffe macht.)


```
<?php

$url = 'http://www.blasc.de/guild.php?g=2';

$file = file_get_contents($url);
if(!$file) die("Fehler beim Öffnen von $url");

$guild = unserialize(gzuncompress($file));
print_r($guild);

?>
```

Die Gildendaten finden sich dann im Array $guild und können mittels normaler PHP-Funktionen ausgegeben werden. Das Ganze ist erstmal eine Test-Version und kann sich jederzet ändern, aber ihr könnt ja schonmal versuchen die Daten in eure Gildenseiten zu integrieren.


----------



## Gringol (2. Februar 2005)

Crowley schrieb:
			
		

> Da XML mitunter etwas umständlich ist, wenn man seine Gildendaten einfach nur in einem PHP-Array will, habe ich zusätzlich zu unserer XML-Schnittstelle noch eine einfachere Schnittstelle in Form eines komprimierten serialisierten PHP-Arrays gebastelt.
> 
> hier ein Beispiel:
> http://black-legion.info/guild_php.php?ser...ld=BLACK_LEGION
> ...




hmm habe das in in eine php seite geschrieben! dann kommt das

http://www.destruction-force.de/wow/daten.php


----------



## Crowley (2. Februar 2005)

Gringol schrieb:
			
		

> hmm habe das in in eine php seite geschrieben! dann kommt das
> 
> http://www.destruction-force.de/wow/daten.php
> [post="77960"][/post]​


Prima, so soll es auch sein. 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        


Mit print_r() wird einfach das komplette Array angezeigt. Wenn du dir den Quelltest ansiehst hannst du die Struktur Besser erkennen.

Eine Charakter-Liste kanst du ausgeben indem du statt print_r() z.B. folgendes machst:


```
print "<table>";
foreach($guild['character'] as $c) {
	print "<tr>";
	print "<td>".$c['name']."</td>";
	print "<td>".$c['level']."</td>";
	print "<td>".$c['race']."</td>";
	print "<td>".$c['class']."</td>";
	print "</tr>\n";
	
}
```


----------



## Gringol (2. Februar 2005)

jo ging hab da mal eure daten auslesen lassen!

mehr kann man nicht anzeigen lassen!?

zb das profil von jedem mitglied oder?

http://www.destruction-force.de/wow/daten.php


----------



## Crowley (2. Februar 2005)

Gringol schrieb:
			
		

> jo ging hab da mal eure daten auslesen lassen!
> 
> mehr kann man nicht anzeigen lassen!?
> 
> ...


Nein, das ist jetzt erstmal nur ne Grundfunktion zum Testen, inwiefern wir die noch erweiten haben wissen wir noch nicht genau.


----------



## Gringol (2. Februar 2005)

Naja trozdem Top Arbeit 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.


----------



## Bl4ckSh33p (2. Februar 2005)

hmm da muß ich mal ein bischen rumprobieren. hab gestern von vwar auf xbrite Members umgestellt. das geht doch daß dann bei jedem mitglied die passenden Daten angezeigt werden, oder? (wenn der Membername=Charname ist?)

/EDIT: gibts später noch mehr infos wie das was man hier sehen kann (items, attribute)?


----------



## Scepsis (2. Februar 2005)

Sieht Prima aus Jungs!!!
warte gespannt auf weite erfolge *g*


----------



## Avenger (3. Februar 2005)

Funktioniert wunderbar ... habe es ohne großartige php Kenntnisse hinbekommen ... allerdings wäre es super hilfreich wenn ihr für sone handvoll Funktionen ein kleines Beispiel bringen könntet, z.B. wie lese ich Werte aus einem Array aus, bspw. bei [skills] bekomm ich als Wert nur "Array" zurück. Oder wie man so schöne Balken entsprechend der Skillwerte bastelt. 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        



Danke!


----------



## [HELL]reaVen (3. Februar 2005)

http://us2.php.net/manual/de/ref.array.php

in der mitte beginnt das Inhaltsverzeichnis.....


----------



## Avenger (3. Februar 2005)

Hehe, danke ... ich hatte jedoch gehofft mich nicht durch Manuals wühlen zu müssen 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.


----------



## Scepsis (3. Februar 2005)

Avenger schrieb:
			
		

> Hehe, danke ... ich hatte jedoch gehofft mich nicht durch Manuals wühlen zu müssen
> 
> 
> Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
> ...



ich denke mal das solltest du aber tun, du kannst nich einfach erwarten das dir alles in den schoß gelegt wird 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        


das Programm is eh schon klasse, und bereitstellung von den daten ein sehr soziale sache, also nu hock dich ma hin und lern bissl was *g*


----------



## Crowley (3. Februar 2005)

Wenn mann in PHP nicht mal ein Array durchlaufen kann und dessen Felder in einer Tabelle ausgeben, sollte man die Finger davon lassen. Das sind nun wirklich die grundlegendsten Funktionen.


----------



## Xmasman (4. Februar 2005)

Hier die genauen Arrayinhalte, das einzige was bissel anders ist, sind die Berufe, dabei hat das Array jeweils den Beruf als name.
Will man also unter php den Server ausgeben einfach : 
	
	



```
echo $guild['server'];
```


server -> String
guild_name -> String
faction -> String
numchars -> int 
character -> Array
____name -> String
____level -> int
____race -> String
____class -> String
____sex -> char
____guild_rank -> int (0 = gildenmeister, 1 = offizier, 2 = veteran, 3 = mitglied, 4 = initiand)
____guild_title -> String
____lastupdate -> sqldate
____skills -> Array
________Berufe -> Array
____________[{beruf}] -> Array
________________value -> int
________________max -> int 
________Sekundäre Fertigkeiten -> Array
____________[{Fertigkeit}] -> Array
____________value -> int
____________max -> int


----------



## Scepsis (4. Februar 2005)

Xmasman schrieb:
			
		

> Hier die genauen Arrayinhalte, das einzige was bissel anders ist, sind die Berufe, dabei hat das Array jeweils den Beruf als name.
> Will man also unter php den Server ausgeben einfach :
> 
> 
> ...



Also bis hierher komm ich noch klar, ich kann auslesen wieviel berufe der Char hat, aber nicht welche, kann mir jemand helfen? ausm manual werd ich nicht ganz schlau, da steht nich so viel über 3fach verschachtelt *g*


________Berufe -> Array
____________[{beruf}] -> Array
________________value -> int
________________max -> int 
________Sekundäre Fertigkeiten -> Array
____________[{Fertigkeit}] -> Array
____________value -> int
____________max -> int

ich würd gerne die *namen* (= arrayname = {beruf}) >> berufe und fertigkeiten von jedem ausgeben lassen.

würd mich über hilfe freun

gruß manu


----------



## Nebelschleicher (4. Februar 2005)

```
$character['skills']['Berufe'][{beruf}]; // Berufe
$character['skills']['Berufe'][{beruf}]['value']; // Aktueller Skill Beruf
$character['skills']['Berufe'][{beruf}]['max']; //Maximaler Skill Beruf

$character['skills']['Sekundäre Fähigkeiten'][{Fähigkeit}]; //Sekundäre Fähigkeiten
$character['skills']['Sekundäre Fähigkeiten'][{Fähigkeit}]['value']; // Aktueller Skill
$character['skills']['Sekundäre Fähigkeiten'][{Fähigkeit}]['max']; // Maximaler Skill
```

{beruf}/{fähigkeit} ist halt entsprechend abhängig... Musst eben ne allgemeine Funktion/... schreiben die das handelt 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        



Lg,
Nebel

Edit: Korrigiert und sekundäre Fähigkeitn dazugebastelt 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        


Edit2: Ich sollte es heute bleiben lassen -.- Noch was verbessert...


----------



## Ikarus (4. Februar 2005)

kann man sich auch eigentlich von einem einzelnen Char die Daten anzeigen lassen?

Edit : Auch mit inventar usw?


----------



## Scepsis (4. Februar 2005)

Nebelschleicher schrieb:
			
		

> ```
> $character['skills']['Berufe'][{beruf}]; // Berufe
> $character['skills']['Berufe'][{beruf}]['value']; // Aktueller Skill Beruf
> $character['skills']['Berufe'][{beruf}]['max']; //Maximaler Skill Beruf
> ...



lol gerad um die erwähnte funktion gehts, kann man das nicht anders online stellen? mit ID's oda sow? ich probier ma weiter, trotsdem danke nebelschleicher 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.


----------



## Xmasman (4. Februar 2005)

So hoffe das sprengt jetzt nicht den Artikel poste hier mal ne mögliche Ausgabe der Daten mit allem pipapo hin. 
Wichtig sei hier erwähnt das alle Charaktere in einer Datenbank vorhanden sind, wobei da bis auf das Level Informationen enthalten sind die sich nicht mehr ändern (Name, Rasse, Klasse)


```
<?
// Anfang der Ausgabe
include ("inc_head_table.html"); 

// Hier Server eintragen auf dem gespielt wird (für Leerzeichen = %20)
$server = "DE%20Final%20Beta%203";
// Hier der Gildenname
$gildenname = "BlackEight";
// Die nächsten Zeilen sind wie im Forum erwähnt um das Array zu bekommen
$url = 'http://black-legion.info/guild_php.php?server='.$server.'&guild='.$gildenname;
$file = file_get_contents($url);
if(!$file) die("Fehler beim Öffnen von $url");
$guild = unserialize(gzuncompress($file));
//Hier Schreibe ich die chars schon mal in ein eigenes Array
$chars = $guild['character'];

//Wenn kein Charakter ausgewählt wurde ist die variable $charname nicht gesetzt und alle Chars werden ausgegeben
if(!isset($charname)) { 
	if(!isset($order)) $order = "level"; 
	else $order = $order.",level"; ?>
	<table width="100%" align="center" cellpadding="5" border="1" bordercolor="#999999" style="border-collapse:collapse;" bgcolor="#333333">
	<tr><th>Rank</th>
  <th><a href="index.php?unterseite=Ladder&order=charname">Name</a></th>
  <th><a href="index.php?unterseite=Ladder&order=server">Server</a></th>
  <th><a href="index.php?unterseite=Ladder&order=rasse">Rasse</a></th>
  <th><a href="index.php?unterseite=Ladder&order=klasse">Klasse</a></th>
  <th><a href="index.php?unterseite=Ladder&order=id_user">Spieler</a></th>
  <th width="30"><a href="index.php?unterseite=Ladder">Level</a></th></tr><? 
  //Die Charaktergrundewerte sind in der Datenbank hinterlegt im table b8_chars und die User dazu im table b8_user
  $query="SELECT * FROM b8_chars chars LEFT JOIN b8_user user ON chars.id_user = user.id ORDER BY $order DESC"; 
  //Funktion gibt alle Chars aus
  Charausgabe_Ladder($query, $guild); ?>
	</table><?
} else {
	//Hier nun wurde ein bestimmter Charakter ausgewählt und aus dem Array vom BLASC System wird die Position im Array rausgesucht
	$idBLASC = getBLASCid($chars,$charname); 
	//Nun folgt die Ausgabe aller Informationen ?>
	<table align="center" cellpadding="5" cellspacing="0" bgcolor="#222222" border="1" bordercolor="#FFFFFF">
  <tr><th colspan="6"><h2><? echo $charname ?></h2></th></tr>
  
  <tr><td>Geschlecht: </td><td bgcolor="#444444"><? echo $chars[$idBLASC]['sex'] ?></td>
 	 <td>Gildenstatus: </td><td bgcolor="#444444"><? echo $chars[$idBLASC]['guild_title'] ?></td>
 	 <td>Aktualsiert: </td><td bgcolor="#444444"><? echo $chars[$idBLASC]['lastupdate'] ?></td></tr>
  
  <tr><td>Level: </td><td bgcolor="#444444"><? echo $chars[$idBLASC]['level'] ?></td>
 	 <td>Rasse: </td><td bgcolor="#444444"><? echo $chars[$idBLASC]['race'] ?></td>
 	 <td>Klasse: </td><td bgcolor="#444444"><? echo $chars[$idBLASC]['class'] ?></td></tr>

  <tr><td colspan="6"><b>Berufe</b></td></tr><? 
  $berufe = getSkills($chars[$idBLASC]['skills'],"berufe"); 
  for($i=0; $i<count($berufe); $i++) { ?>
 	 <tr><td><? echo $berufe[$i]['name']; ?></td>
    <td colspan="2"><? echo $berufe[$i]['value']." / ".$berufe[$i]['max']; ?></td>
    <td colspan="3"> </td></tr><?
  } ?>
  
  <tr><td colspan="6"><b>Sekundäre Fertigkeiten</b></td></tr><? 
  $sekund = getSkills($chars[$idBLASC]['skills'],"sekundäre fertigkeiten"); 
  for($i=0; $i<count($sekund); $i++) { ?>
 	 <tr><td><? echo $sekund[$i]['name']; ?></td>
    <td colspan="2"><? echo $sekund[$i]['value']." / ".$sekund[$i]['max']; ?></td>
    <td colspan="3"> </td></tr><?
  } ?>
	</table><?
} 

include ("inc_foot_table.html"); 
// Ende der Ausgabe

//Funktion gibt entweder Berufe oder Fertigkeiten zurück
function getSkills($skills, $wahl) {
	if($wahl == "berufe") {
  $array = getSkillValues($skills['Berufe']);
	} else {
  $array = getSkillValues($skills['Sekundäre Fertigkeiten']);
	}
	return $array;
}

//Zu jeweils den Berufen oder Fertigkeiten werden Namen rausgesucht und mit den Werten zusammen im Array zurückgegeben
function getSkillValues($skills) {
	//Berufe
	if(isset($skills['Alchimie'])) 
  $name[] = "Alchimie";
	if(isset($skills['Bergbau'])) 
  $name[] = "Bergbau";
	if(isset($skills['Schmiedekunst'])) 
  $name[] = "Schmiedekunst";
	if(isset($skills['Kräuterkunde'])) 
  $name[] = "Kräuterkunde";
	if(isset($skills['Lederverarbeitung'])) 
  $name[] = "Lederverarbeitung";
	if(isset($skills['Kürschnerei'])) 
  $name[] = "Kürschnerei";
	if(isset($skills['Ingenieurskunst'])) 
  $name[] = "Ingenieurskunst";
	if(isset($skills['Verzauberkunst'])) 
  $name[] = "Verzauberkunst";
	
	// Sekundäre Fertigkeiten
	if(isset($skills['Kochkunst'])) 
  $name[] = "Kochkunst";
	if(isset($skills['Angeln'])) 
  $name[] = "Angeln";
	if(isset($skills['Erste Hilfe'])) 
  $name[] = "Erste Hilfe";
	if(isset($skills['Untoten-Reitkunst'])) 
  $name[] = "Untoten-Reitkunst";
	if(isset($skills['Kodoreiten'])) 
  $name[] = "Kodoreiten";
	if(isset($skills['Wolfreiten'])) 
  $name[] = "Wolfreiten";
	
	if(isset($name[0])) {
  $skill[0]['name'] = $name[0];
  $skill[0]['value'] = $skills[$name[0]]['value'];
  $skill[0]['max'] = $skills[$name[0]]['max'];
	}
	if(isset($name[1])) {
  $skill[1]['name'] = $name[1];
  $skill[1]['value'] = $skills[$name[1]]['value'];
  $skill[1]['max'] = $skills[$name[1]]['max'];
	}
	return $skill;
}

//BLASCid ist die Postition im Array $chars
function getBLASCid($chars,$charname) {
	for($i=0; $i<count($chars); $i++) {
  if($chars[$i]['name'] == $charname)
 	 $id = $i;
	}	
	return $id;
}

//Da nicht alle Chars von uns im System sind untersucht die Funktion ob ein Char enthalten ist
function charExistsInBLASC($chars,$charname) {
	for($i=0; $i<count($chars); $i++) {
  if($chars[$i]['name'] == $charname)
 	 $exists = true;
	}	
	return $exists;
}

//Die Chars die nicht im BLASC-System sind deren level wird von den Benutzern so gesetzt bei den anderen wird der BLASC Wert genommen
// falls dieser höher ist, denn dann ist dieser aktueller
function getBLASCLevel($chars, $charname, $level) {
	for($i=0; $i<count($chars); $i++) {
  if(($chars[$i]['name'] == $charname) && ($chars[$i]['level'] > $level))
 	 $level = $chars[$i]['level'];
	}	
	return $level;
}

//Funktion gibt anhand der Anfrage aus der DB alle Charaktere aus
function Charausgabe_Ladder($query, $guild) {
	$ergebnis = Querry_to_Array($query);  

	//Für jeden Charakter wird einmal die Schleife durchlaufen
	for($i=0; $i<count($ergebnis); $i++) {
  //Wenn die Chars zur Allianz gehören wird die Zeile gelb sonst rot 
  if(($ergebnis[$i]['rasse'] == "Elf") || ($ergebnis[$i]['rasse'] == "Mensch") ||($ergebnis[$i]['rasse'] == "Zwerg") || ($ergebnis[$i]['rasse'] == "Gnom"))
 	 $color = "yellow";
  else
 	 $color = "red"; ?>
  <tr><th width="5%"><font color="#FFFFFF"><? echo $i+1 ?></font></th>
    <th><font color="<? echo $color ?>"><? 
   	 //Falls ein BLASC eintrag existiert kann der Link für die Details angeklickt werden 
   	 if(charExistsInBLASC($guild['character'],$ergebnis[$i]['charname'])) { ?>
      <a href="index.php?unterseite=Ladder&charname=<? echo $ergebnis[$i]['charname']; ?>"><? echo $ergebnis[$i]['charname']; ?></a><? 
   	 } else { echo $ergebnis[$i]['charname']; } ?></font></th>
    <th><font color="<? echo $color ?>"><? echo $ergebnis[$i]['server'] ?></font></th>    
    <th><font color="<? echo $color ?>"><? echo $ergebnis[$i]['rasse'] ?></font></th>
    <th><font color="<? echo $color ?>"><? echo $ergebnis[$i]['klasse'] ?></font></th>   	 
    <th><font color="<? echo $color ?>"><? echo Id_to_User($ergebnis[$i]['id_user']) ?></font></th>
    <th><font color="<? echo $color ?>"><? echo getBLASCLevel($chars,$ergebnis[$i]['charname'], $ergebnis[$i]['level']); ?></font></th></tr><?
	}
	if (count($ergebnis) == '0') { ?>
  <tr><th colspan="5"> Keine Chars vorhanden </th></tr> <?	
	} 
} 

/*
Struktur des Arrays aus dem BLASC System

server -> String
guild_name -> String
faction -> String
numchars -> int 
character -> Array
	name -> String
	level -> int
	race -> String
	class -> String
	sex -> char
	guild_rank -> int (0 = gildenmeister, 1 = offizier, 2 = veteran, 3 = mitglied, 4 = initiand)
	guild_title -> String
	lastupdate -> sqldate
	skills -> Array
  Berufe -> Array
 	 [{beruf}] -> Array
    value -> int
    max -> int 
  Sekundäre Fertigkeiten -> Array
 	 [{Fertigkeit}] -> Array
    value -> int
    max -> int 
	
*/
?>
```


----------



## Xmasman (4. Februar 2005)

Wer jetzt wissen will wie es aussieht hier der link
*»B8 Clan« *


----------



## Scepsis (4. Februar 2005)

Danke @Xmasman 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        


Habe eine noch andere Funktion gefunden die es etwas erleichtert.


Um mal das Script von Oben weiter ausgebaut anzubieten, für die jenigen die sich mit php rumschlagen stell ich das mal rein 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        




```
<?php

$url = 'http://black-legion.info/guild_php.php?server=PVP_Server&guild=BLACK_LEGION';

$file = file_get_contents('http://black-legion.info/guild_php.php?server=PVP_Server&guild=BLACK_LEGION');
if(!$file) die("Fehler beim Öffnen von $url");

$guild = unserialize(gzuncompress($file));
// print_r($guild);

print "<table border=\"1\">";
foreach($guild['character'] as $c) 
	{
  print "<tr>";
  print "<td>".$c['name']."</td>";
  print "<td>".$c['level']."</td>";
  print "<td>".$c['race']."</td>";
  print "<td>".$c['class']."</td>";
  print "<td>".$c['sex']."</td>";

  print "<td>".$c['guild_title']."(".$c['guild_rank'].")</td>";
  $s = $c['skills'];

  $berufe = $s['Berufe'];
  echo "<td>";
// berufe
  if (count($berufe)>0)
 	 {
 	 $berufname = array_keys($berufe);
 	 for($x=0;$x<count($berufe);$x++)
    {
    echo $berufname[$x];
    echo " ( ".$berufe[$berufname[$x]]['value']."/".$berufe[$berufname[$x]]['max']." ) ";
    }
 	 }
  echo "&nbsp;</b></td>";

  
  $fertigkeiten = $s['Sekundäre Fertigkeiten'];
  echo "<td>";
// fertigkeiten
  if (count($fertigkeiten)>0)
 	 {
 	 $fertigkeitenname = array_keys($fertigkeiten);
 	 for($x=0;$x<count($fertigkeiten);$x++)
    {
    echo $fertigkeitenname[$x];
    echo " ( ".$fertigkeiten[$fertigkeitenname[$x]]['value']."/".$fertigkeiten[$fertigkeitenname[$x]]['max']." ) ";
    }
 	 }
  echo "&nbsp;</b></td>";
  echo "</td>";

  print "</tr>\n";
	}
echo "</table>";
?>
```

Wie das ganze dann aussieht seht ihr hier:
»http://www.dloh.de/chartest.php« 

HF


----------



## Raine (4. Februar 2005)

Also ich find das Tool ja genial...  


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 

nur kann ich mit der Gilden Version von den Daten nix anfangen für unsere Gildenpage...

was cool wäre wenn man die Daten von nem einzelnen Char per CharID abrufen könnte 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        



gibts dafür schon nen Termin ? *bestimmt schon der 100000 ist der danach fragt*  


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 



Gruß
Raine
Der Dunkle Stern
»Der Sternenbund«


----------



## Storm|Deni (7. Februar 2005)

Hallo, erstmal großen Dank für Entwicklung von BLASC  


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 

Ich habe das Problem, dass ich nicht auf das Paket zugreifen kann:
Fehler beim Öffnen von http://black-legion.info/guild_php.php?ser...ld=BLACK_LEGION

Liegt das an der Config von meinem PHP oder gibts da ne Problemlösung für?

Greets,
Deni


----------



## Crowley (7. Februar 2005)

Storm|Deni schrieb:
			
		

> Ich habe das Problem, dass ich nicht auf das Paket zugreifen kann:
> Fehler beim Öffnen von http://black-legion.info/guild_php.php?ser...ld=BLACK_LEGION
> 
> Liegt das an der Config von meinem PHP oder gibts da ne Problemlösung für?
> ...


Ich fürchte das liegt an deiner Config. Manche Provider erlauben PHP keinen HTTP-Zugriff. Leider kann ich dir dabei nicht weiterhelfen, da müsstest du dich an deinen Provider wenden.


----------



## Galedon (21. Februar 2005)

Moin Moin 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        



Also ich habe folgenden Code verwendet der hier bereits im Forum aufgeführt wurde:


```
<?
// Anfang der Ausgabe
// include ("inc_head_table.html"); 

// Hier Server eintragen auf dem gespielt wird (für Leerzeichen = %20)
$server = "Madmortem";
// Hier der Gildenname
$gildenname = "Nordsturm";
// Die nächsten Zeilen sind wie im Forum erwähnt um das Array zu bekommen
$url = 'http://black-legion.info/guild_php.php?server='.$server.'&guild='.$gildenname;
$file = file_get_contents($url);
if(!$file) die("Fehler beim Öffnen von $url");
$guild = unserialize(gzuncompress($file));
//Hier Schreibe ich die chars schon mal in ein eigenes Array
$chars = $guild['character'];

//Wenn kein Charakter ausgewählt wurde ist die variable $charname nicht gesetzt und alle Chars werden ausgegeben
if(!isset($charname)) { 
if(!isset($order)) $order = "level"; 
else $order = $order.",level"; ?>
<table width="100%" align="center" cellpadding="5" border="1" bordercolor="#999999" style="border-collapse:collapse;" bgcolor="#333333">
<tr><th>Rank</th>
 <th><a href="index.php?unterseite=Ladder&order=charname">Name</a></th>
 <th><a href="index.php?unterseite=Ladder&order=server">Server</a></th>
 <th><a href="index.php?unterseite=Ladder&order=rasse">Rasse</a></th>
 <th><a href="index.php?unterseite=Ladder&order=klasse">Klasse</a></th>
 <th><a href="index.php?unterseite=Ladder&order=id_user">Spieler</a></th>
 <th width="30"><a href="index.php?unterseite=Ladder">Level</a></th></tr><? 
 //Die Charaktergrundewerte sind in der Datenbank hinterlegt im table b8_chars und die User dazu im table b8_user
 $query="SELECT * FROM b8_chars chars LEFT JOIN b8_user user ON chars.id_user = user.id ORDER BY $order DESC"; 
 //Funktion gibt alle Chars aus
 Charausgabe_Ladder($query, $guild); ?>
</table><?
} else {
//Hier nun wurde ein bestimmter Charakter ausgewählt und aus dem Array vom BLASC System wird die Position im Array rausgesucht
$idBLASC = getBLASCid($chars,$charname); 
//Nun folgt die Ausgabe aller Informationen ?>
<table align="center" cellpadding="5" cellspacing="0" bgcolor="#222222" border="1" bordercolor="#FFFFFF">
 <tr><th colspan="6"><h2><? echo $charname ?></h2></th></tr>
 
 <tr><td>Geschlecht: </td><td bgcolor="#444444"><? echo $chars[$idBLASC]['sex'] ?></td>
  <td>Gildenstatus: </td><td bgcolor="#444444"><? echo $chars[$idBLASC]['guild_title'] ?></td>
  <td>Aktualsiert: </td><td bgcolor="#444444"><? echo $chars[$idBLASC]['lastupdate'] ?></td></tr>
 
 <tr><td>Level: </td><td bgcolor="#444444"><? echo $chars[$idBLASC]['level'] ?></td>
  <td>Rasse: </td><td bgcolor="#444444"><? echo $chars[$idBLASC]['race'] ?></td>
  <td>Klasse: </td><td bgcolor="#444444"><? echo $chars[$idBLASC]['class'] ?></td></tr>

 <tr><td colspan="6"><b>Berufe</b></td></tr><? 
 $berufe = getSkills($chars[$idBLASC]['skills'],"berufe"); 
 for($i=0; $i<count($berufe); $i++) { ?>
  <tr><td><? echo $berufe[$i]['name']; ?></td>
   <td colspan="2"><? echo $berufe[$i]['value']." / ".$berufe[$i]['max']; ?></td>
   <td colspan="3"> </td></tr><?
 } ?>
 
 <tr><td colspan="6"><b>Sekundäre Fertigkeiten</b></td></tr><? 
 $sekund = getSkills($chars[$idBLASC]['skills'],"sekundäre fertigkeiten"); 
 for($i=0; $i<count($sekund); $i++) { ?>
  <tr><td><? echo $sekund[$i]['name']; ?></td>
   <td colspan="2"><? echo $sekund[$i]['value']." / ".$sekund[$i]['max']; ?></td>
   <td colspan="3"> </td></tr><?
 } ?>
</table><?
} 

//include ("inc_foot_table.html"); 
// Ende der Ausgabe

//Funktion gibt entweder Berufe oder Fertigkeiten zurück
function getSkills($skills, $wahl) {
if($wahl == "berufe") {
 $array = getSkillValues($skills['Berufe']);
} else {
 $array = getSkillValues($skills['Sekundäre Fertigkeiten']);
}
return $array;
}

//Zu jeweils den Berufen oder Fertigkeiten werden Namen rausgesucht und mit den Werten zusammen im Array zurückgegeben
function getSkillValues($skills) {
//Berufe
if(isset($skills['Alchimie'])) 
 $name[] = "Alchimie";
if(isset($skills['Bergbau'])) 
 $name[] = "Bergbau";
if(isset($skills['Schmiedekunst'])) 
 $name[] = "Schmiedekunst";
if(isset($skills['Kräuterkunde'])) 
 $name[] = "Kräuterkunde";
if(isset($skills['Lederverarbeitung'])) 
 $name[] = "Lederverarbeitung";
if(isset($skills['Kürschnerei'])) 
 $name[] = "Kürschnerei";
if(isset($skills['Ingenieurskunst'])) 
 $name[] = "Ingenieurskunst";
if(isset($skills['Verzauberkunst'])) 
 $name[] = "Verzauberkunst";

// Sekundäre Fertigkeiten
if(isset($skills['Kochkunst'])) 
 $name[] = "Kochkunst";
if(isset($skills['Angeln'])) 
 $name[] = "Angeln";
if(isset($skills['Erste Hilfe'])) 
 $name[] = "Erste Hilfe";
if(isset($skills['Untoten-Reitkunst'])) 
 $name[] = "Untoten-Reitkunst";
if(isset($skills['Kodoreiten'])) 
 $name[] = "Kodoreiten";
if(isset($skills['Wolfreiten'])) 
 $name[] = "Wolfreiten";

if(isset($name[0])) {
 $skill[0]['name'] = $name[0];
 $skill[0]['value'] = $skills[$name[0]]['value'];
 $skill[0]['max'] = $skills[$name[0]]['max'];
}
if(isset($name[1])) {
 $skill[1]['name'] = $name[1];
 $skill[1]['value'] = $skills[$name[1]]['value'];
 $skill[1]['max'] = $skills[$name[1]]['max'];
}
return $skill;
}

//BLASCid ist die Postition im Array $chars
function getBLASCid($chars,$charname) {
for($i=0; $i<count($chars); $i++) {
 if($chars[$i]['name'] == $charname)
  $id = $i;
} 
return $id;
}

//Da nicht alle Chars von uns im System sind untersucht die Funktion ob ein Char enthalten ist
function charExistsInBLASC($chars,$charname) {
for($i=0; $i<count($chars); $i++) {
 if($chars[$i]['name'] == $charname)
  $exists = true;
} 
return $exists;
}

//Die Chars die nicht im BLASC-System sind deren level wird von den Benutzern so gesetzt bei den anderen wird der BLASC Wert genommen
// falls dieser höher ist, denn dann ist dieser aktueller
function getBLASCLevel($chars, $charname, $level) {
for($i=0; $i<count($chars); $i++) {
 if(($chars[$i]['name'] == $charname) && ($chars[$i]['level'] > $level))
  $level = $chars[$i]['level'];
} 
return $level;
}

//Funktion gibt anhand der Anfrage aus der DB alle Charaktere aus
function Charausgabe_Ladder($query, $guild) {
$ergebnis = Querry_to_Array($query);  

//Für jeden Charakter wird einmal die Schleife durchlaufen
for($i=0; $i<count($ergebnis); $i++) {
 //Wenn die Chars zur Allianz gehören wird die Zeile gelb sonst rot 
 if(($ergebnis[$i]['rasse'] == "Elf") || ($ergebnis[$i]['rasse'] == "Mensch") ||($ergebnis[$i]['rasse'] == "Zwerg") || ($ergebnis[$i]['rasse'] == "Gnom"))
  $color = "yellow";
 else
  $color = "red"; ?>
 <tr><th width="5%"><font color="#FFFFFF"><? echo $i+1 ?></font></th>
   <th><font color="<? echo $color ?>"><? 
    //Falls ein BLASC eintrag existiert kann der Link für die Details angeklickt werden 
    if(charExistsInBLASC($guild['character'],$ergebnis[$i]['charname'])) { ?>
     <a href="index.php?unterseite=Ladder&charname=<? echo $ergebnis[$i]['charname']; ?>"><? echo $ergebnis[$i]['charname']; ?></a><? 
    } else { echo $ergebnis[$i]['charname']; } ?></font></th>
   <th><font color="<? echo $color ?>"><? echo $ergebnis[$i]['server'] ?></font></th>    
   <th><font color="<? echo $color ?>"><? echo $ergebnis[$i]['rasse'] ?></font></th>
   <th><font color="<? echo $color ?>"><? echo $ergebnis[$i]['klasse'] ?></font></th>     
   <th><font color="<? echo $color ?>"><? echo Id_to_User($ergebnis[$i]['id_user']) ?></font></th>
   <th><font color="<? echo $color ?>"><? echo getBLASCLevel($chars,$ergebnis[$i]['charname'], $ergebnis[$i]['level']); ?></font></th></tr><?
}
if (count($ergebnis) == '0') { ?>
 <tr><th colspan="5"> Keine Chars vorhanden </th></tr> <? 
} 
} 

/*
Struktur des Arrays aus dem BLASC System

server -> String
guild_name -> String
faction -> String
numchars -> int 
character -> Array
name -> String
level -> int
race -> String
class -> String
sex -> char
guild_rank -> int (0 = gildenmeister, 1 = offizier, 2 = veteran, 3 = mitglied, 4 = initiand)
guild_title -> String
lastupdate -> sqldate
skills -> Array
 Berufe -> Array
  [{beruf}] -> Array
   value -> int
   max -> int 
 Sekundäre Fertigkeiten -> Array
  [{Fertigkeit}] -> Array
   value -> int
   max -> int 

*/
?>
```


Wenn ich das nun auf meinem Server starte erhalte ich folgende Fehlermeldung:


```
Fatal error: Call to undefined function: querry_to_array() in /homepages/2/d39066026/htdocs/test.php on line 157
```

Liegt das an meinem Server oder ist das Script noch nicht zu 100% fertig ?

Danke im Voraus

Galedon


----------



## silentdream (21. Februar 2005)

Die gleiche Meldung bekomme ich auch, habe es gestern auch so auf den Server geladen, immer diese Meldung.


Liebe Grüße


----------



## Crowley (21. Februar 2005)

Dort scheint der Autor die eigene Datenbank abzufragen. Das Skript ist also schon recht stark an die speziell Website angepasst und wohl eher weniger zum allgemeinen Gebrauch geeignet.


----------



## Scepsis (21. Februar 2005)

Crowley schrieb:
			
		

> Dort scheint der Autor die eigene Datenbank abzufragen. Das Skript ist also schon recht stark an die speziell Website angepasst und wohl eher weniger zum allgemeinen Gebrauch geeignet.
> [post="81023"][/post]​




jiup 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 also nehmt meins für ne basic ausgabe *g*


----------



## Melworm (22. Februar 2005)

Hi xmasman,

habe Dein Skript incl. mysql_function.php eingebaut, jedoch sagt er immer keine Chars vorhanden, obwohl diese in der Statistik stehen ?!

http://gilde.elektrowarenladen.de/guildladder.php

Deine mysql_function.php is als include eingebaut ?!  und die Tables sind auch vorhanden 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 

HELP PLZ   


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 
LG
Melworm


----------



## Xmasman (22. Februar 2005)

Also um dem ganzen ein bisschen auf die Sprünge zu helfen habe ich wie evtl. der ein oder andere gesehen hat in meinem forum einen Teil des Scripts veröffentlicht.
Generell werde ich nach dem 8.3 versuchen einfach die ganze Seite offenzulegen ( http://b8clan.xmasman.de ) aber ohne Grafiken.
Bitte habt noch ein wenig Geduld habe doch mehr zu tun als vermutet und man will ja noch fleissig WoW zocken.

P.S.: Ich weiss das im Script noch kleine Fehler enthalten sind auch hier habt bitte noch was Geduld, ich habe diese im eigenen Code gefixed und werde bald weiteren Sachen dazu schreiben.

Hier der Thread mit dem SCript nochmal : http://forum.xmasman.de/thread.php?id=1120


----------



## Melworm (23. Februar 2005)

ok thanks, haben es jetzt aber anders gemacht 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 

Danke  


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.


----------



## SethDeBlade (4. März 2005)

ist es vielleicht auch möglich die daten in eine sql-tabelle einzulesen??  und wenn ja, wie geht das? ich habe von xml null plan :-\

vielleicht könnte man das auch so machen, dass die daten nur 2x pro std eingelesen werden oder sowas...


----------



## Dolgomar (5. März 2005)

danke an Scepsis 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        



habs mal bisl umgebaut *g

und für unsere gilde angepasst:
http://www.gobe-goch.de/member.php

ist nochn test, werds später nochma grafisch überarbeiten ^^

einzigste was mich dran stört is der letzte zeilenumbruch bei den berufen, dass der den nach dem ersten beruf nochmal macht, , aber glaube kaum dass man des noch hinbiegen kann, hoffnung hab ich aber noch ^^

Also hier mal der code, und da ich html includiert in php hasse, deswegen immer html und php einzeln gemacht, width=\"10\" is einfahc beschissen so mit hand zu coden, da is mir lieber width="10" ^^



> <html>
> <title>Die Schwarze Hand - Member</title>
> <body text="#FFFFFF" bgcolor="#000000" leftmargin="0" rightmargin="10" topmargin="0" bottommargin="0">
> <?
> ...



der dazugehörige balken.gif (sons wird da halt nix angezeigt)^^:
http://www.gobe-goch.de/balken.gif

könnt ihr ja nochma umarbeiten wenn ihr wollt 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        



lieber wär mir natürlich noch die details jedes chars, dafür brauch ich aber, so wies aussieht, ne db (hatten meine vorschreibenden ja schon festgestellt und gemacht), leider hat mein webserver keine db, und lokal will mein apache nicht laufen *grmbl ^^

naja wens wer gebrauchen kann, hf with it 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        



p.s. ihr solltet dann noch euren gildennamen und server ggf ändern 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.


----------



## Bl4ckSh33p (9. März 2005)

hmm also ich würd auch gern ne Memberseite machen wo Rasse, Klasse, Level, Beruf, Letztes Update usw. drauf ist und bei Klick auf den namen eben mehr Details - dazu dann noch sachen wie ICQ, Realname, MSN - was eben so in ner memberliste drin ist 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        



Nur sind meine PHP Kenntnisse leider sehr dürftig (noch sehr untertrieben). Beispiel für ne memberseite gibts bei vwar.de aber eben für WoW angepaßt. Wär doch ne tolle Sache - müßte sich nur noch jemand finden der das machen will.  


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 

Dann müßte man dort nur noch Gildenname angeben und hochladen (evtl. noch paar Einstellungen was angezeigt wird usw. in nem Admin-Bereich) und schon hat jede Gilde ne tolle Mitgliederseite.  


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.


----------



## shadowboss (11. März 2005)

hallo!

ich hab mal versucht, den code von xmasman für meine gilde zu übernehmen (verdorrte Rose auf kargath). ich möchte gleich vorausschicken, dass ich keine ahnung von php hab, aber seht doch selbst:

http://vr.gowow.de/members.php

alles, was ich getan hab, ist den server und den gildennamen zu editieren. aber aus der fehlermeldung werd ich nicht schlau. (das mit dem inc_head_table.html ist mir schon klar, weil es die datei ja bei mir nicht gibt)....


----------



## Scepsis (11. März 2005)

shadowboss schrieb:
			
		

> hallo!
> 
> ich hab mal versucht, den code von xmasman für meine gilde zu übernehmen (verdorrte Rose auf kargath). ich möchte gleich vorausschicken, dass ich keine ahnung von php hab, aber seht doch selbst:
> 
> ...



xmasman hat 1. datenbankanbindung, 2. html templates 
(oder?)

schlechte vorlage gewählt 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.


----------



## shadowboss (11. März 2005)

oh! 

hat vielleicht jemand eine vorlage für mich, die möglichst leicht verständlich ist? die seite von xmasman sieht einfach zu geil aus....


----------



## Borduano (15. März 2005)

Hallo, ich habe ein Problem, da ich nicht ganz helle bin was php angeht würde ich gern eine hilfe stellung bekommen oder gar jemand der mir das ding coded so das ich es nur noch auf dem server packen muss und es verlinken muss.

Ich nutze das Forum wbb2.3, meine Gilde heisst Fearless Knights und wir spielen auf dem Server Lothar auf der Seite der allianz.

Würde mich freuen wenn sich da eine für bereit erklärt und mir diesbezüglich helfen könnte danke schon mal im voraus.


----------



## groener (16. März 2005)

Borduano schrieb:
			
		

> Hallo, ich habe ein Problem, da ich nicht ganz helle bin was php angeht



Dann lass mal php weg und scrolle ganz dezent nach oben. Die restlichen Fragen die aufkommen könnten hast du dir schon selbst beantwortet. Meine Gilde heist ... , wir spielen auf dem Server ... 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.


----------



## GMJ (21. März 2005)

wird es eigentlich noch mehr attribute zum Auslesen geben, wie "Attribute (Kraft, Ausdauer, usw)" und Talente, oder wird das in dem Sinne euch vorbehalten bleiben?

Zumindest soweit ich das verstanden habe, gibt es diese Werte noch nicht zum Auslesen.

Gruß & an der Stelle mal ein großes Kompliment an euch 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.


----------



## Yiria (22. März 2005)

Guten Morgen zusammen,

also erst mal ein riesen Lob an die BLASC-Entwickler!

Ihr leistet hier grandiose Arbeit, ich ziehe meinen Hut vor so viel Engagement und Motivation! /hutzieh
Ich weiß wie viel Arbeit in so etwas steckt, ich bin auch Webdesigner und das schon seit vielen Jahren.

So, nun aber mal zu meinem Problem.

Ich habe mir gestern mal den PHP-Code von *Dolgomar* (vielen Dank auch an dich) hier aus dem Thread kopiert, um für meine Gilde eine kleine Gilden-Übersicht auf unserer Clan-Seite zur Verfügung zu stellen.

Zu einem grossen Teil funktioniert auch alles super, allerdings werden die Sekundären Fertigkeiten NICHT angezeigt. 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        



Hier mal der entsprechende Code-Schnipsel:

```
$fertigkeiten = $s['Sekundäre Fertigkeiten'];
	echo "<td>";
	// fertigkeiten
	if (count($fertigkeiten)>0) {
  $fertigkeitenname = array_keys($fertigkeiten);
  for($x=0;$x<count($fertigkeiten);$x++) {

?>

<table cellspacing="0" border="0" width="100%" cellpadding="0">
<tr>
<td width="30%">
<b><? echo $fertigkeitenname[$x]; ?>:</b>
</td>
<td width="70%">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td background="../images/extern/balken.gif" width="<?=$fertigkeiten[$fertigkeitenname[$x]]['value'] ?>">
<? echo "&nbsp;(".$fertigkeiten[$fertigkeitenname[$x]]['value']."/".$fertigkeiten[$fertigkeitenname[$x]]['max'].")&nbsp;"; ?>
</td>
</tr>
</table>
```

Sieht einer von euch hier einen Fehler?
Ich hab jetzt schon seit Stunden daran rumprobiert, kann aber keinen entdecken. 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        



Die Syntax und auch der Code an sich sollte in Ordnung sein, denn wenn ich:

```
$fertigkeiten = $s['Sekundäre Fertigkeiten'];
```
durch

```
$fertigkeiten = $s['Berufe'];
```
ersetze, dann werden halt die normalen Berufe angezeigt, aber das zeigt schon mal, dass der Code passt.

Also liegt das Problem wohl darin, dass das Array *skills->Sekundäre Fertigkeiten* nicht richtig ausgelsen wird.
Aber der Name *Sekundäre Fertigkeiten* sollte ja auch passen, denn wenn ich den Standard-Code aus dem ersten Post dieses Threads aufrufe, dann wird mir ja die komplette Array-Struktur inklusive Inhalt angezeigt und da steht ganz klar *skills->Sekundäre Fertigkeiten* als Array drin.

Leute ich schnapp echt noch über, kann mir hier einer Helfen?

Ach ja, ich arbeite an einem Apple Macintosh, kann es sein, dass es da Probleme mit dem *ä* aus dem Wort Sekundäre gibt?
Der Mac benutzt ja eine andere Zeichencodierung als der PC.

Na ja, ich hoffe einer von euch kann mir weiterhelfen.

Vielen Dank schon mal fürs lesen! :wink:

Grüße
Yiria

P.S.: Hätte ich doch fast vergessen, die Seite in der ich den Code eingebaut habe, findet ihr hier.


----------



## Yiria (22. März 2005)

Hallo noch mal.

Oh Leute, vergesst meinen Mega-Post von oben, ich konnte mich im Geschäft mal an den PC kämpfen und hab die Datei hier mal geöffnet und musste feststellen, dass da nicht *Sekundäre Fertigkeiten* sondern *Sekund§re Fertigkeiten* stand. 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        



Sprich, es lag tatsächlich an der Zeichencodierung meines Macs!

Ich hab dann einfach das *ä* am PC ersetzt, die Datei wieder hochgeladen und siehe da, es funktioniert!

Problem gelöst! 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        



Ich hoffe ich konnte hiermit anderen mit dem gleichen oder einem ähnlichen Problem weitehelfen! 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        



Gruß
Yiria


----------



## Lasibaen (22. März 2005)

mh, ich will auch den code von Dolgomar benutzen, bekomme aber folgende Fehlermeldung:

Warning: file_get_contents() [function.file-get-contents]: php_network_getaddresses: getaddrinfo failed: Der angegebene Host ist unbekannt. in D:\apachefriends\xampp\htdocs\blasc\member.php on line 7

Warning: file_get_contents(http://black-legion.info/guild_php.php?server=Lothar&guild=Kinder%20der%20Sonne) [function.file-get-contents]: failed to open stream: No such file or directory in D:\apachefriends\xampp\htdocs\blasc\member.php on line 7
Fehler beim Öffnen von http://black-legion.info/guild_php.php?ser...r%20der%20Sonne


Gilde: Kinder der Sonne
Server: Lothar


jemand ne ahnung wo der fehler ist?


----------



## GMJ (23. März 2005)

Lasibaen schrieb:
			
		

> mh, ich will auch den code von Dolgomar benutzen, bekomme aber folgende Fehlermeldung:
> 
> Warning: file_get_contents() [function.file-get-contents]: php_network_getaddresses: getaddrinfo failed: Der angegebene Host ist unbekannt. in D:\apachefriends\xampp\htdocs\blasc\member.php on line 7
> 
> ...



Probleme dieser Art am besten mit deinem Code posten sonst wirds schwer dir zu helfen.

a) evtl die URL ohne ' ' geschrieben.
z.B. $file = file_get_contents('http://black-legion.info/guild_php.php?server=PVP_Server&guild=BLACK_LEGION');

b) führst du das lokal auf deinem PC aus, oder hast es hochgeladen auf einen http-server?


----------



## Lasibaen (23. März 2005)

grml, habs local ausgeführt, jetzt mal hochgeladen und siehe da, es geht.....
andere frage: wonach sortiert der die member bzw. wie kann ich ein sortierkriterium einbauen? 
Der code wurde übernommen von Dolgomar:


```
<html>
<title>Kinder der Sonne - Member</title>
<body text="#000000" bgcolor="#EFEFEF" leftmargin="0" rightmargin="10" topmargin="0" bottommargin="0">
<?
$url = 'http://black-legion.info/guild_php.php?server=Lothar&guild=Kinder%20der%20Sonne';

$file = file_get_contents('http://black-legion.info/guild_php.php?server=Lothar&guild=Kinder%20der%20Sonne');
if(!$file) die("Fehler beim Öffnen von $url");

$guild = unserialize(gzuncompress($file));
// print_r($guild);
?>
<table border="1" width="100%" cellpadding="0" cellspacing="0" valign="middle" bordercolo="#000000">
<tr>
<td>Name</td>
<td>Level</td>
<td>Rasse</td>
<td>Klasse</td>
<td>Geschlecht</td>
<td>Rang</td>
<td>Berufe</td>
<td>Sek. Beruf(e)</td>
</tr>
<?
foreach($guild['character'] as $c)
{
print "<tr>";
print "<td>".$c['name']."</td>";
print "<td>".$c['level']."</td>";
print "<td>".$c['race']."</td>";
print "<td>".$c['class']."</td>";
print "<td>".$c['sex']."</td>";

print "<td>".$c['guild_title']."(".$c['guild_rank'].")</td>";
$s = $c['skills'];

$berufe = $s['Berufe'];
echo "<td>";
// berufe
if (count($berufe)>0)
  {
  $berufname = array_keys($berufe);
  for($x=0;$x<count($berufe);$x++)
   {
?>
<table cellspacing="0" border="0" width="100%" cellpadding="0">
<tr>
  <td width="30%">
   <?
    echo $berufname[$x];
   ?>
  </Td>
  <td width="70%">
   <table cellpadding="0" cellspacing="0" border="0">
    <tr>
                          <?
       echo " ( ".$berufe[$berufname[$x]]['value']."/".$berufe[$berufname[$x]]['max']." ) "; ?>
     </td>
    </tr>
   </table>
  </td>
</tr>
</table>
<?
   }
  }
echo "&nbsp;</b></td>";


$fertigkeiten = $s['Sekundäre Fertigkeiten'];
echo "<td valign=\"middle\">";
// fertigkeiten
if (count($fertigkeiten)>0)
  {
  $fertigkeitenname = array_keys($fertigkeiten);
  for($x=0;$x<count($fertigkeiten);$x++)
   {
    ?>
<table cellspacing="0" border="0" width="100%" cellpadding="0">
<tr>
  <td width="30%">
   <?
    echo $fertigkeitenname[$x];
   ?>
  </Td>
  <td width="70%">
   <table cellpadding="0" cellspacing="0" border="0">
    <tr>
     
                     <?
       echo " ( ".$fertigkeiten[$fertigkeitenname[$x]]['value']."/".$fertigkeiten[$fertigkeitenname[$x]]['max']." ) "; ?>
     </td>
    </tr>
   </table>
  </td>
</tr>
</table>
<?   }
  }
echo "&nbsp;</b></td>";
echo "</td>";

print "</tr>\n";
}
echo "</table>";
?>
</body>
</html>
```

Die seite gibts »hier«


----------



## GMJ (23. März 2005)

glaube sortiert wird nach Registrierdatum bei blasc

Ich glaube um dies beeinflussen zu können,  müsstest du schon wie xmasman deine Daten in eine eigene sql-db zwischenspeichern.


----------



## Lasibaen (23. März 2005)

ochnee, bitte net  


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 
ich bin heilfroh das ich  die seite hinbekommen habe und jetzt soll das an so eine "kleinigkeit" scheitern.....
Bitte sagt mir ne möglichkeit wie ich das hinbekomme....  


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.


----------



## B3N (23. März 2005)

Um ein Array zu sortieren benötigt es schon ein paar Zeilen Code. Hier eine Funktion.


```
function array_natsort($aryData, $strIndex, $strSortBy, $strSortType=false)
	{

    if (!is_array($aryData) || !$strIndex || !$strSortBy)
       return $aryData;
      
    $arySort = $aryResult = array();

    foreach ($aryData as $aryRow)
        $arySort[$aryRow[$strIndex]] = $aryRow[$strSortBy];
      
    natsort($arySort);

    if ($strSortType=="desc")
        arsort($arySort);
      
    foreach ($arySort as $arySortKey => $arySorted)
        foreach ($aryData as $aryOriginal)
            if ($aryOriginal[$strIndex]==$arySortKey)
                array_push($aryResult, $aryOriginal);

    return $aryResult;
	}
```

Mit der Funktion könnt ihr das Array sortieren, das Kritierium festlegen und sagen ob ihr es aufsteigend oder absteigend haben wollt.

B3N


----------



## silentdream (23. März 2005)

Und wie mache ich es wenn ich unten stehenden Code nutze und es nach Rang (gildenmeister usw) sortieren möchte?




> <html>
> <title>Die Schwarze Hand - Member</title>
> <body text="#FFFFFF" bgcolor="#000000" leftmargin="0" rightmargin="10" topmargin="0" bottommargin="0">
> <?
> ...


----------



## Lasibaen (24. März 2005)

ich versteh o.g. code zum sortieren auch net....
könntest du das nochmal schreiben mit für den o.g. code?

wäre echt super....


----------



## Shaleesa (24. März 2005)

Bei dem Berufe Teil des Scripts habe ich ein kleines Problem:


```
<td background="balken.gif" width="<?=$fertigkeiten[$fertigkeitenname[$x]]['value'] ?>" height="9">
```

Hier wird der balken immer ganz ausgefüllt angezeigt, obwohl die Berufe noch nicht maximiert sind. Die numerischen Werte werden allerdings richtig angezeigt. Woran könnte das liegen?

Seite ist hier.


----------



## Yiria (24. März 2005)

Hallo zusammen.

Also, nachdem mich jetzt schon einige Foren-User angemailt oder mir PNs geschickt haben um mich nach dem Quellcode der Kinder der Träume - Gildenübersicht zu fragen, habe ich mich dazu entschieden den Code hier einfach mal in den Thread zu posten.


```
<?
$server = 'Blackhand';
$gilde ='Kinder%20der%20Tr%E4ume';
$url = 'http://black-legion.info/guild_php.php?server='.$server.'&guild='.$gilde;

$file = file_get_contents($url);
if(!$file) die("Fehler beim &Ouml;ffnen von $url");

$guild = unserialize(gzuncompress($file));

$wahl = $_GET['wahl'] ? $_GET['wahl'] : 'name';
$sort = $_GET['sort'] ? $_GET['sort'] : 'asc';

$charlvl = 0;
foreach($guild['character'] as $char) {
	$charlvl = ($charlvl + $char['level']);
	}
$avlvl = (int) ($charlvl/$guild['numchars']);
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>
<head>
<title><?=$guild['guild_name'] ?> - Gilden&uuml;bersicht</title>
<style type="text/css" media="screen">
<!--
	body {
	margin: 0px;
	color: rgb(255, 255, 255);
	font: 12px "Trebuchet MS", Geneva, Arial, Helvetica, SunSans-Regular, sans-serif;
	line-height: 16px;
	background-image: url(../images/gilde/gbg.gif);
	background-color: rgb(0, 0, 0);
	}

td {
	color: rgb(255, 255, 255);
	font: 12px "Trebuchet MS", Geneva, Arial, Helvetica, SunSans-Regular, sans-serif;
	line-height: 16px;
	}

h1 {
	color: rgb(218, 182, 86);
	}
	
a {
	color: rgb(218, 182, 86);
	font: 12px "Trebuchet MS", Geneva, Arial, Helvetica, SunSans-Regular, sans-serif;
	line-height: 16px;
	text-decoration: none;
	}

a:hover {
	color: rgb(245, 213, 129);
	}

a.bold {
	color: rgb(218, 182, 86);
	font: 12px "Trebuchet MS", Geneva, Arial, Helvetica, SunSans-Regular, sans-serif;
	line-height: 16px;
	font-weight: bold;
	text-decoration: none;
	}

a.bold:hover {
	color: rgb(245, 213, 129);
	}
-->
</style>
</head>
<body leftmargin="0" rightmargin="0" topmargin="0" bottommargin="0">
<a name="top"></a>
<div align="center" style="padding: 10px">
<table border="0" width="95%" cellpadding="2" cellspacing="2">
<tr>
<td colspan="8">
<div style="border-bottom: 2px solid rgb(218, 182, 86)">
<table border="0" cellpadding="2" cellspacing="2">
<tr>
<td>
<a href="<?=$PHP_SELF ?>"><img src="../images/gilde/gtab.gif" alt="" height="30" width="41" border="0"></a>
</td>
<td><h1><i><?=$guild['guild_name'] ?> - Gilden&uuml;bersicht</i></h1></td>
</tr>
</table>
</div>
<table border="0" cellpadding="2" cellspacing="2">
<tr valign="top">
<td>
<b>Server:</b> <?=$guild['server'] ?> &bull; 
<b>Fraktion:</b> <?=$guild['faction'] ?> &bull; 
<b>registrierte Charaktere:</b> <?=$guild['numchars'] ?> &bull;
<b>Level-Durchschnitt:</b> <?=$avlvl ?>
</td>
</tr>
</table>
</td>
</tr>
<tr valign="top" style="font-size: 14px">
<td>
<?
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'name' && $_GET['sort'] == 'asc') {
	$pic = 'up_akt';
	}
elseif(!isset($_GET['wahl']) && !isset($_GET['sort'])) {
	$pic = 'up_akt';
	}
else {  $pic = 'up'; }
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'name' && $_GET['sort'] == 'desc') {
	$apic = 'down_akt';
	}
else {  $apic = 'down'; }
?>
<b>Name:</b> 
<a href="<?=$PHP_SELF ?>?wahl=name&sort=asc" title="Aufsteigend sortieren..."><img src="../images/gilde/<?=$pic ?>.gif" alt="up" height="9" width="6" border="0"></a>
<a href="<?=$PHP_SELF ?>?wahl=name&sort=desc" title="Absteigend sortieren..."><img src="../images/gilde/<?=$apic ?>.gif" alt="down" height="9" width="6" border="0"></a>
</td>
<td align="center">
<?
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'level' && $_GET['sort'] == 'asc') {
	$pic = 'up_akt';
	}
else {  $pic = 'up'; }
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'level' && $_GET['sort'] == 'desc') {
	$apic = 'down_akt';
	}
else {  $apic = 'down'; }
?>
<b>Level:</b> 
<a href="<?=$PHP_SELF ?>?wahl=level&sort=asc" title="Aufsteigend sortieren..."><img src="../images/gilde/<?=$pic ?>.gif" alt="up" height="9" width="6" border="0"></a>
<a href="<?=$PHP_SELF ?>?wahl=level&sort=desc" title="Absteigend sortieren..."><img src="../images/gilde/<?=$apic ?>.gif" alt="down" height="9" width="6" border="0"></a>
</td>
<td>
<?
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'race' && $_GET['sort'] == 'asc') {
	$pic = 'up_akt';
	}
else {  $pic = 'up'; }
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'race' && $_GET['sort'] == 'desc') {
	$apic = 'down_akt';
	}
else {  $apic = 'down'; }
?>
<b>Rasse:</b> 
<a href="<?=$PHP_SELF ?>?wahl=race&sort=asc" title="Aufsteigend sortieren..."><img src="../images/gilde/<?=$pic ?>.gif" alt="up" height="9" width="6" border="0"></a>
<a href="<?=$PHP_SELF ?>?wahl=race&sort=desc" title="Absteigend sortieren..."><img src="../images/gilde/<?=$apic ?>.gif" alt="down" height="9" width="6" border="0"></a>
</td>
<td>
<?
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'class' && $_GET['sort'] == 'asc') {
	$pic = 'up_akt';
	}
else {  $pic = 'up'; }
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'class' && $_GET['sort'] == 'desc') {
	$apic = 'down_akt';
	}
else {  $apic = 'down'; }
?>
<b>Klasse:</b> 
<a href="<?=$PHP_SELF ?>?wahl=class&sort=asc" title="Aufsteigend sortieren..."><img src="../images/gilde/<?=$pic ?>.gif" alt="up" height="9" width="6" border="0"></a>
<a href="<?=$PHP_SELF ?>?wahl=class&sort=desc" title="Absteigend sortieren..."><img src="../images/gilde/<?=$apic ?>.gif" alt="down" height="9" width="6" border="0"></a>
</td>
<td align="center">
<?
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'sex' && $_GET['sort'] == 'asc') {
	$pic = 'up_akt';
	}
else {  $pic = 'up'; }
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'sex' && $_GET['sort'] == 'desc') {
	$apic = 'down_akt';
	}
else {  $apic = 'down'; }
?>
<b>Geschlecht:</b> 
<a href="<?=$PHP_SELF ?>?wahl=sex&sort=asc" title="Aufsteigend sortieren..."><img src="../images/gilde/<?=$pic ?>.gif" alt="up" height="9" width="6" border="0"></a>
<a href="<?=$PHP_SELF ?>?wahl=sex&sort=desc" title="Absteigend sortieren..."><img src="../images/gilde/<?=$apic ?>.gif" alt="down" height="9" width="6" border="0"></a>
</td>
<td>
<?
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'guild_title' && $_GET['sort'] == 'asc') {
	$pic = 'up_akt';
	}
else {  $pic = 'up'; }
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'guild_title' && $_GET['sort'] == 'desc') {
	$apic = 'down_akt';
	}
else {  $apic = 'down'; }
?>
<b>Rang:</b> 
<a href="<?=$PHP_SELF ?>?wahl=guild_title&sort=asc" title="Aufsteigend sortieren..."><img src="../images/gilde/<?=$pic ?>.gif" alt="up" height="9" width="6" border="0"></a>
<a href="<?=$PHP_SELF ?>?wahl=guild_title&sort=desc" title="Absteigend sortieren..."><img src="../images/gilde/<?=$apic ?>.gif" alt="down" height="9" width="6" border="0"></a>
</td>
<td><b>Berufe:</b></td>
<td><b>Sek. Fertigkeit(en):</b></td>
</tr>

<?
function sortierung($a, $b) {
	global $wahl, $sort;
	if ($a[$wahl] == $b[$wahl]) {
  return 0;
	}
	if($sort == 'desc') {
  return ($a[$wahl] < $b[$wahl]) ? 1 : -1;
  }
	elseif($sort == 'asc') {
  return ($a[$wahl] < $b[$wahl]) ? -1 : 1;
  }
	else {
  return ($a[$wahl] < $b[$wahl]) ? -1 : 1;
  }
	}

usort($guild['character'], 'sortierung');

foreach($guild['character'] as $c) {
	if($i %2 == 0) { $bgc = '#442109'; } else { $bgc = '#592c0c'; }
	if($c['sex'] == 'm') { $sex = 'm&auml;nnlich'; } else { $sex = 'weiblich'; }

	echo '<tr valign="top" bgcolor="'.$bgc.'">
<td>
<a class="bold" href="http://black-legion.planet-multiplayer.de/index.php?id=3&sub=1&showchar='.$c['name'].'&showguild=&server='.$server.'&search=suchen" target="_blank" title="Profil von '.$c['name'].'...">'.$c['name'].'</a><br>
<a style="font-size: 10px" href="http://black-legion.planet-multiplayer.de/index.php?id=3&sub=1&showprofile=true&name='.$c['name'].'&server='.$server.'" target="_blank" title="Ausr&uuml;stung von '.$c['name'].'...">&raquo;&nbsp;Ausr&uuml;stung</a>
</td>
<td align="center">'.$c['level'].'</td>
<td>'.$c['race'].'</td>
<td>'.$c['class'].'</td>
<td align="center">
<img src="../images/gilde/'.$c['sex'].'.gif" alt="'.$sex.'" title="'.$sex.'" height="10" width="10" border="0">
</td>';

	echo '<td>'.$c['guild_title'].'</td>';
	$s = $c['skills'];

	$berufe = $s['Berufe'];
	echo "<td>";
	// berufe
	if (count($berufe)>0) {
  $berufname = array_keys($berufe);
  for($x=0;$x<count($berufe);$x++) {
?>

<table cellspacing="0" border="0" width="100%" cellpadding="0">
<tr>
<td width="30%">
<b><? echo $berufname[$x]; ?>:</b>
</td>
<td width="70%">
<table cellpadding="0" cellspacing="1" border="0">
<tr>
<td background="../images/gilde/balken.gif" width="<?=$berufe[$berufname[$x]]['value'] ?>">
<? echo "&nbsp;(".$berufe[$berufname[$x]]['value']."/".$berufe[$berufname[$x]]['max'].")&nbsp;"; ?>
</td>
</tr>
</table>
</td>
</tr>
</table>

<?
  }
	}
	else { echo '<div style="font-size: 11px">noch kein Beruf erlernt</div>'; }
echo '</td>';

	$fertigkeiten = $s['Sekund?re Fertigkeiten'];
	echo '<td>';
	// fertigkeiten
	if (count($fertigkeiten)>0) {
  $fertigkeitenname = array_keys($fertigkeiten);
  for($x=0;$x<count($fertigkeiten);$x++) {

?>

<table cellspacing="0" border="0" width="100%" cellpadding="0">
<tr>
<td width="30%">
<b><? echo $fertigkeitenname[$x]; ?>:</b>
</td>
<td width="70%">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td background="../images/gilde/balken.gif" width="<?=$fertigkeiten[$fertigkeitenname[$x]]['value'] ?>">
<? echo "&nbsp;(".$fertigkeiten[$fertigkeitenname[$x]]['value']."/".$fertigkeiten[$fertigkeitenname[$x]]['max'].")&nbsp;"; ?>
</td>
</tr>
</table>
</td>
</tr>
</table>

<?  }
	}
	else { echo '<div style="font-size: 11px">noch keine weiteren Fertigkeiten erlernt</div>'; }
echo '</td>
</td>
</tr>';

$i++;
	}
?>

<tr>
<td colspan="8">
<div align="right" style="border-top: 1px solid rgb(218, 182, 86)">
powered by <a href="http://www.blasc.de" target="_blank">BLASC</a> :: 
&copy; copyright<? echo date( ' Y '); ?><a href="http://black-legion.planet-multiplayer.de/index.php?id=3&sub=1&showguild=<?=$guild['guild_name'] ?>&server=<?=$server ?>" target="_blank"><?=$guild['guild_name'] ?></a> :: 
code by <a href="mailto:yiria@egamen.de">Yiria</a> :: 
<a class="bold" href="#top" title="zum Seitenanfang...">^</a>
</div>
</td>
</tr>
</table>
<br>
</div>
</body>
</html>
```

So, bevor jetzt die PHP Versierteren unter euch los meckern... "Ey, der Code ist ja total unsauber und schlecht strukturiert etc."... denen sei gesagt, STIMMT! :tongue:

Aber im Moment muss das Skript nur funktionieren und das tut es, wenn meine WoW-Sucht irgendwann mal nachlässt, werde ich alles noch etwas verfeinern! :wink:

Bis dahin wünsche ich allen viel Spaß mit dem von mir angepassten Code!

Grüße
Yiria

P.S.: Ach ja, es wäre schön, wenn ihr meinen angepassten Code verwendet, wenn ihr auf http://www.egamen.de verlinken würdet und mich als Coder rechts unten mit aufgeführt lasst! VIELEN LIEBEN DANKE! 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.


----------



## Hancoque (4. April 2005)

Also eine ganz einfache Variante, die Mitglieder nach dem Gildenrang zu Sortieren, habe ich hier:


```
function cmp($a, $b)
{
	if ($a['guild_rank'] == $b['guild_rank']) return 0;
	return ($a['guild_rank'] < $b['guild_rank']) ? -1 : 1;
}

$url = "http://black-legion.info/guild_php.php?server=Server&guild=Gilde";
$file = file_get_contents($url);
$guild = unserialize(gzuncompress($file));

usort($guild['character'], "cmp");
```
Zuerst wird die Sortierungsfunktion für usort() erstellt (das Sortierkriterium definiert), dann die Datei mit den Gildeninfos vom BL-Server geholt (und ins Array geschrieben) und danach die Sortierung vorgenommen. Das Beispiel entspricht ansich zu 99% dem Beispielcode der offiziellen PHP-Dokumentation.


Noch was anderes: Ich habe das Problem, dass der Webserver der Gildenseite irgendwie recht langsam ist, was das Empfangen der Gildendaten vom BL-Server angeht. Mein lokaler Apache wickelt diesen Prozess ohne Verzögerung ab, aber der "richtige" Webserver legt da immer eine Pause ein, die zwischen 5 und 10 Sekunden dauert. Die Verzögerung tritt konkret auf beim Aufruf von file_get_contents(). Das Problem liegt definitiv nicht am BL-Server, aber vielleicht weiß ja jemand woran das liegen könnte. Könnte das irgendeine Sicherheitseinstellung sein?


----------



## silentdream (15. April 2005)

Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

Hallo, 

hier werden ja nun einige Sortierfunktionen beschrieben, komischerweise habe ich entweder keine Sort Funktion oder die Tabelle ist leer :-)

kann mir jemand sagen welchen Block der Sortierung ich wo einbaun müsste?

Verwende folgenden Code ( TXT anbei)


Wäre dafür sehr dankbar, 

Gruss
SilentDream


----------



## luthiene (20. April 2005)

zunächst einmal danke das ihr euch so viel mühe macht!
und nun zu meiner frage: Gibt es denn schon eine Möglichkeit das Inventar und das was der Char trägt abzurufen? Also das man das auch auf seiner page präsentieren kann.
Wäre klasse.


----------



## Hancoque (20. April 2005)

Das geht afaik nicht.


----------



## Shaleesa (21. April 2005)

@Yiria,
danke für die Bereitstellung deines Codes. ich war so frei, und habe ihn erst mal komplett übernommen. Im Laufe der Zeit werde ich noch einige kleine Änderungen vornehmen, aber im Moment gefällt mir das gut.
Ein kleines Problem habe ich allerdings:
Bei keinem der Chars werden sekundäre Fertigkeiten angezeigt, obwohl definitiv welche vorhanden sind (ich hab z.B. Erste Hilfe auf 300, Angeln auf 20 oder so, Reiten 1 usw.).
Hast du eine Ahnung, warum bei mir überall "noch keine weiteren Fertigkeiten erlernt" angezeigt wird?
Page hier: http://www.thingy.de/wow/test2.php
Oh und noch eine Kleinigkeit
ich habe: 

```
$wahl = $_GET['wahl'] ? $_GET['wahl'] : 'level';
$sort = $_GET['sort'] ? $_GET['sort'] : 'desc';
```
Beim ersten Laden der Seite jedoch zeigt er mir den aufsteigenden Pfeil beim Namen an, obwohl der Level absteigend sortiert ist. Klar, ist echt nur peanuts, aber wieso wird das falsch angezeigt?


----------



## Lasibaen (22. April 2005)

selbes prob mit den sek. berufen bei uns..


http://www.kinder-der-sonne.net


----------



## Leftaf (22. April 2005)

Hallo zusammen das mit den Sekundäre Fähigkeiten liegt an dieser Zeile


```
$fertigkeiten = $s['Sekund?re Fertigkeiten'];
```

wenn ihr daraus


```
$fertigkeiten = $s['Sekundäre Fertigkeiten'];
```

macht, geht's auch wieder :-)

Danke für das genialle script

/leftaf


----------



## Hancoque (22. April 2005)

Na sowas musste ja über kurz oder lang passieren. Sonderzeichen wie Umlaute haben in Code eigentlich auch nichts verloren. Mich wunderten diese schon, aber da es anscheinend funktionierte, habe ich mich nicht weiter dran gestoßen.


----------



## Shaleesa (23. April 2005)

Oh weh, wie peinlich, daß ich das nicht selbst gesehen habe. Super, danke für den Tip.. geht jetzt natürlich alles.


----------



## Yiria (25. April 2005)

Hallo zusammen.

@Leftaf
Vielen Dank für die Aufklärung!
Was du beschrieben hast ist völlig korrekt.

Sorry an alle anderen, dass ich nicht selbst geantwortet habe, habe aber im Moment zu viel zu tun auf Arbeit und hatte leider keine Zeit. 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        



@Hancoque
Hehe, na ja man muss das Ganze doch ein wenig anspruchsvoll machen, sonst macht es doch keinen Spaß! :wink:
Aber im ernst, ich denke das kommt weniger von den BLASC-Programmierern, sondern von den Daten welche aus der .lua Datei ausgelesen werden, kann mich da aber auch täuschen.
An sich ist es richtig und auch eine Regel an die man sich halten sollte, nie einen Umlaut in einem Script zu benutzen, aber egal, wer will schon mekern. 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        



@Shaleesa
Also peinlich muss dir das wirklich nicht sein, ich habe doch schon einiges an Erfahrung in Sachen programmieren und selbst ich hatte 3 Stunden gebraucht um das Problem zu beheben, es war nämlich auch bei mir so.
Allerdings war bei mir das *ä* vorhanden, allerdings in der Mac-Codierung und nicht als Windows.

@Alle
Vielen lieben Dank für die Blumen! 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        


Allerdings habe ich ja auch sehr viel von meinen Vorschreibern übernehmen können.

So, ich wünsche allen viel Spaß mit dem Script, hier im Forum und vor allem mit unserem Suchtmittel #1, World of Warcraft! 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        



In diesem Sinne...

Liebe Grüße
Yiria


----------



## Carsti (27. April 2005)

Nochmal fuer die Langsamdenker unter uns: Wie komme ich jetzt vom Charname aus dem Array auf die ID des Characters. Da ich ja nicht alles auf meine Seiet ziehen will, wuerde ich gerne pro Spieler einen Link auf die Anzeigeseite von Planet Multiplayer setzten, und da ist die CharID nunmal zwingend erforderlich...

Schoenen Dank im Voraus!


----------



## Elogrim (30. April 2005)

Hi,

Da nach dem gestrigen Update ja auch die PvP-Ränge auf der Visitenkarte angezeigt werden, wollte ich fragen ob man diese auch schon über die PHP-Schnittstelle auslesen kann?

MfG Elogrim


----------



## Crowley (1. Mai 2005)

Guter Hinweis. Ich habe die entsprechenden Informationen jetzt in die PHP- und XML-Schnittstelle eingebaut.


----------



## Hancoque (1. Mai 2005)

Laut print_r() ist der Rang unter 'pvprank' im Charakter-Array abrufbar.


----------



## SethDeBlade (3. Mai 2005)

im xml-feed steht jetzt lvl 2x drinne



```
<character name="xyz">
<level>44</level>
<level>0</level>
<race>Mensch</race>
<class>Priester</class>
<sex>w</sex>
<guild_rank>2</guild_rank>
<guild_title>abc</guild_title>
-
	<skills>
```

ist etwas uneindeutig :wink:


----------



## Crowley (3. Mai 2005)

oops, das kommt davon, wenn man hastig copy&paste macht. 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        


Ist berichtigt.


----------



## Cil (18. Mai 2005)

so, erstmal ein fröhliches guten morgen zusammen.

ich selbst und ein paar gildenmitglieder benutzen blasc und lesen auch die datenbank auf unserer seite aus


jetzt ist meine frage ob man auch mehrere gilden auf einer seite auslesen kann, da unsere gilde auf 2 servern vertreten ist.



vielleicht als kleinen anhaltspunkt. ich habe den phpcode von Yiria benutzt.
ein dank an dieser stelle für die bereitstellung für die, die nicht so fit in php sind wie meine wenigkeit



mein versuch das selbst zu machen endete wie man auf dem folgenen link sehen kann
http://www.tewair-tirn.de/test3.php


----------



## lamort (18. Mai 2005)

Erst mal ein grosses Gratz zu eurem Blasc Tool, genial.
Ich wollte wissen ob das Gruendungsdatum der Gilde und Eintrittsdatum der einzelnen Mitgliedern aus der Herold DB auszulesen ist?


----------



## steven (23. Mai 2005)

Hallo,

ich habe zum Testen jetzt einfach mal den Code von Yiria aus dem Board kopiert und eingefügt! Server und Gildenname geändert...

Naja, kommt das hier raus! Heißt das, dass mein Provider was nicht unterstützt? Oder geht es nicht so einfach??


http://skdluxe.sk.funpic.de/test.php


----------



## Scuve (26. Mai 2005)

also ich krieg das irgendwie nich gebacken...kommt immer eine fehlermeldung...kann mir mal jemand dabei helfen und mir das erklären wie der code aussehen muss...bei mir wird alles durcheinander dargestellt...


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.


----------



## Lokedemus (26. Mai 2005)

@steven: Das heißt vollkommen richtig, dass dein Provider keine Zugriffe auf entfernte Dateien zulässt.

@Scuve: Ohne die Fehlermeldung zu kennen? Das wird schwer.


----------



## Cor (27. Mai 2005)

guck guck

kann mir jmd sagen was ich wegschnippeln muss, wenn ich auf die sekundären berufe und das geschlecht nicht angezeigt bekommen möchte? 
hab selbst schon versucht hand anzulegen, eigentlich auch immer alle klammern geschlossen, aber bekomme ständige fehlerausgaben sobald ich am php code fummel.

bin da nicht so super versiert.


```
<?
$server = 'Destromath';
$gilde ='Kings%20of%20Battle';
$url = 'http://black-legion.info/guild_php.php?server='.$server.'&guild='.$gilde;

$file = file_get_contents($url);
if(!$file) die("Fehler beim &Ouml;ffnen von $url");

$guild = unserialize(gzuncompress($file));

$wahl = $_GET['wahl'] ? $_GET['wahl'] : 'name';
$sort = $_GET['sort'] ? $_GET['sort'] : 'asc';

$charlvl = 0;
foreach($guild['character'] as $char) {
$charlvl = ($charlvl + $char['level']);
}
$avlvl = (int) ($charlvl/$guild['numchars']);
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>
<head>
<title><?=$guild['guild_name'] ?> - Memberlist</title>

<style type="text/css" media="screen">
<!--
body {
margin: 0px;
color: rgb(255, 255, 255);
font: 12px "Trebuchet MS", Geneva, Arial, Helvetica, SunSans-Regular, sans-serif;
line-height: 16px;
background-image: url(../images/gilde/gbg.gif);
background-color: rgb(0, 0, 0);
}

td {
color: rgb(255, 255, 255);
font: 12px "Trebuchet MS", Geneva, Arial, Helvetica, SunSans-Regular, sans-serif;
line-height: 16px;
}

h1 {
color: rgb(218, 182, 86);
}

a {
color: rgb(218, 182, 86);
font: 12px "Trebuchet MS", Geneva, Arial, Helvetica, SunSans-Regular, sans-serif;
line-height: 16px;
text-decoration: none;
}

a:hover {
color: rgb(245, 213, 129);
}

a.bold {
color: rgb(218, 182, 86);
font: 12px "Trebuchet MS", Geneva, Arial, Helvetica, SunSans-Regular, sans-serif;
line-height: 16px;
font-weight: bold;
text-decoration: none;
}

a.bold:hover {
color: rgb(245, 213, 129);
}
.Stil1 {color: #FFCC33}
-->
</style>

</head>
<body leftmargin="0" rightmargin="0" topmargin="0" bottommargin="0">
<a name="top"></a>
<div align="center" style="padding: 10px">
<table width="61%" height="126" border="0" cellpadding="2" cellspacing="2">
<tr>
<td colspan="8">
<div style="border-bottom: 2px solid rgb(150, 150, 150)">
<table border="0" cellpadding="2" cellspacing="2">
<tr>
<td>
<a href="<?=$PHP_SELF ?>"><img src="../vwar/images/koblogo.gif" alt="" border="0"></a>
</td>
<td><h1><i><?=$guild['guild_name'] ?> 
  <span class="Stil1">-</span> <span class="Stil1">Mitglieder</span></i></h1></td>
</tr>
</table>
</div>
<table border="0" cellpadding="2" cellspacing="2">
<tr valign="top">
<td>
<b>Server:</b> <?=$guild['server'] ?> &bull;
<b>Fraktion:</b> <?=$guild['faction'] ?> &bull;
<b>registrierte Charaktere:</b> <?=$guild['numchars'] ?> &bull;
<b>Level-Durchschnitt:</b> <?=$avlvl ?>
</td>
</tr>
</table>
</td>
</tr>
<tr valign="top" style="font-size: 14px">
<td height="23">
<?
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'name' && $_GET['sort'] == 'asc') {
$pic = 'up_akt';
}
elseif(!isset($_GET['wahl']) && !isset($_GET['sort'])) {
$pic = 'up_akt';
}
else {  $pic = 'up'; }
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'name' && $_GET['sort'] == 'desc') {
$apic = 'down_akt';
}
else {  $apic = 'down'; }
?>
<b>Name:</b>
<a href="<?=$PHP_SELF ?>?wahl=name&sort=asc" title="Aufsteigend sortieren..."><img src="../images/gilde/<?=$pic ?>.gif" alt="up" height="9" width="6" border="0"></a>
<a href="<?=$PHP_SELF ?>?wahl=name&sort=desc" title="Absteigend sortieren..."><img src="../images/gilde/<?=$apic ?>.gif" alt="down" height="9" width="6" border="0"></a>
</td>
<td align="center">
<?
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'level' && $_GET['sort'] == 'asc') {
$pic = 'up_akt';
}
else {  $pic = 'up'; }
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'level' && $_GET['sort'] == 'desc') {
$apic = 'down_akt';
}
else {  $apic = 'down'; }
?>
<b>Level:</b>
<a href="<?=$PHP_SELF ?>?wahl=level&sort=asc" title="Aufsteigend sortieren..."><img src="../images/gilde/<?=$pic ?>.gif" alt="up" height="9" width="6" border="0"></a>
<a href="<?=$PHP_SELF ?>?wahl=level&sort=desc" title="Absteigend sortieren..."><img src="../images/gilde/<?=$apic ?>.gif" alt="down" height="9" width="6" border="0"></a>
</td>
<td>
<?
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'race' && $_GET['sort'] == 'asc') {
$pic = 'up_akt';
}
else {  $pic = 'up'; }
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'race' && $_GET['sort'] == 'desc') {
$apic = 'down_akt';
}
else {  $apic = 'down'; }
?>
<b>Rasse:</b>
<a href="<?=$PHP_SELF ?>?wahl=race&sort=asc" title="Aufsteigend sortieren..."><img src="../images/gilde/<?=$pic ?>.gif" alt="up" height="9" width="6" border="0"></a>
<a href="<?=$PHP_SELF ?>?wahl=race&sort=desc" title="Absteigend sortieren..."><img src="../images/gilde/<?=$apic ?>.gif" alt="down" height="9" width="6" border="0"></a>
</td>
<td>
<?
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'class' && $_GET['sort'] == 'asc') {
$pic = 'up_akt';
}
else {  $pic = 'up'; }
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'class' && $_GET['sort'] == 'desc') {
$apic = 'down_akt';
}
else {  $apic = 'down'; }
?>
<b>Klasse:</b>
<a href="<?=$PHP_SELF ?>?wahl=class&sort=asc" title="Aufsteigend sortieren..."><img src="../images/gilde/<?=$pic ?>.gif" alt="up" height="9" width="6" border="0"></a>
<a href="<?=$PHP_SELF ?>?wahl=class&sort=desc" title="Absteigend sortieren..."><img src="../images/gilde/<?=$apic ?>.gif" alt="down" height="9" width="6" border="0"></a>
</td>
<td align="center">
<?
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'sex' && $_GET['sort'] == 'asc') {
$pic = 'up_akt';
}
else {  $pic = 'up'; }
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'sex' && $_GET['sort'] == 'desc') {
$apic = 'down_akt';
}
else {  $apic = 'down'; }
?>
<b>Geschlecht:</b>
<a href="<?=$PHP_SELF ?>?wahl=sex&sort=asc" title="Aufsteigend sortieren..."><img src="../images/gilde/<?=$pic ?>.gif" alt="up" height="9" width="6" border="0"></a>
<a href="<?=$PHP_SELF ?>?wahl=sex&sort=desc" title="Absteigend sortieren..."><img src="../images/gilde/<?=$apic ?>.gif" alt="down" height="9" width="6" border="0"></a>
</td>
<td>
<?
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'guild_title' && $_GET['sort'] == 'asc') {
$pic = 'up_akt';
}
else {  $pic = 'up'; }
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'guild_title' && $_GET['sort'] == 'desc') {
$apic = 'down_akt';
}
else {  $apic = 'down'; }
?>
<b>Rang:</b>
<a href="<?=$PHP_SELF ?>?wahl=guild_title&sort=asc" title="Aufsteigend sortieren..."><img src="../images/gilde/<?=$pic ?>.gif" alt="up" height="9" width="6" border="0"></a>
<a href="<?=$PHP_SELF ?>?wahl=guild_title&sort=desc" title="Absteigend sortieren..."><img src="../images/gilde/<?=$apic ?>.gif" alt="down" height="9" width="6" border="0"></a>
</td>
<td><b>Berufe:</b></td>
<td><b>Fertigkeiten:</b></td>
</tr>

<?
function sortierung($a, $b) {
global $wahl, $sort;
if ($a[$wahl] == $b[$wahl]) {
 return 0;
}
if($sort == 'desc') {
 return ($a[$wahl] < $b[$wahl]) ? 1 : -1;
 }
elseif($sort == 'asc') {
 return ($a[$wahl] < $b[$wahl]) ? -1 : 1;
 }
else {
 return ($a[$wahl] < $b[$wahl]) ? -1 : 1;
 }
}

usort($guild['character'], 'sortierung');

foreach($guild['character'] as $c) {
if($i %2 == 0) { $bgc = '#666666'; } else { $bgc = '#999999'; }
if($c['sex'] == 'm') { $sex = 'm&auml;nnlich'; } else { $sex = 'weiblich'; }

echo '<tr valign="top" bgcolor="'.$bgc.'">
<td>
<a class="bold" href="http://black-legion.planet-multiplayer.de/index.php?id=3&sub=1&showchar='.$c['name'].'&showguild=&server='.$server.'&search=suchen" target="_blank" title="Profil von '.$c['name'].'...">'.$c['name'].'</a><br>
<a style="font-size: 10px" href="http://black-legion.planet-multiplayer.de/index.php?id=3&sub=1&showprofile=true&name='.$c['name'].'&server='.$server.'" target="_blank" title="Ausr&uuml;stung von '.$c['name'].'...">&raquo;&nbsp;Ausr&uuml;stung</a>
</td>
<td align="center">'.$c['level'].'</td>
<td>'.$c['race'].'</td>
<td>'.$c['class'].'</td>
<td align="center">
<img src="../images/gilde/'.$c['sex'].'.gif" alt="'.$sex.'" title="'.$sex.'" height="10" width="10" border="0">
</td>';

echo '<td>'.$c['guild_title'].'</td>';
$s = $c['skills'];

$berufe = $s['Berufe'];
echo "<td>";
// berufe
if (count($berufe)>0) {
 $berufname = array_keys($berufe);
 for($x=0;$x<count($berufe);$x++) {
?>

<table cellspacing="0" border="0" width="100%" cellpadding="0">
<tr>
<td width="30%">
<b><? echo $berufname[$x]; ?>:</b>
</td>
<td width="70%">
<table cellpadding="0" cellspacing="1" border="0">
<tr>
<td background="../images/gilde/balken.gif" width="<?=$berufe[$berufname[$x]]['value'] ?>">
<? echo "&nbsp;(".$berufe[$berufname[$x]]['value']."/".$berufe[$berufname[$x]]['max'].")&nbsp;"; ?>
</td>
</tr>
</table>
</td>
</tr>
</table>

<?
 }
}
else { echo '<div style="font-size: 11px">Berufslos</div>'; }
echo '</td>';

$fertigkeiten = $s['Sekundäre Fertigkeiten'];
echo '<td>';
// fertigkeiten
if (count($fertigkeiten)>0) {
 $fertigkeitenname = array_keys($fertigkeiten);
 for($x=0;$x<count($fertigkeiten);$x++) {

?>

<table cellspacing="0" border="0" width="100%" cellpadding="0">
<tr>
<td width="30%">
<b><? echo $fertigkeitenname[$x]; ?>:</b>
</td>
<td width="70%">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td background="../images/gilde/balken.gif" width="<?=$fertigkeiten[$fertigkeitenname[$x]]['value'] ?>">
<? echo "&nbsp;(".$fertigkeiten[$fertigkeitenname[$x]]['value']."/".$fertigkeiten[$fertigkeitenname[$x]]['max'].")&nbsp;"; ?>
</td>
</tr>
</table>
</td>
</tr>
</table>

<?  }
}
else { echo '<div style="font-size: 11px">Nebenberufslos</div>'; }
echo '</td>
</td>
</tr>';

$i++;
}
?>

<tr>
<td colspan="8">
<div align="right" style="border-top: 1px solid rgb(200, 200, 200)">
powered by <a href="http://www.blasc.de" target="_blank">BLASC</a> ::
&copy; copyright<? echo date( ' Y '); ?><a href="http://black-legion.planet-multiplayer.de/index.php?id=3&sub=1&showguild=<?=$guild['guild_name'] ?>&server=<?=$server ?>" target="_blank"><?=$guild['guild_name'] ?></a> ::
code by <a href="mailto:yiria@egamen.de">Yiria</a> 
</div>
</td>
</tr>
</table>
<br>
</div>
</body>
</html>
```

das ganze in besserer form: http://www.team-kob.de/vwar/page.php?id=11/


----------



## Lokedemus (27. Mai 2005)

entfernen:

```
...
<td align="center">
<?
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'sex' && $_GET['sort'] == 'asc') {
$pic = 'up_akt';
}
else {  $pic = 'up'; }
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'sex' && $_GET['sort'] == 'desc') {
$apic = 'down_akt';
}
else {  $apic = 'down'; }
?>
<b>Geschlecht:</b>
<a href="<?=$PHP_SELF ?>?wahl=sex&sort=asc" title="Aufsteigend sortieren..."><img src="../images/gilde/<?=$pic ?>.gif" alt="up" height="9" width="6" border="0"></a>
<a href="<?=$PHP_SELF ?>?wahl=sex&sort=desc" title="Absteigend sortieren..."><img src="../images/gilde/<?=$apic ?>.gif" alt="down" height="9" width="6" border="0"></a>
</td>
...
...
<td><b>Fertigkeiten:</b></td>
...
...
if($c['sex'] == 'm') { $sex = 'm&auml;nnlich'; } else { $sex = 'weiblich'; }
...
...
<td align="center">
<img src="../images/gilde/'.$c['sex'].'.gif" alt="'.$sex.'" title="'.$sex.'" height="10" width="10" border="0">
</td>';
...
...
```

das hier:

```
$fertigkeiten = $s['Sekundäre Fertigkeiten'];
echo '<td>';
// fertigkeiten
if (count($fertigkeiten)>0) {
$fertigkeitenname = array_keys($fertigkeiten);
for($x=0;$x<count($fertigkeiten);$x++) {

?>

<table cellspacing="0" border="0" width="100%" cellpadding="0">
<tr>
<td width="30%">
<b><? echo $fertigkeitenname[$x]; ?>:</b>
</td>
<td width="70%">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td background="../images/gilde/balken.gif" width="<?=$fertigkeiten[$fertigkeitenname[$x]]['value'] ?>">
<? echo "&nbsp;(".$fertigkeiten[$fertigkeitenname[$x]]['value']."/".$fertigkeiten[$fertigkeitenname[$x]]['max'].")&nbsp;"; ?>
</td>
</tr>
</table>
</td>
</tr>
</table>

<?  }
}
else { echo '<div style="font-size: 11px">Nebenberufslos</div>'; }
echo '</td>
</td>
</tr>';
```
ersetzen, hiermit:

```
echo '</tr>';
```


----------



## Cor (28. Mai 2005)

erstmal danke für die hilfe lokedemus.
also das mit den sek fertigkeiten klappt!
bei dem geschlecht sagt er mir dann mmer parse error: unexpected '>' on line 217.

desweiteren, jetzt wo ich in der liste mehr platz habe, ist es auch möglich den pvp rang auszulesen und mit in der liste aufführen zu lassen?

EDIT: die sortier funktion scheint mir ebenfalls nicht zu funktionieren. hab das im code soweit erfweitert das ich diese url hab http://www.team-kob.de/vwar/page.php?id=11...d28a7b89448d26d

es werden damit jedoch nur nach alphabet die namen aufsteigend oder absteigend sortiert.

außerdem würde ich gerne beim aufruf die ränge absteigend sortieren, is das möglich?


----------



## Lokedemus (28. Mai 2005)

OK, du musst hinter 
	
	



```
<td>'.$c['class'].'</td>
```
 noch folgendes einfügen:

```
';
```
Die Zeile müsste 216 oder ein bisschen kleiner sein.

Edit: In der angefügten Datei ist der Fehler behoben, und der PvP-Rang wird zwischen Rang und Berufen angezeigt.

Nochn Edit: Die Sortierfunktion funktioniert. Standardmässig wird nun nach Gildenrang sortiert. Du solltest mal die Links für deine Pfele in Ordnung bringen

Edit: Link entfernt.


----------



## Cor (29. Mai 2005)

super arbeit loke, hast mir sehr geholfen. die pfeile funzen bei mir aber immer noch nicht. hier der link von z.B. namen absteigend sortieren

http://www.team-kob.de/vwar/page.php?wahl=...90ab9280eda7cf3

bekomm dann ein content page error, also der content hack von vwar kennt die adresse nicht. wie kann ich das korrigieren?

benutze jetzt derzeit den code welchen du beigefügt hast.


----------



## Lokedemus (29. Mai 2005)

Du scheinst bei der Verlinkung/dem Einbau in vwar einen Fehler gemacht zu haben. Wo der liegt kann ich dir nicht sagen, da ich von vwar keine ahnung hab.

Ich hab die Datei nochmal überarbeitet, so dass die Links auf die Pfeile bei dir funktionieren sollten.


----------



## Cor (30. Mai 2005)

jetzt sind die pfeile sichtbar, das schonmal geil, aber um die verlinkung ging es mir nicht. ich meine den hyperlink. vwar kann die url irgendwie nicht interpretieren.

http://www.team-kob.de/vwar/page.php?wahl=class&sort=asc

kann vwar irgendwie nichts mit anfangen. oder liegt das am php script?

EDIT: is ja schomal fabulös das die pvp ränge angezeigt werden können, aber kann man die auch in textform ausgeben lassen? d.h. für die zahlen 1-10 steht dann jeweils der richtige rang. in unserem fall ja nur horde ränge.


----------



## Lokedemus (30. Mai 2005)

Allem Anschein nach brauchst du immer eine id um die Seite aufzurufen.
Da diese ID scheinbar immer 11 sein muss, schlage ich vor, dass du in der 2ten Zeile folgendes einfügst:

```
output_rewrite_url_var("id",11);
```

Da ich die Rangnamen nicht kenne und diese auch nicht im Array übergeben werden, ist es mir momentan nicht möglich, dies anders zu realisieren.


----------



## Cor (30. Mai 2005)

was genau meinst du mit 2. zeile?
ich hab jetzt einfach mal die vor z.B. 
	
	



```
?wahl=name&sort=asc" title="Aufsteigend sortieren...">
```
 ein 
	
	



```
?id=11
```
 eingefügt, und es funktioniert auch.
die id's werden von dem content hack benutzt, damit kann ich halt intern von dem php content system beliebig viel content hinzufügen, und trotzdem den rahmen drum herum  


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 behalten, nur so als erklärung am rand 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.


----------



## Lokedemus (30. Mai 2005)

Ich meinte in der 2ten Zeile des Skripts, also direkt hinter "<?".
Alternativ kannst du natürlich auch bei jedem Link die id per Hand einfügen.


----------



## Elogrim (30. Mai 2005)

Für die Anzeige der Rangnamen kannst du folgendes benutzen:

nach der Zeile:

```
if($i %2 == 0) { $bgc = '#xxxxxx'; } else { $bgc = '#xxxxxx'; }
```

folgendes hinzufügen:

```
if($c['pvprank'] == '0') { $pvprank = 'kein Rang'; }
if($c['pvprank'] == '1') { $pvprank = 'Späher'; }
if($c['pvprank'] == '2') { $pvprank = 'Grunzer'; }
if($c['pvprank'] == '3') { $pvprank = 'Waffenträger'; }
if($c['pvprank'] == '4') { $pvprank = 'Schlachtrufer'; }
if($c['pvprank'] == '5') { $pvprank = 'Rottenmeister'; }
if($c['pvprank'] == '6') { $pvprank = 'Steingardist'; }
if($c['pvprank'] == '7') { $pvprank = 'Blutgardist'; }
if($c['pvprank'] == '8') { $pvprank = 'Zornbringer'; }
if($c['pvprank'] == '9') { $pvprank = 'Klinge der Horde'; }
if($c['pvprank'] == '10') { $pvprank = 'Feldherr'; }
if($c['pvprank'] == '11') { $pvprank = 'Sturmreiter'; }
if($c['pvprank'] == '12') { $pvprank = 'General'; }
if($c['pvprank'] == '13') { $pvprank = 'Kriegsfürst'; }
if($c['pvprank'] == '14') { $pvprank = 'Oberster Kriegsfürst'; }
```

und statt (ich nehme einmal an, dass du es im moment so - oder ähnlich hast):

```
<td>'.$c['pvprank'].'</td>
```

folgendes:

```
<td>'.$pvprank.'</td>
```

Ich hoffe, dass ich das jetzt alles komplett hereinkopiert / verändert habe, so dass es zu deinem Code passt.
Wahrscheinlich geht dies alles noch viel eleganter, jedoch beschäftige ich mich mit php selbst erst seit kurzem (eben für diese Mitgliederseite).
An dieser Stelle geht mein Dank an Yiria, der den Großteil des Codes freundlicherweise bereitgestellt hat.

Ich habe für die Seite meiner Gilde das Ganze noch ein wenig erweitert und die Ränge mittels den Rangabzeichen dargestellt (siehe »Bruderschaft der Taverne« ).


----------



## Cor (31. Mai 2005)

@lokedemus : das mit der 2. zeile funzt nicht. bekomme da 

```
Fatal error: Call to undefined function: output_rewrite_url_var() in /home/www/htdocs/team-kob.de/vwar/page.php(107) : eval()'d code on line 2
```

@Elogrim : Das klappt, dickes thx soweit! werde da auch mal sone Bilderchen einbauen denke ich... sehr sehr nice 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        



und auch an Lokedemus muss ich nen riesiges Merci loswerden.


----------



## Elogrim (31. Mai 2005)

Wird sich diese ID voraussichtlich im Laufe der Zeit ändern ? Wenn nein, reicht es eh aus, wenn du die per Hand zu jedem Link dazuschreibst:

```
?id=11&wahl=xxxx&sort=asc" title="Aufsteigend sortieren...">
?id=11&wahl=xxxx&sort=desc" title="Absteigend sortieren...">
```

ID 11 bzw. 12 ... habe gesehen, dass du 2 Listen benutzt.


----------



## Cor (31. Mai 2005)

ich hatte gehofft ich könnte das auch mit nur einem code eintrag korrigieren. da ich 2 listen benutze, und zunächst die eine fertig stellen will, muss ich später dann nicht soviel abgleichen =)


----------



## Lokedemus (31. Mai 2005)

Fehler meinerseits:

Die Funktion muss natürlich output_add_rewrite_var und nicht output_url_rewrite_var heissen.

Das kommt davon, wenn man was aus dem gedächtnis schreibt 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.


----------



## Elogrim (31. Mai 2005)

Falls der Vorschlag von Lokedemus nicht klappt, ist mir auch noch etwas eingefallen:
Ganz oben im Code, irgendwo im ersten <? ... ?> folgendes hinein:

```
$id = 11;
```

Und dann für die Links folgendes:

```
?id='.$id.'&wahl=xxxx&sort=asc" title="Aufsteigend sortieren...">
?id='.$id.'&wahl=xxxx&sort=desc" title="Absteigend sortieren...">
```

Dann müsstest du nur noch, wenn sich die ID ändert, ganz oben die Zahl 11 in 12 oder sonst irgendetwas ändern.


----------



## Cor (1. Juni 2005)

doch der hat geklappt, aber danke an euch beide! ich glaub nun bin ich erstmal wunschlos glücklich!


----------



## Poximus (2. Juni 2005)

Cor schrieb:
			
		

> doch der hat geklappt, aber danke an euch beide! ich glaub nun bin ich erstmal wunschlos glücklich!
> [post="90839"][/post]​



Hallo,

Es wäre cool von dir wenn du jetzt mal den ganzen quelltext posten könntest um mal zu sehen wie das funktioniert. möchte nämlich auch so ein skript auf meiner seite einbinden.

mfg
Poximus


----------



## Gruenwurm (21. Juni 2005)

Ja, das wär nice  


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.


----------



## Poximus (24. Juni 2005)

Yiria schrieb:
			
		

> ```
> <?
> $server = 'Blackhand';
> $gilde ='Kinder%20der%20Tr%E4ume';
> ...



Hallo Leute 
ich habe ein Problem und zwar:
Ich wollte jetzt mal das skript von Yiria nehmen und mal Probieren das auf meinen Server und Gilde umzuschreiben. Das Problem ist eigentlich nur der Anfang von dem skript.

Das Problem ist ich spiele auf dem Server Aman'Thul wobei das zeichen zwischen Aman und Thul Probleme macht 
also dieses '

Also das obige umgeschrieben würde dann bei mir so aussehen oder?:

```
$server = 'Aman'Thul';
$gilde ='Vis%20Luna';
$url = 'http://black-legion.info/guild_php.php?server='.$server.'&guild='.$gilde;
...
...
...
```
Das müsste so eigentlich richtig sein oder?

Das Problem ist gleich in der ersten Zeile.
Die Eingabe würde laut dem Zeichen leider schon nach Aman aufhören da bereits das zeichen ' ist. So würde die Abfrage leider nie funktionieren 

Gibt es irgendeine Möglichkeit das anders zu machen für den Server Aman'Thul?
Gibt es statt dem ' irgendeinen HTML Code oder so? Wie zum beispiel für das Leerzeichen auch %20 als Platzhalter dient.

Bin schon verzweifelt weil mir keiner Helfen mag  


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 

Bitte nochmals um Hilfestellung.
Wäre Sehr Dankbar dafür.

mfg
Poximus 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.


----------



## Gruenwurm (24. Juni 2005)

Das gleiche Problem hätte ich auch bei "Kel'Thuzad"


----------



## Gruenwurm (25. Juni 2005)

Hab die Lösung !!

Einfach das ' durch ein %27 ersetzen.

Das sieht dann quasi so aus:

'Kel%27Thuzad'

Funktioniert wunderbar 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.


----------



## Poximus (26. Juni 2005)

Gruenwurm schrieb:
			
		

> Hab die Lösung !!
> 
> Einfach das ' durch ein %27 ersetzen.
> 
> ...






			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 
Super danke für den Tipp!
das werde ich morgen gleich mal ausprobieren.

Aber das hört sich eigentlich ganz gut an*g*

mfg
Poxi


----------



## Xmasman (4. November 2005)

bei mir lief das php mit der abfrage eurer seite immer problemlos nur seid unbestimmter Zeit habe ich das problem:


Warning: gzuncompress(): data error in /home/www/web1/html/b8clan/ladder.php on line 15

Warning: gzuncompress(): data error in /home/www/web1/html/b8clan/ladder.php on line 16

Hier die Zeilen 15&16
$guild = unserialize(gzuncompress($file));
$guild2 = unserialize(gzuncompress($file2));

hoffe mir kann einer helfen


----------



## B3N (4. November 2005)

Hast du die URL angepasst? Wir haben die Schnittstellen umgstellt und auf IDs gelegt und nicht mehr auf Server- / Gildennamen. Den aktuellen Link zur Schnittstelle findest du auf www.blasc.de => Herold => Servername => Eure Gilde.

Wenn dein Angaben im Forum hier Stimmen und euer Server Zuluhed ist und die Gilde Cerberus heißt, dann ist das dein neuer Link:

http://www.blasc.de/guild.php?g=94


----------



## DaScAn (6. November 2005)

Sorry.Aber bei mir kommt diese Meldung.



> Warning: main(inc_head_table.html): failed to open stream: No such file or directory in /usr/export/www/vhosts/funnetwork/hosting/nightelb/PHPPlus/GildeInfo.htm on line 4
> 
> Warning: main(): Failed opening 'inc_head_table.html' for inclusion (include_path='.:') in /usr/export/www/vhosts/funnetwork/hosting/nightelb/PHPPlus/GildeInfo.htm on line 4
> 
> ...



Alternativ ein Link dazu wo die Testseite ist 

»Testseite über das auslesen der Gildendaten« 

was habe ich falsch gemacht?


----------



## Anticheat (6. November 2005)

3. warning steht das problem: URL file-access is disabled

liegt wohl an bestimmten servereinstellungen die verhindern, dass externe dateien eingebunden werden


----------



## DaScAn (6. November 2005)

Mhhm. Und was kann man dagegen unternehmen?

Hat da jemand ne lösung?


----------



## Crowley (6. November 2005)

Dein Provider verhindert wohl, dass du mit PHP Dateien von anderen Servern laden kannst. Da kann man selber leider nicht viel machen. Da musst du deinen Provider fragen, ob er das freischaltet, oder den Provider wechseln.


----------



## DaScAn (11. November 2005)

Habe ich das ansonsten richtig gemacht?

Habe mal drei Dateien Hochgeladen. Den Source Code eingefügt und als Htm bzw XML dokument gespeichert. Habe es mit MS Frontpage gemacht. Oder fehlt da noch was oder muss i ein bestimmtes Format / Programm wählen?


----------



## DaScAn (18. November 2005)

Und habt ihr jetzt eine Lösung?


----------



## Crowley (19. November 2005)

DaScAn schrieb:
			
		

> Und habt ihr jetzt eine Lösung?
> [post="104112"][/post]​


Eine Lösung wofür? Wenn dein Provider nicht erlaubt Dateien von fremden Servern zu lesen kann man da leider nichts machen.


----------



## Huntress (21. November 2005)

Hallo,

ich habe ein ähnliches Problem wie Xmasman, die PHP-Schnittstelle hat lange zeit wunderbar funktioniert, tut es aber nicht mehr, nun habe ich versucht die URL umzustellen wie folgt:


```
<?
$url = 'http://www.blasc.de/guild.php?g=146';
$file = file_get_contents($url);
if(!$file) die("Fehler beim &Ouml;ffnen von $url");
$guild = unserialize(gzuncompress($file));
print_r($guild);
?>
```

(Server = Antonidas ; Gilde = FAT ORDER OF XENON)

allerdings bekomme ich nur 



> Array ( [error] => Parameter fehlt )



dabei raus.

hab ich da noch irgendwas vergessen?


----------



## B3N (21. November 2005)

Hallo Huntress,

an deinem Script das auch vorher funktionierte, hat sich nichts geändert  außer die URL der PHP-Schnittstelle. Du musstest also nur die URL austauchen und das wars, mehr haben wir nicht umgestellt. Im Prinzip dürfte es also keine Probleme geben.


----------



## Frost (27. Januar 2006)

Bei mir läuft alles super, wie man »hier« sehen kann!

Stellt sich mir nur die Frage wie ich die einzelenen Member mit deren profil auf der Blasc Seite verlinken kann.
Bei den jetzigen links wird ja noch auf die alte Herold site gelinkt.

Hab ich hier im Forum was überlesen oder bin ich zu doof?

MfG.Frost


----------



## Crowley (27. Januar 2006)

Frost schrieb:
			
		

> Bei mir läuft alles super, wie man »hier« sehen kann!
> 
> Stellt sich mir nur die Frage wie ich die einzelenen Member mit deren profil auf der Blasc Seite verlinken kann.
> Bei den jetzigen links wird ja noch auf die alte Herold site gelinkt.
> ...


Hmm, ich weiß leider nicht wie dein Skript aussieht, aber die Links kommen nicht von uns, sondern werden vom Skript erstellt. Suche in dem Script am besten mal die Stelle raus an der die Links ausgegeben werden und ersetze sie durch:

```
printf('<a href="http://blasc.de?c=%d">%s</a>', $char['id'], $char['name']);
```

Vorausgesetzt, $char ist die Schleifen-Variable mit der du die Charakterliste durchläufst. Ein zusätzlicher Link für dir Ausrüstung ist nicht mehr nötig.


----------



## Frost (27. Januar 2006)

hier ist mein übernommender code: 


```
<?
$server = 'Mannoroth';
$gilde ='tooHot';
$url = 'http://www.blasc.de/guild.php?g=2727';

$file = file_get_contents($url);
if(!$file) die("Fehler beim &Ouml;ffnen von $url");

$guild = unserialize(gzuncompress($file));

$wahl = $_GET['wahl'] ? $_GET['wahl'] : 'guild_rank';
$sort = $_GET['sort'] ? $_GET['sort'] : 'asc';

$charlvl = 0;
foreach($guild['character'] as $char) {
$charlvl = ($charlvl + $char['level']);
}
$avlvl = (int) ($charlvl/$guild['numchars']);
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>
<head>
<title> 
<?=$guild['guild_name'] ?>
- Memberlist</title>
<style type="text/css" media="screen">
<!--
body {
	margin: 0px;
	color: rgb(255, 255, 255);
	font: 12px Geneva, Arial, Helvetica, sans-serif;
	line-height: 16px;
	background-color: #0D0B0B;
}

td {
color: rgb(255, 255, 255);
font: 12px Geneva, Arial, Helvetica, sans-serif;
line-height: 16px;
}

h1 {
color: rgb(218, 182, 86);
}

a {
color: #ffffff;
font: 12px/16px Geneva, Arial, Helvetica, sans-serif;
text-decoration: none;
}

a:hover {
color: #ffffff;
}

a.bold:hover {
color: #ffffff;
}
.Stil1 {color: #ffffff}
-->
</style>
</head>
<body leftmargin="0" rightmargin="0" topmargin="0" bottommargin="0">
<a name="top"></a>
<div align="center" style="padding: 10px">
<table width="85%" height="126" border="0" cellpadding="2" cellspacing="2">
<tr>
<td colspan="8">

<table width="100%" border="0" cellpadding="2" cellspacing="2">
          <tr> 
            <td align="center"><img src="http://www.2on2.org/2hot/_gfx/toohotchars.gif"></td>
          </tr>
        </table>

<table border="0" cellpadding="2" cellspacing="2">
<tr valign="top">
<td>
<b>Server:</b> <?=$guild['server'] ?> &bull;
<b>Fraktion:</b> <?=$guild['faction'] ?> &bull;
<b>registrierte Charaktere:</b> <?=$guild['numchars'] ?> &bull;
<b>Level-Durchschnitt:</b> <?=$avlvl ?>
</td>
</tr>
</table>
</td>
</tr>
<tr valign="top" style="font-size: 14px">
<td height="23">
<?
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'name' && $_GET['sort'] == 'asc') {
$pic = 'ups';
} else {  $pic = 'up'; }
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'name' && $_GET['sort'] == 'desc') {
$apic = 'downs';
}
else {  $apic = 'down'; }
?>
<b>Name:</b><br />
<a href="<?=$PHP_SELF ?>?wahl=name&sort=asc" title="Aufsteigend sortieren..."><img src="http://www.2on2.org/2hot/_gfx/up.gif" alt="up" height="11" width="11" border="0" /></a>
<a href="<?=$PHP_SELF ?>?wahl=name&sort=desc" title="Absteigend sortieren..."><img src="http://www.2on2.org/2hot/_gfx/down.gif" alt="down" height="11" width="11" border="0" /></a>
</td>
<td align="center">
<?
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'level' && $_GET['sort'] == 'asc') {
$pic = 'ups';
}
else {  $pic = 'up'; }
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'level' && $_GET['sort'] == 'desc') {
$apic = 'downs';
}
else {  $apic = 'down'; }
?>
<b>Level:</b><br />
<a href="<?=$PHP_SELF ?>?wahl=level&sort=asc" title="Aufsteigend sortieren..."><img src="http://www.2on2.org/2hot/_gfx/up.gif" alt="up" height="11" width="11" border="0" /></a>
<a href="<?=$PHP_SELF ?>?wahl=level&sort=desc" title="Absteigend sortieren..."><img src="http://www.2on2.org/2hot/_gfx/down.gif" alt="down" height="11" width="11" border="0" /></a>
</td>
<td>
<?
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'race' && $_GET['sort'] == 'asc') {
$pic = 'ups';
}
else {  $pic = 'up'; }
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'race' && $_GET['sort'] == 'desc') {
$apic = 'downs';
}
else {  $apic = 'down'; }
?>
<b>Rasse:</b><br />
<a href="<?=$PHP_SELF ?>?wahl=race&sort=asc" title="Aufsteigend sortieren..."><img src="http://www.2on2.org/2hot/_gfx/up.gif" alt="up" height="11" width="11" border="0" /></a>
<a href="<?=$PHP_SELF ?>?wahl=race&sort=desc" title="Absteigend sortieren..."><img src="http://www.2on2.org/2hot/_gfx/down.gif" alt="down" height="11" width="11" border="0" /></a>
</td>
<td>
<?
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'class' && $_GET['sort'] == 'asc') {
$pic = 'ups';
}
else {  $pic = 'up'; }
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'class' && $_GET['sort'] == 'desc') {
$apic = 'downs';
}
else {  $apic = 'down'; }
?>
<b>Klasse:</b><br />
<a href="<?=$PHP_SELF ?>?wahl=class&sort=asc" title="Aufsteigend sortieren..."><img src="http://www.2on2.org/2hot/_gfx/up.gif" alt="up" height="11" width="11" border="0" /></a>
<a href="<?=$PHP_SELF ?>?wahl=class&sort=desc" title="Absteigend sortieren..."><img src="http://www.2on2.org/2hot/_gfx/down.gif" alt="down" height="11" width="11" border="0" /></a>
</td>

<td>
<?
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'guild_rank' && $_GET['sort'] == 'asc') {
$pic = 'ups';
}
elseif(!isset($_GET['wahl']) && !isset($_GET['sort'])) {
$pic = 'ups';
}
else {  $pic = 'up'; }
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'guild_rank' && $_GET['sort'] == 'desc') {
$apic = 'downs';
}
else {  $apic = 'down'; }
?>
<b>Rang:</b><br />
<a href="<?=$PHP_SELF ?>?wahl=guild_rank&sort=asc" title="Aufsteigend sortieren..."><img src="http://www.2on2.org/2hot/_gfx/up.gif" alt="up" height="11" width="11" border="0" /></a>
<a href="<?=$PHP_SELF ?>?wahl=guild_rank&sort=desc" title="Absteigend sortieren..."><img src="http://www.2on2.org/2hot/_gfx/down.gif" alt="down" height="11" width="11" border="0" /></a>
</td>
<td height="23">
<?
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'pvprank' && $_GET['sort'] == 'asc') {
$pic = 'ups';
} else {  $pic = 'up'; }
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'pvprank' && $_GET['sort'] == 'desc') {
$apic = 'downs';
}
else {  $apic = 'down'; }
?>
<b>PvP-Rang:</b><br />
<a href="<?=$PHP_SELF ?>?wahl=pvprank&sort=asc" title="Aufsteigend sortieren..."><img src="http://www.2on2.org/2hot/_gfx/up.gif" alt="up" height="11" width="11" border="0" /></a>
<a href="<?=$PHP_SELF ?>?wahl=pvprank&sort=desc" title="Absteigend sortieren..."><img src="http://www.2on2.org/2hot/_gfx/down.gif" alt="down" height="11" width="11" border="0" /></a>
</td>
<td><b>Berufe:</b></td>
</tr>

<?
function sortierung($a, $b) {
global $wahl, $sort;
if ($a[$wahl] == $b[$wahl]) return 0;
if($sort == 'desc') {
return ($a[$wahl] < $b[$wahl]) ? 1 : -1;
}
elseif($sort == 'asc') {
return ($a[$wahl] < $b[$wahl]) ? -1 : 1;
}
else {
return ($a[$wahl] < $b[$wahl]) ? -1 : 1;
}
}

usort($guild['character'], 'sortierung');

foreach($guild['character'] as $c) {
if($i %2 == 0) { $bgc = '#1D1D1D'; } else { $bgc = '#302F2F'; }


echo '<tr valign="top" bgcolor="'.$bgc.'">
<td>
<a class="bold" href="http://black-legion.planet-multiplayer.de/index.php?id=3&sub=1&showchar='.$c['name'].'&showguild=&server='.$server.'&search=suchen" target="_blank" title="Profil von '.$c['name'].'...">'.$c['name'].'</a><br>
<a style="font-size: 10px" href="http://black-legion.planet-multiplayer.de/index.php?id=3&sub=1&showprofile=true&name='.$c['name'].'&server='.$server.'" target="_blank" title="Ausr&uuml;stung von '.$c['name'].'...">&raquo;&nbsp;Ausr&uuml;stung</a>
</td>
<td align="center">'.$c['level'].'</td>
<td>'.$c['race'].'</td>
<td>'.$c['class'].'</td>';


echo '<td>'.$c['guild_title'].'</td>';
echo '<td>'.$c['pvprank'].'</td>';
$s = $c['skills'];

$berufe = $s['Berufe'];
echo "<td>";
// berufe
if (count($berufe)>0) {
$berufname = array_keys($berufe);
for($x=0;$x<count($berufe);$x++) {
?>

<table cellspacing="0" border="0" width="100%" cellpadding="0">
<tr>
<td width="30%">
<b><? echo $berufname[$x]; ?>:</b>
</td>
<td width="70%">
<table cellpadding="0" cellspacing="1" border="0">
<tr>
<td background="http://www.2on2.org/2hot/_gfx/balken.gif" width="<?=$berufe[$berufname[$x]]['value'] ?>">
<? echo "&nbsp;(".$berufe[$berufname[$x]]['value']."/".$berufe[$berufname[$x]]['max'].")&nbsp;"; ?>
</td>
</tr>
</table>
</td>
</tr>
</table>

<?
}
}
else { echo '<div style="font-size: 11px">Berufslos</div>'; }
echo '</td>';


echo '</tr>';

$i++;
}
?>

<tr align="right">
      <td colspan="8"> powered by <a href="http://www.blasc.de" target="_blank">BLASC</a> 
        :: &copy; copyright<? echo date( ' Y '); ?><a href="http://black-legion.planet-multiplayer.de/index.php?id=3&sub=1&showguild=<?=$guild['guild_name'] ?>&server=<?=$server ?>" target="_blank">
        <?=$guild['guild_name'] ?>
        </a> :: </td>
</tr>
</table>
<br>
</div>
</body>
</html>
```

mit dem was du geschrieben hast kann ich leider nicht soviel anfangen sorry
aber danke für die schnelle antwort.


----------



## Hawky (30. Januar 2006)

Frost schrieb:
			
		

> foreach($guild['character'] as $c) {
> if($i %2 == 0) { $bgc = '#1D1D1D'; } else { $bgc = '#302F2F'; }
> 
> 
> ...



da liegt dein Problem jedoch Lösung hab ich noch keine 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.


----------



## Crowley (30. Januar 2006)

Die Stelle

```
<td>
<a class="bold" href="http://black-legion.planet-multiplayer.de/index.php?id=3&sub=1&showchar='.$c['name'].'&showguild=&server='.$server.'&search=suchen" target="_blank" title="Profil von '.$c['name'].'...">'.$c['name'].'</a><br>
<a style="font-size: 10px" href="http://black-legion.planet-multiplayer.de/index.php?id=3&sub=1&showprofile=true&name='.$c['name'].'&server='.$server.'" target="_blank" title="Ausr&uuml;stung von '.$c['name'].'...">&raquo;&nbsp;Ausr&uuml;stung</a>
</td>
```
musst du in

```
<td>
<a class="bold" href="http://blasc.de?c='.$c['id'].'" target="_blank" title="Profil von '.$c['name'].'...">'.$c['name'].'</a><br>
</td>
```
ändern


----------



## Frost (30. Januar 2006)

THX für den Code Crowley hat super geklapt!!!

vlt noch eine frage kann man sich auch die sekundär fähigkeiten anzeigen lassen?

MfG.Frost


----------



## Menelom (20. Februar 2006)

so, erstmal gz für die tolle PHP Schnittstelle 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        



Allerdings habe ich eine Frage:
Ich wollte das für unser gesamtes Gildenforum einbauen, wo auch Member von anderen Gilden unterwegs sind (teilweise auch andere Server).

Ist es mir irgendwie möglich die Gilden-ID per Script herauszufinden, da ihr ja seit der URL Umstellung nur noch IDs nehmt.

Btw: empfehle ich den Usern die Daten von BLASC zu cachen. Lässt a) eure Seite schneller sein, hält b) auch die Daten bereit, wenn BLASC mal down sein sollte und c) entlastet es die BLASC server ungemein 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.


----------



## Nauglamir (3. März 2006)

Mal ne Frage: 

Gibts hier irgendwo ein "Rundumsorglospaket" für eine Gildenübersicht in php die optisch entsprechend vorbereitet ist und bei der man nur die Gilden ID ändert und die ein unbedarfter Webadmin in seine Seite einbauen kann...?

So in etwa wie hier wo auch die Berufe und der Rang aufgelistet ist.
http://www.blasc.de/?g=349
Als Folder mit Grafiken und drum und dran... Copyright des Erstellers inkl. 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        



Wäre doch ne feine Sache. Leider hab ich keine Zeit php zu lernen um das selber umzusetzen (beruf, familie, schwiegereltern!) bin ja froh überhaupt spielen zu können und die Gildenpage up to date zu halten. (meist auch vom büro aus 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

)

Ich würde mich freuen wenn da jemand helfen könnte.
Wenn nicht dann werd ich halt weiterschustern wie bisher...

Danke


----------



## TORN (7. März 2006)

Ungefähr sowas?

http://tornography.com/data/mojo/mojo2.php


Ist noch im Aufbau. Aber so wie es ist, könnte ich schon n package zusammenstellen.
Leider muss ich sagen, dass die IDs zu Blasc.de nicht mehr vorhanden sind.

Ich hatte Probleme das mehrdimensionale Array anständig zu sortieren.
Also hab ich die IDs gelöscht, damit die Namen vorne stehen und danach sortiert.
Es geht also demnach NUR in alphabetischer Reihenfolge bei dem Script.

Auch das trennen der Berufe und Sekundären Fähigkeiten ist etwas schwer.
Das Array ist in sich doch etwas zu verschachtelt.


----------



## Fundixi (23. März 2006)

Funktioniert soweit gut ... nur dachte ich das die einzelnen Members (wenn man einen angeklickt hat) ohne die komplette Seite von www.blasc.de angezeigt wird.

Könnte man auch das Design wie hier anzeigen lassen ? (mit PVP Abzeichen und eine Auswertung der Berufe von der Gilde)


----------



## Shem (26. März 2006)

Guten Tag,

sorry aber ich kenne mich nicht mit php aus und durchblick die ganzen codes die gepostet wreden vorne und hinten nicht. Gibts da vielleicht irgendwen der ne fertig php datei hat zum einbinden ?


----------



## Frost (1. April 2006)

Probierst du den: 

```
<?
$server = 'Mannoroth';  //Servernamen eingeben
$gilde ='tooHot';  //Gildennamen eingeben
$url = 'http://www.blasc.de/guild.php?g=????';  //URL zur Schnittstelle eingeben

$file = file_get_contents($url);
if(!$file) die("Fehler beim &Ouml;ffnen von $url");

$guild = unserialize(gzuncompress($file));

$wahl = $_GET['wahl'] ? $_GET['wahl'] : 'guild_rank';
$sort = $_GET['sort'] ? $_GET['sort'] : 'asc';

$charlvl = 0;
foreach($guild['character'] as $char) {
$charlvl = ($charlvl + $char['level']);
}
$avlvl = (int) ($charlvl/$guild['numchars']);
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>
<head>
<title> 
<?=$guild['guild_name'] ?>
- Memberlist</title>
<style type="text/css" media="screen">
<!--
body {
	margin: 0px;
	color: rgb(255, 255, 255);
	font: 12px Geneva, Arial, Helvetica, sans-serif;
	line-height: 16px;
	background-color: #0D0B0B;
}

td {
color: rgb(255, 255, 255);
font: 12px Geneva, Arial, Helvetica, sans-serif;
line-height: 16px;
}

h1 {
color: rgb(218, 182, 86);
}

a {
color: #ffffff;
font: 12px/16px Geneva, Arial, Helvetica, sans-serif;
text-decoration: none;
}

a:hover {
color: #ffffff;
}

a.bold:hover {
color: #ffffff;
}
.Stil1 {color: #ffffff}
-->
</style>
</head>
<body leftmargin="0" rightmargin="0" topmargin="0" bottommargin="0">
<a name="top"></a>
<div align="center" style="padding: 10px">
<table width="85%" height="126" border="0" cellpadding="2" cellspacing="2">
<tr>
<td colspan="8">



<table border="0" cellpadding="2" cellspacing="2">
<tr valign="top">
<td>
<b>Server:</b> <?=$guild['server'] ?> &bull;
<b>Fraktion:</b> <?=$guild['faction'] ?> &bull;
<b>registrierte Charaktere:</b> <?=$guild['numchars'] ?> &bull;
<b>Level-Durchschnitt:</b> <?=$avlvl ?>
</td>
</tr>
</table>
</td>
</tr>
<tr valign="top" style="font-size: 14px">
<td height="23">
<?
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'name' && $_GET['sort'] == 'asc') {
$pic = 'ups';
} else {  $pic = 'up'; }
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'name' && $_GET['sort'] == 'desc') {
$apic = 'downs';
}
else {  $apic = 'down'; }
?>
<b>Name:</b><br />
<a href="<?=$PHP_SELF ?>?wahl=name&sort=asc" title="Aufsteigend sortieren..."><img src="http://85.10.199.87/_gfx/up.gif" alt="up" height="11" width="11" border="0" /></a>
<a href="<?=$PHP_SELF ?>?wahl=name&sort=desc" title="Absteigend sortieren..."><img src="http://85.10.199.87/_gfx/down.gif" alt="down" height="11" width="11" border="0" /></a>
</td>
<td align="center">
<?
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'level' && $_GET['sort'] == 'asc') {
$pic = 'ups';
}
else {  $pic = 'up'; }
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'level' && $_GET['sort'] == 'desc') {
$apic = 'downs';
}
else {  $apic = 'down'; }
?>
<b>Level:</b><br />
<a href="<?=$PHP_SELF ?>?wahl=level&sort=asc" title="Aufsteigend sortieren..."><img src="http://85.10.199.87/_gfx/up.gif" alt="up" height="11" width="11" border="0" /></a>
<a href="<?=$PHP_SELF ?>?wahl=level&sort=desc" title="Absteigend sortieren..."><img src="http://85.10.199.87/_gfx/down.gif" alt="down" height="11" width="11" border="0" /></a>
</td>
<td>
<?
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'race' && $_GET['sort'] == 'asc') {
$pic = 'ups';
}
else {  $pic = 'up'; }
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'race' && $_GET['sort'] == 'desc') {
$apic = 'downs';
}
else {  $apic = 'down'; }
?>
<b>Rasse:</b><br />
<a href="<?=$PHP_SELF ?>?wahl=race&sort=asc" title="Aufsteigend sortieren..."><img src="http://85.10.199.87/_gfx/up.gif" alt="up" height="11" width="11" border="0" /></a>
<a href="<?=$PHP_SELF ?>?wahl=race&sort=desc" title="Absteigend sortieren..."><img src="http://85.10.199.87/_gfx/down.gif" alt="down" height="11" width="11" border="0" /></a>
</td>
<td>
<?
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'class' && $_GET['sort'] == 'asc') {
$pic = 'ups';
}
else {  $pic = 'up'; }
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'class' && $_GET['sort'] == 'desc') {
$apic = 'downs';
}
else {  $apic = 'down'; }
?>
<b>Klasse:</b><br />
<a href="<?=$PHP_SELF ?>?wahl=class&sort=asc" title="Aufsteigend sortieren..."><img src="http://85.10.199.87/_gfx/up.gif" alt="up" height="11" width="11" border="0" /></a>
<a href="<?=$PHP_SELF ?>?wahl=class&sort=desc" title="Absteigend sortieren..."><img src="http://85.10.199.87/_gfx/down.gif" alt="down" height="11" width="11" border="0" /></a>
</td>

<td>
<?
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'guild_rank' && $_GET['sort'] == 'asc') {
$pic = 'ups';
}
elseif(!isset($_GET['wahl']) && !isset($_GET['sort'])) {
$pic = 'ups';
}
else {  $pic = 'up'; }
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'guild_rank' && $_GET['sort'] == 'desc') {
$apic = 'downs';
}
else {  $apic = 'down'; }
?>
<b>Rang:</b><br />
<a href="<?=$PHP_SELF ?>?wahl=guild_rank&sort=asc" title="Aufsteigend sortieren..."><img src="http://85.10.199.87/_gfx/up.gif" alt="up" height="11" width="11" border="0" /></a>
<a href="<?=$PHP_SELF ?>?wahl=guild_rank&sort=desc" title="Absteigend sortieren..."><img src="http://85.10.199.87/_gfx/down.gif" alt="down" height="11" width="11" border="0" /></a>
</td>
<td height="23">
<?
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'pvprank' && $_GET['sort'] == 'asc') {
$pic = 'ups';
} else {  $pic = 'up'; }
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'pvprank' && $_GET['sort'] == 'desc') {
$apic = 'downs';
}
else {  $apic = 'down'; }
?>
<b>PvP-Rang:</b><br />
<a href="<?=$PHP_SELF ?>?wahl=pvprank&sort=asc" title="Aufsteigend sortieren..."><img src="http://85.10.199.87/_gfx/up.gif" alt="up" height="11" width="11" border="0" /></a>
<a href="<?=$PHP_SELF ?>?wahl=pvprank&sort=desc" title="Absteigend sortieren..."><img src="http://85.10.199.87/_gfx/down.gif" alt="down" height="11" width="11" border="0" /></a>
</td>
<td><b>Berufe:</b></td>
</tr>

<?
function sortierung($a, $b) {
global $wahl, $sort;
if ($a[$wahl] == $b[$wahl]) return 0;
if($sort == 'desc') {
return ($a[$wahl] < $b[$wahl]) ? 1 : -1;
}
elseif($sort == 'asc') {
return ($a[$wahl] < $b[$wahl]) ? -1 : 1;
}
else {
return ($a[$wahl] < $b[$wahl]) ? -1 : 1;
}
}

usort($guild['character'], 'sortierung');

foreach($guild['character'] as $c) {
if($i %2 == 0) { $bgc = '#1D1D1D'; } else { $bgc = '#302F2F'; }


echo '<tr valign="top" bgcolor="'.$bgc.'">
<td>
<a class="bold" href="http://blasc.de?c='.$c['id'].'" target="_blank" title="Profil von '.$c['name'].'...">'.$c['name'].'</a><br>
</td>
<td align="center">'.$c['level'].'</td>
<td>'.$c['race'].'</td>
<td>'.$c['class'].'</td>';


echo '<td>'.$c['guild_title'].'</td>';
echo '<td>'.$c['pvprank'].'</td>';
$s = $c['skills'];

$berufe = $s['Berufe'];
echo "<td>";
// berufe
if (count($berufe)>0) {
$berufname = array_keys($berufe);
for($x=0;$x<count($berufe);$x++) {
?>

<table cellspacing="0" border="0" width="100%" cellpadding="0">
<tr>
<td width="30%">
<b><? echo $berufname[$x]; ?>:</b>
</td>
<td width="70%">
<table cellpadding="0" cellspacing="1" border="0">
<tr>
<td background="http://85.10.199.87/_gfx/balken.gif" width="<?=$berufe[$berufname[$x]]['value'] ?>">
<? echo "&nbsp;(".$berufe[$berufname[$x]]['value']."/".$berufe[$berufname[$x]]['max'].")&nbsp;"; ?>
</td>
</tr>
</table>
</td>
</tr>
</table>

<?
}
}
else { echo '<div style="font-size: 11px">Berufslos</div>'; }
echo '</td>';


echo '</tr>';

$i++;
}
?>

<tr align="right">
      <td colspan="8"> powered by <a href="http://www.blasc.de" target="_blank">BLASC</a> 
        :: &copy; copyright<? echo date( ' Y '); ?><a href="http://black-legion.planet-multiplayer.de/index.php?id=3&sub=1&showguild=<?=$guild['guild_name'] ?>&server=<?=$server ?>" target="_blank">
        <?=$guild['guild_name'] ?>
        </a> :: </td>
</tr>
</table>
<br>
</div>
</body>
</html>
```

wennste das nicht hinbekommst hier ist meine icq 315478919


----------



## Shem (1. April 2006)

Hey super vielen vielen dank es klappt
Gilde


----------



## Frost (2. April 2006)

Das ist ja super allerdings würde mich das sehr glücklich schätzen wenn du die grafiken von deinem webspace linken würdest und nicht von meinem!

MfG.Andreas


----------



## Shem (4. April 2006)

soweit ich sehe sind das nur die Pfeile, werde das umgehende korrigieren

Mfg Shem


----------



## gogerry (9. April 2006)

Hallo,
ich hab jetzt alles nach anleitung gemacht aber es kommt nix gescheites dabei raus. Dabei kann ich auch noch sagen das mein webspace php unterstützt und auch das womit man per php include sachen von anderen servern anzeigen kann.

Nunja ich hab jetzt einmal eine datei in htm gemacht das sieht dann so aus »http://www.wow-legion-des-feuers.de.vu/wowmember.htm« 

Dann hab ich das mal so gemacht das ich eine php gemacht habe
»http://www.wow-legion-des-feuers.de.vu/wowmember.php« 

Und dann hab ich die beiden jeweils mal per include versucht einzubinden in »http://www.wow-legion-des-feuers.de.vu/Member(neu).htm« 

Ich bin ratlos.
Warum macht Blasc nich für die Registrierten User ne seite wo die Gildeninfos alle drauf sind, so wie es bei Blasc schon ist nur alles ohne Menü? so kann man es per iframe einbinden.

Nunja hat jemand einen schlauen rat?

achja der php code.


```
<?
$server = 'Malygos';  //Servernamen eingeben
$gilde ='Legion%20des%20Feuers';  //Gildennamen eingeben
$url = 'http://www.blasc.de/?g=13176';  //URL zur Schnittstelle eingeben

$file = file_get_contents($url);
if(!$file) die("Fehler beim &Ouml;ffnen von $url");

$guild = unserialize(gzuncompress($file));

$wahl = $_GET['wahl'] ? $_GET['wahl'] : 'guild_rank';
$sort = $_GET['sort'] ? $_GET['sort'] : 'asc';

$charlvl = 0;
foreach($guild['character'] as $char) {
$charlvl = ($charlvl + $char['level']);
}
$avlvl = (int) ($charlvl/$guild['numchars']);
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>
<head>
<title> 
<?=$guild['guild_name'] ?>
- Memberlist</title>
<style type="text/css" media="screen">
<!--
body {
margin: 0px;
color: rgb(255, 255, 255);
font: 12px Geneva, Arial, Helvetica, sans-serif;
line-height: 16px;
background-color: #0D0B0B;
}

td {
color: rgb(255, 255, 255);
font: 12px Geneva, Arial, Helvetica, sans-serif;
line-height: 16px;
}

h1 {
color: rgb(218, 182, 86);
}

a {
color: #ffffff;
font: 12px/16px Geneva, Arial, Helvetica, sans-serif;
text-decoration: none;
}

a:hover {
color: #ffffff;
}

a.bold:hover {
color: #ffffff;
}
.Stil1 {color: #ffffff}
-->
</style>
</head>
<body leftmargin="0" rightmargin="0" topmargin="0" bottommargin="0">
<a name="top"></a>
<div align="center" style="padding: 10px">
<table width="85%" height="126" border="0" cellpadding="2" cellspacing="2">
<tr>
<td colspan="8">



<table border="0" cellpadding="2" cellspacing="2">
<tr valign="top">
<td>
<b>Server:</b> <?=$guild['server'] ?> &bull;
<b>Fraktion:</b> <?=$guild['faction'] ?> &bull;
<b>registrierte Charaktere:</b> <?=$guild['numchars'] ?> &bull;
<b>Level-Durchschnitt:</b> <?=$avlvl ?>
</td>
</tr>
</table>
</td>
</tr>
<tr valign="top" style="font-size: 14px">
<td height="23">
<?
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'name' && $_GET['sort'] == 'asc') {
$pic = 'ups';
} else {  $pic = 'up'; }
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'name' && $_GET['sort'] == 'desc') {
$apic = 'downs';
}
else {  $apic = 'down'; }
?>
<b>Name:</b><br />
<a href="<?=$PHP_SELF ?>?wahl=name&sort=asc" title="Aufsteigend sortieren..."><img src="http://85.10.199.87/_gfx/up.gif" alt="up" height="11" width="11" border="0" /></a>
<a href="<?=$PHP_SELF ?>?wahl=name&sort=desc" title="Absteigend sortieren..."><img src="http://85.10.199.87/_gfx/down.gif" alt="down" height="11" width="11" border="0" /></a>
</td>
<td align="center">
<?
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'level' && $_GET['sort'] == 'asc') {
$pic = 'ups';
}
else {  $pic = 'up'; }
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'level' && $_GET['sort'] == 'desc') {
$apic = 'downs';
}
else {  $apic = 'down'; }
?>
<b>Level:</b><br />
<a href="<?=$PHP_SELF ?>?wahl=level&sort=asc" title="Aufsteigend sortieren..."><img src="http://85.10.199.87/_gfx/up.gif" alt="up" height="11" width="11" border="0" /></a>
<a href="<?=$PHP_SELF ?>?wahl=level&sort=desc" title="Absteigend sortieren..."><img src="http://85.10.199.87/_gfx/down.gif" alt="down" height="11" width="11" border="0" /></a>
</td>
<td>
<?
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'race' && $_GET['sort'] == 'asc') {
$pic = 'ups';
}
else {  $pic = 'up'; }
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'race' && $_GET['sort'] == 'desc') {
$apic = 'downs';
}
else {  $apic = 'down'; }
?>
<b>Rasse:</b><br />
<a href="<?=$PHP_SELF ?>?wahl=race&sort=asc" title="Aufsteigend sortieren..."><img src="http://85.10.199.87/_gfx/up.gif" alt="up" height="11" width="11" border="0" /></a>
<a href="<?=$PHP_SELF ?>?wahl=race&sort=desc" title="Absteigend sortieren..."><img src="http://85.10.199.87/_gfx/down.gif" alt="down" height="11" width="11" border="0" /></a>
</td>
<td>
<?
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'class' && $_GET['sort'] == 'asc') {
$pic = 'ups';
}
else {  $pic = 'up'; }
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'class' && $_GET['sort'] == 'desc') {
$apic = 'downs';
}
else {  $apic = 'down'; }
?>
<b>Klasse:</b><br />
<a href="<?=$PHP_SELF ?>?wahl=class&sort=asc" title="Aufsteigend sortieren..."><img src="http://85.10.199.87/_gfx/up.gif" alt="up" height="11" width="11" border="0" /></a>
<a href="<?=$PHP_SELF ?>?wahl=class&sort=desc" title="Absteigend sortieren..."><img src="http://85.10.199.87/_gfx/down.gif" alt="down" height="11" width="11" border="0" /></a>
</td>

<td>
<?
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'guild_rank' && $_GET['sort'] == 'asc') {
$pic = 'ups';
}
elseif(!isset($_GET['wahl']) && !isset($_GET['sort'])) {
$pic = 'ups';
}
else {  $pic = 'up'; }
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'guild_rank' && $_GET['sort'] == 'desc') {
$apic = 'downs';
}
else {  $apic = 'down'; }
?>
<b>Rang:</b><br />
<a href="<?=$PHP_SELF ?>?wahl=guild_rank&sort=asc" title="Aufsteigend sortieren..."><img src="http://85.10.199.87/_gfx/up.gif" alt="up" height="11" width="11" border="0" /></a>
<a href="<?=$PHP_SELF ?>?wahl=guild_rank&sort=desc" title="Absteigend sortieren..."><img src="http://85.10.199.87/_gfx/down.gif" alt="down" height="11" width="11" border="0" /></a>
</td>
<td height="23">
<?
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'pvprank' && $_GET['sort'] == 'asc') {
$pic = 'ups';
} else {  $pic = 'up'; }
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'pvprank' && $_GET['sort'] == 'desc') {
$apic = 'downs';
}
else {  $apic = 'down'; }
?>
<b>PvP-Rang:</b><br />
<a href="<?=$PHP_SELF ?>?wahl=pvprank&sort=asc" title="Aufsteigend sortieren..."><img src="http://85.10.199.87/_gfx/up.gif" alt="up" height="11" width="11" border="0" /></a>
<a href="<?=$PHP_SELF ?>?wahl=pvprank&sort=desc" title="Absteigend sortieren..."><img src="http://85.10.199.87/_gfx/down.gif" alt="down" height="11" width="11" border="0" /></a>
</td>
<td><b>Berufe:</b></td>
</tr>

<?
function sortierung($a, $b) {
global $wahl, $sort;
if ($a[$wahl] == $b[$wahl]) return 0;
if($sort == 'desc') {
return ($a[$wahl] < $b[$wahl]) ? 1 : -1;
}
elseif($sort == 'asc') {
return ($a[$wahl] < $b[$wahl]) ? -1 : 1;
}
else {
return ($a[$wahl] < $b[$wahl]) ? -1 : 1;
}
}

usort($guild['character'], 'sortierung');

foreach($guild['character'] as $c) {
if($i %2 == 0) { $bgc = '#1D1D1D'; } else { $bgc = '#302F2F'; }


echo '<tr valign="top" bgcolor="'.$bgc.'">
<td>
<a class="bold" href="http://blasc.de?c='.$c['id'].'" target="_blank" title="Profil von '.$c['name'].'...">'.$c['name'].'</a><br>
</td>
<td align="center">'.$c['level'].'</td>
<td>'.$c['race'].'</td>
<td>'.$c['class'].'</td>';


echo '<td>'.$c['guild_title'].'</td>';
echo '<td>'.$c['pvprank'].'</td>';
$s = $c['skills'];

$berufe = $s['Berufe'];
echo "<td>";
// berufe
if (count($berufe)>0) {
$berufname = array_keys($berufe);
for($x=0;$x<count($berufe);$x++) {
?>

<table cellspacing="0" border="0" width="100%" cellpadding="0">
<tr>
<td width="30%">
<b><? echo $berufname[$x]; ?>:</b>
</td>
<td width="70%">
<table cellpadding="0" cellspacing="1" border="0">
<tr>
<td background="http://85.10.199.87/_gfx/balken.gif" width="<?=$berufe[$berufname[$x]]['value'] ?>">
<? echo "&nbsp;(".$berufe[$berufname[$x]]['value']."/".$berufe[$berufname[$x]]['max'].")&nbsp;"; ?>
</td>
</tr>
</table>
</td>
</tr>
</table>

<?
}
}
else { echo '<div style="font-size: 11px">Berufslos</div>'; }
echo '</td>';


echo '</tr>';

$i++;
}
?>

<tr align="right">
     <td colspan="8"> powered by <a href="http://www.blasc.de" target="_blank">BLASC</a> 
       :: &copy; copyright<? echo date( ' Y '); ?><a href="http://black-legion.planet-multiplayer.de/index.php?id=3&sub=1&showguild=<?=$guild['guild_name'] ?>&server=<?=$server ?>" target="_blank">
       <?=$guild['guild_name'] ?>
       </a> :: </td>
</tr>
</table>
<br>
</div>
</body>
</html>
```


----------



## Shem (9. April 2006)

Lass mal die %20 beim Gildennamen weg und machn normales leerzeichen


----------



## gogerry (10. April 2006)

Shem schrieb:
			
		

> Lass mal die %20 beim Gildennamen weg und machn normales leerzeichen
> [post="111023"][/post]​



Ja so hatte ich es anfangs, aber so hats leider auch nicht funktioniert.


----------



## Mattulix (12. April 2006)

Die Export Funktion für eine ganze Gilde ist natürlich was schönes, aber es setzt voraus dass alle Members ihre Daten regelmässig neu uploaden.

Daher lass ich das aktuelle in-game Gildenroster von einem kleinen Addon auslesen und exportieren, sowie dann in eine html-tabelle umwandeln; damit ist Aktualität garantiert, selbst wenn einige Mitglieder es "verpennen" ihre Daten bei BLASC hochzuladen.


----------



## Palazius (14. April 2006)

@Frost!!!

Dickes fettes Danke!
Ich habe mir hier schon einen Wolf gesucht nach richtigen Codes blabla und deiner funktioniert mit abstand zu den anderen Codes einfach mal perfekt.

Nochmals Danke!


----------



## Nauglamir (20. April 2006)

Hallo zusammen,

da jetzt ja auch das Bankfach angezeigt werden kann hab ich folgendes vor:

Wir verfügen über einen reinen Gilden-Bankchar mit Items, Rezepten, Gold, usw.
Bisher wurden diese Items immer eigens ins Forum gepostet und langwierig aktualisiert.

Nun möchte ich nur das Gold und die BankItems auslesen und über ne .php anzeigen lassen damit ich diese in meine HP integrieren kann. So kann jedes Mitglied checken welche Items er vom Bankchar eventuell erhalten oder anfordern kann. Dabei ist die Liste durch Blasc natürlich immer up to date...

Welche Parameter muss ich auslesen bzw. gibt es schon eine Art "Codeschnipsel" dafür?

Progge kein .php bin kenne mich aber mit HTML sehr gut aus. Wer könnte mir diesbezüglich Hilfestellung geben? 

Vielen Dank im Voraus und nette Grüße...
Nauglamir

www.valrim.tk


PS: Keiner da der mir hier etwas Unterstützung geben könnte ?


----------



## Soldat (29. April 2006)

Hallo,

Kann mir bitte nochmal einer verklickern, wie ich vorgehen muss,  damit ich die Mitglieder auch auf meiner Seite habe ?

hier ist der Link: http://www.blasc.de/?g=16797

Währe nett, danke...


======================================

Hallo,

Ich habe es jetzt so weit hin bekommen, ich habe aber jetzt ein anderes Problem.
Wen ich Sortieren möchte, geht das nicht ich komme immer wieder auf die Start seite von meiner HP.

http://www.angels-of-demons.de/index.php?page=member

was kann ich das machen ??? oder was ist falsch ???


----------



## Mynastrus (29. April 2006)

@ Nauglamir

 wenn mal mal in bissle im forum suchst dan wird man auch fündig .... ich habe diesbezüglich auch schon einen tread angefangen ... naja was dabei rauskommt kann man ja dan wohl hier nachlesen ....

http://rpg24.planet-multiplayer.de/board/i...?showtopic=9562

forrausgesetzt die kommen mal ausem knick ^^


----------



## Pueschel (3. Mai 2006)

Soldat schrieb:
			
		

> Hallo,
> 
> Kann mir bitte nochmal einer verklickern, wie ich vorgehen muss,  damit ich die Mitglieder auch auf meiner Seite habe ?
> 
> ...



ganz einfach....

Du mußt zu Deinen Links folgenden Parameter hinzufügen: &page=member


----------



## Pueschel (4. Mai 2006)

Sooo, habe mal eine einfache und spartanische Ausführung geschrieben.

»Mein Test« 



Und hier ist der Quellcode dazu:


```
<html><head></head><body>
<?php
$url = 'http://www.blasc.de/guild.php?g=300';
$file = file_get_contents($url);
if(!$file) die("Fehler beim Öffnen von $url");
$guild = unserialize(gzuncompress($file));
for ($i=0;$i<count($guild["character"]);$i++) //Wiedeholung für alle Char in dem Array
  {
  echo "Name: ".$guild["character"][$i]["name"]."<br>";
  echo "lvl: ".$guild["character"][$i]["level"]."<br>";
  echo "PVP-Rang: ".$guild["character"][$i]["pvprank"]."<br>";
  echo "Rasse: ".$guild["character"][$i]["race"]."<br>";
  echo "Klasse: ".$guild["character"][$i]["class"]."<br>";
  echo "Geschlecht: ".$guild["character"][$i]["sex"]."<br>";
  echo "Gilden-Rang: ".$guild["character"][$i]["guild_title"]."<br>";
  echo "update: ".$guild["character"][$i]["lastupdate"]."<br>";
  if (count($guild["character"][$i]["skills"]["Berufe"])>=1)
    {
    $berufe=array_keys($guild["character"][$i]["skills"]["Berufe"]);
    for ($j=0;$j<count($berufe);$j++)
      {
      $t=$berufe[$j];
      echo ($j+1).". Beruf: ".$t;
      echo " ".$guild["character"][$i]["skills"]["Berufe"][$t]["value"]." von ".$guild["character"][$i]["skills"]["Berufe"][$t]["max"];
      echo "<br>";
      }
    }
  if (count($guild["character"][$i]["skills"]["Sekundäre Fertigkeiten"])>=1)
    {
    $sec=array_keys($guild["character"][$i]["skills"]["Sekundäre Fertigkeiten"]);
    for ($j=0;$j<count($sec);$j++)
      {
      $t=$sec[$j];
      echo ($j+1).". Sekundäre Fähigkeit: ".$t;
      echo " ".$guild["character"][$i]["skills"]["Sekundäre Fertigkeiten"][$t]["value"]." von ".$guild["character"][$i]["skills"]["Sekundäre Fertigkeiten"][$t]["max"];
      echo "<br>";
      }
    }
  echo "<br><br>"; //Ende Char.
  }
?>
</body>
</html>
```


----------



## Shem (12. Mai 2006)

Hallo, ich habe dank euch auch ein Script das funktioniert.
Da ich das jetzt direkt in die HP einbinden will ( klappt soweit ) würde ich gerne das Feld Berufe eliminieren doch alles probieren führte nur zu fehlern. Scheiter daran die 2 Felder zu killen. 

Hoffe ihr helft mir auch dieses mal


```
<?
$server = 'Die Silberne Hand';  //Servernamen eingeben
$gilde ='Konzil der Elemente';  //Gildennamen eingeben
$url = 'http://www.blasc.de/guild.php?g=12443';  //URL zur Schnittstelle eingeben

$file = file_get_contents($url);
if(!$file) die("Fehler beim &Ouml;ffnen von $url");

$guild = unserialize(gzuncompress($file));

$wahl = $_GET['wahl'] ? $_GET['wahl'] : 'guild_rank';
$sort = $_GET['sort'] ? $_GET['sort'] : 'asc';

$charlvl = 0;
foreach($guild['character'] as $char) {
$charlvl = ($charlvl + $char['level']);
}
$avlvl = (int) ($charlvl/$guild['numchars']);
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>
<head>
<title>
<?=$guild['guild_name'] ?>
- Memberlist</title>
<style type="text/css" media="screen">
<!--
body {
margin: 0px;
color: rgb(255, 255, 255);
font: 12px Geneva, Arial, Helvetica, sans-serif;
line-height: 16px;
background-color: #0D0B0B;
}

td {
color: rgb(255, 255, 255);
font: 12px Geneva, Arial, Helvetica, sans-serif;
line-height: 16px;
}

h1 {
color: rgb(218, 182, 86);
}

a {
color: #ffffff;
font: 12px/16px Geneva, Arial, Helvetica, sans-serif;
text-decoration: none;
}

a:hover {
color: #ffffff;
}

a.bold:hover {
color: #ffffff;
}
.Stil1 {color: #ffffff}
-->
</style>
</head>
<body leftmargin="0" rightmargin="0" topmargin="0" bottommargin="0">
<a name="top"></a>
<div align="center" style="padding: 10px">
<table width="85%" height="126" border="0" cellpadding="2" cellspacing="2">
<tr>
<td colspan="8">



<table border="0" cellpadding="2" cellspacing="2">
<tr valign="top">
<td>
<b>Server:</b> <?=$guild['server'] ?> &bull;
<b>Fraktion:</b> <?=$guild['faction'] ?> &bull;
<b>registrierte Charaktere:</b> <?=$guild['numchars'] ?> &bull;
<b>Level-Durchschnitt:</b> <?=$avlvl ?>
</td>
</tr>
</table>
</td>
</tr>
<tr valign="top" style="font-size: 14px">
<td height="23">
<?
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'name' && $_GET['sort'] == 'asc') {
$pic = 'ups';
} else {  $pic = 'up'; }
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'name' && $_GET['sort'] == 'desc') {
$apic = 'downs';
}
else {  $apic = 'down'; }
?>
<b>Name:</b><br />
<a href="<?=$PHP_SELF ?>?wahl=name&sort=asc" title="Aufsteigend sortieren..."><img src="up.gif" alt="up" height="11" width="11" border="0" /></a>
<a href="<?=$PHP_SELF ?>?wahl=name&sort=desc" title="Absteigend sortieren..."><img src="down.gif" alt="down" height="11" width="11" border="0" /></a>
</td>
<td align="center">
<?
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'level' && $_GET['sort'] == 'asc') {
$pic = 'ups';
}
else {  $pic = 'up'; }
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'level' && $_GET['sort'] == 'desc') {
$apic = 'downs';
}
else {  $apic = 'down'; }
?>
<b>Level:</b><br />
<a href="<?=$PHP_SELF ?>?wahl=level&sort=asc" title="Aufsteigend sortieren..."><img src="up.gif" alt="up" height="11" width="11" border="0" /></a>
<a href="<?=$PHP_SELF ?>?wahl=level&sort=desc" title="Absteigend sortieren..."><img src="down.gif" alt="down" height="11" width="11" border="0" /></a>
</td>
<td>
<?
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'race' && $_GET['sort'] == 'asc') {
$pic = 'ups';
}
else {  $pic = 'up'; }
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'race' && $_GET['sort'] == 'desc') {
$apic = 'downs';
}
else {  $apic = 'down'; }
?>
<b>Rasse:</b><br />
<a href="<?=$PHP_SELF ?>?wahl=race&sort=asc" title="Aufsteigend sortieren..."><img src="up.gif" alt="up" height="11" width="11" border="0" /></a>
<a href="<?=$PHP_SELF ?>?wahl=race&sort=desc" title="Absteigend sortieren..."><img src="down.gif" alt="down" height="11" width="11" border="0" /></a>
</td>
<td>
<?
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'class' && $_GET['sort'] == 'asc') {
$pic = 'ups';
}
else {  $pic = 'up'; }
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'class' && $_GET['sort'] == 'desc') {
$apic = 'downs';
}
else {  $apic = 'down'; }
?>
<b>Klasse:</b><br />
<a href="<?=$PHP_SELF ?>?wahl=class&sort=asc" title="Aufsteigend sortieren..."><img src="up.gif" alt="up" height="11" width="11" border="0" /></a>
<a href="<?=$PHP_SELF ?>?wahl=class&sort=desc" title="Absteigend sortieren..."><img src="down.gif" alt="down" height="11" width="11" border="0" /></a>
</td>

<td>
<?
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'guild_rank' && $_GET['sort'] == 'asc') {
$pic = 'ups';
}
elseif(!isset($_GET['wahl']) && !isset($_GET['sort'])) {
$pic = 'ups';
}
else {  $pic = 'up'; }
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'guild_rank' && $_GET['sort'] == 'desc') {
$apic = 'downs';
}
else {  $apic = 'down'; }
?>
<b>Rang:</b><br />
<a href="<?=$PHP_SELF ?>?wahl=guild_rank&sort=asc" title="Aufsteigend sortieren..."><img src="up.gif" alt="up" height="11" width="11" border="0" /></a>
<a href="<?=$PHP_SELF ?>?wahl=guild_rank&sort=desc" title="Absteigend sortieren..."><img src="down.gif" alt="down" height="11" width="11" border="0" /></a>
</td>
<td height="23">
<?
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'pvprank' && $_GET['sort'] == 'asc') {
$pic = 'ups';
} else {  $pic = 'up'; }
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'pvprank' && $_GET['sort'] == 'desc') {
$apic = 'downs';
}
else {  $apic = 'down'; }
?>
<b>PvP-Rang:</b><br />
<a href="<?=$PHP_SELF ?>?wahl=pvprank&sort=asc" title="Aufsteigend sortieren..."><img src="up.gif" alt="up" height="11" width="11" border="0" /></a>
<a href="<?=$PHP_SELF ?>?wahl=pvprank&sort=desc" title="Absteigend sortieren..."><img src="down.gif" alt="down" height="11" width="11" border="0" /></a>
</td>
<td><b>Berufe:</b></td>
</tr>

<?
function sortierung($a, $b) {
global $wahl, $sort;
if ($a[$wahl] == $b[$wahl]) return 0;
if($sort == 'desc') {
return ($a[$wahl] < $b[$wahl]) ? 1 : -1;
}
elseif($sort == 'asc') {
return ($a[$wahl] < $b[$wahl]) ? -1 : 1;
}
else {
return ($a[$wahl] < $b[$wahl]) ? -1 : 1;
}
}

usort($guild['character'], 'sortierung');

foreach($guild['character'] as $c) {
if($i %2 == 0) { $bgc = '#1D1D1D'; } else { $bgc = '#302F2F'; }


echo '<tr valign="top" bgcolor="'.$bgc.'">
<td>
<a class="bold" href="http://blasc.de?c='.$c['id'].'" target="_blank" title="Profil von '.$c['name'].'...">'.$c['name'].'</a><br>
</td>
<td align="center">'.$c['level'].'</td>
<td>'.$c['race'].'</td>
<td>'.$c['class'].'</td>';


echo '<td>'.$c['guild_title'].'</td>';
echo '<td>'.$c['pvprank'].'</td>';
$s = $c['skills'];

$berufe = $s['Berufe'];
echo "<td>";
// berufe
if (count($berufe)>0) {
$berufname = array_keys($berufe);
for($x=0;$x<count($berufe);$x++) {
?>

<table cellspacing="0" border="0" width="100%" cellpadding="0">
<tr>
<td width="30%">
<b><? echo $berufname[$x]; ?>:</b>
</td>
<td width="70%">
<table cellpadding="0" cellspacing="1" border="0">
<tr>
<td width="<?=$berufe[$berufname[$x]]['value'] ?>">
<? echo "&nbsp;(".$berufe[$berufname[$x]]['value']."/".$berufe[$berufname[$x]]['max'].")&nbsp;"; ?>
</td>
</tr>
</table>
</td>
</tr>
</table>

<?
}
}
else { echo '<div style="font-size: 11px">Berufslos</div>'; }
echo '</td>';


echo '</tr>';

$i++;
}
?>

<tr align="right">
	 <td colspan="8"> powered by <a href="http://www.blasc.de" target="_blank">BLASC</a>
	   :: &copy; copyright<? echo date( ' Y '); ?><a href="http://black-legion.planet-multiplayer.de/index.php?id=3&sub=1&showguild=<?=$guild['guild_name'] ?>&server=<?=$server ?>" target="_blank">
	   <?=$guild['guild_name'] ?>
	   </a> :: </td>
</tr>
</table>
<br>
</div>
</body>
</html>
```


----------



## Bogentod (13. Mai 2006)

Hallo, bin zwar kein Profi aber ich habe es hinbekommen, die Berufsfelder zu entfernen 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 


```
<?
$server = 'Baelgun';
$gilde ='SavageTroop';
$url = 'http://www.blasc.de/guild.php?g=1662';

$file = file_get_contents($url);
if(!$file) die("Fehler beim Öffnen von $url");

$guild = unserialize(gzuncompress($file));

$wahl = $_GET['wahl'] ? $_GET['wahl'] : 'level';
$sort = $_GET['sort'] ? $_GET['sort'] : 'desc';
$charlvl = 0;
foreach($guild['character'] as $char) {
$charlvl = ($charlvl + $char['level']);
}
$avlvl = (int) ($charlvl/$guild['numchars']);
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>
<head>
<title><?=$guild['guild_name'] ?> - Gildenübersicht</title>
<style type="text/css" media="screen">
<!--
body {
margin: 0px;
color: rgb(255, 255, 255);
font: 12px "Trebuchet MS", Geneva, Arial, Helvetica, SunSans-Regular, sans-serif;
line-height: 16px;
background-color: rgb(0, 0, 0);
}

td {
color: rgb(255, 255, 255);
font: 12px "Trebuchet MS", Geneva, Arial, Helvetica, SunSans-Regular, sans-serif;
line-height: 16px;
}

h1 {
color: rgb(218, 182, 86);
}

a {
color: rgb(218, 182, 86);
font: 12px "Trebuchet MS", Geneva, Arial, Helvetica, SunSans-Regular, sans-serif;
line-height: 16px;
text-decoration: none;
}

a:hover {
color: rgb(245, 213, 129);
}

a.bold {
color: rgb(218, 182, 86);
font: 12px "Trebuchet MS", Geneva, Arial, Helvetica, SunSans-Regular, sans-serif;
line-height: 16px;
font-weight: bold;
text-decoration: none;
}

a.bold:hover {
color: rgb(245, 213, 129);
}
-->
</style>
</head>
<body leftmargin="0" rightmargin="0" topmargin="0" bottommargin="0">
<a name="top"></a>
<div align="center" style="padding: 10px">
<table border="0" width="95%" cellpadding="2" cellspacing="2">
<tr>
<td colspan="8">
<div style="border-bottom: 2px solid rgb(218, 182, 86)">
<table border="0" cellpadding="2" cellspacing="2">
<tr>
<td>
</td>
<td><h1><i><?=$guild['guild_name'] ?> - Gildenübersicht</i></h1></td>
</tr>
</table>
</div>
<table border="0" cellpadding="2" cellspacing="2">
<tr valign="top">
<td>
<b>Server:</b> <?=$guild['server'] ?> &#8226;
<b>Fraktion:</b> <?=$guild['faction'] ?> &#8226;
<b>registrierte Charaktere:</b> <?=$guild['numchars'] ?> &#8226;
<b>Level-Durchschnitt:</b> <?=$avlvl ?>
</td>
</tr>
</table>
</td>
</tr>
<tr valign="top" style="font-size: 14px">
<td>
<?
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'namel' && $_GET['sort'] == 'level') {
$pic = 'up_akt';
}
elseif(!isset($_GET['wahl']) && !isset($_GET['sort'])) {
$pic = 'up_akt';
}
else {  $pic = 'up'; }
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'name' && $_GET['sort'] == 'desc') {
$apic = 'down_akt';
}
else {  $apic = 'down'; }
?>
<b>Name:</b>

</td>
<td align="center">
<?
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'level' && $_GET['sort'] == 'asc') {
$pic = 'up_akt';
}
else {  $pic = 'up'; }
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'level' && $_GET['sort'] == 'desc') {
$apic = 'down_akt';
}
else {  $apic = 'down'; }
?>
<b>Level:</b>

</td>
<td>
<?
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'race' && $_GET['sort'] == 'asc') {
$pic = 'up_akt';
}
else {  $pic = 'up'; }
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'race' && $_GET['sort'] == 'desc') {
$apic = 'down_akt';
}
else {  $apic = 'down'; }
?>
<b>Rasse:</b>

</td>
<td>
<?
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'class' && $_GET['sort'] == 'asc') {
$pic = 'up_akt';
}
else {  $pic = 'up'; }
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'class' && $_GET['sort'] == 'desc') {
$apic = 'down_akt';
}
else {  $apic = 'down'; }
?>
<b>Klasse:</b>

</td>
<td align="center">
<?
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'sex' && $_GET['sort'] == 'asc') {
$pic = 'up_akt';
}
else {  $pic = 'up'; }
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'sex' && $_GET['sort'] == 'desc') {
$apic = 'down_akt';
}
else {  $apic = 'down'; }
?>
<b>Geschlecht:</b>

</td>
<td>
<?
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'guild_title' && $_GET['sort'] == 'asc') {
$pic = 'up_akt';
}
else {  $pic = 'up'; }
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'guild_title' && $_GET['sort'] == 'desc') {
$apic = 'down_akt';
}
else {  $apic = 'down'; }
?>
<b>Rang:</b>

<?
function sortierung($a, $b) {
global $wahl, $sort;
if ($a[$wahl] == $b[$wahl]) {
 return 0;
}
if($sort == 'desc') {
 return ($a[$wahl] < $b[$wahl]) ? 1 : -1;
 }
elseif($sort == 'asc') {
 return ($a[$wahl] < $b[$wahl]) ? -1 : 1;
 }
else {
 return ($a[$wahl] < $b[$wahl]) ? -1 : 1;
 }
}

usort($guild['character'], 'sortierung');

foreach($guild['character'] as $c) {
if($i %2 == 0) { $bgc = '#442109'; } else { $bgc = '#592c0c'; }
if($c['sex'] == 'm') { $sex = 'männlich'; } else { $sex = 'weiblich'; }

echo '<tr valign="top" bgcolor="'.$bgc.'">
<td>
<a class="bold" href="http://www.blasc.de/index.php?c='.$c['id'].'&showguild=&server='.$server.'&search=suchen" target="_blank" title="Profil von '.$c['name'].'...">'.$c['name'].'</a><br>

</td>
<td align="center">'.$c['level'].'</td>
<td>'.$c['race'].'</td>
<td>'.$c['class'].'</td>
<td align="center">
'.$sex.'
</td>';

echo '<td>'.$c['guild_title'].'</td>';



echo "<td>";

?>

<table cellspacing="0" border="0" width="100%" cellpadding="0">
<tr>
<td width="30%">

</td>
<td width="70%">
<table cellpadding="0" cellspacing="1" border="0">
<tr>

</td>
</tr>
</table>
</td>
</tr>
</table>

<?
 }


?>

<table cellspacing="0" border="0" width="100%" cellpadding="0">
<tr>
<td width="50%">

</td>
<td width="50%">
<table cellpadding="0" cellspacing="0" border="0">
<tr>


</td>
</tr>
</table>
</td>
</tr>
</table>

<tr>
<td colspan="8">
<div align="right" style="border-top: 1px solid rgb(218, 182, 86)">
powered by <a href="http://www.blasc.de" target="_blank">BLASC</a> ::
© copyright<? echo date( ' Y '); ?><a href="http://www.blasc.de/index.php?id=3&#8834;=1&showguild=<?=$guild['guild_name'] ?>&server=<?=$server ?>" target="_blank"><?=$guild['guild_name'] ?></a> ::
<a class="bold" href="#top" title="zum Seitenanfang...">^</a>
</div>
</td>
</tr>
</table>
<br>
</div>
</body>
</html>
```


----------



## Shem (14. Mai 2006)

ich danke dir vielmals  


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 

nach anpassungen an meine Seite sieht es jetzt so aus

Konzil der Elemente

Bochmal vielen vielen Dank


----------



## ragnaroek (1. Juni 2006)

ich hab mich jetzt auch mal an dem php export versucht und das ist dabei rausgekommen.
ich hab ne variable lösung gebaut die für jede gilde verfügbar ist mann muss nur die richtige blasc gilden id haben
http://christian-rademaker.de/guildviewer/...php?guild=20023
und diese anstatt der 20023 (die für meine gilde steht) ein setzen, also 

http://christian-rademaker.de/guildviewer/final.php?guild=[eure gilden id].

(ist nur firefox getested; warscheinlich funzt es im inet-explorer nicht)


----------



## Fundixi (1. Juni 2006)

Funktioniert fast super für den IE!

nur einige Icons werden nicht angezeigt ... (Kürschnerei.png das "ü" "ä" z.B.)

Und wie sieht es aus ... läßt die an deinem Script teilhaben ? Gerade das mit den Icon find ich super ... aber ich hätte nach dem Gildenrang sortiert .... so steht immer der Gildenboss und seine Offiziere oben.

Wenn du noch den PVP Rang (mit Icons) integrieren könntest  dann wäre es perfekt  ^^


----------



## ragnaroek (1. Juni 2006)

sind die ränge den im export array drin?
dachte die wären nicht integriert.
wie sicht den das aktuelle exportarray aus?


----------



## WhiteWolf25524 (12. Juni 2006)

Danke.....

Der lezte Code funzt :-D

Kann man nun noch die Chars in einem Java Fenster öffnen lassen ? Mit den Eqidmend und code ??

(bissel anspruchsvoll  


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 )


Muss nun nur noch die Farben ändern und dann passt das auch bei mir 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        




MFG


----------



## Fundixi (17. Juni 2006)

Hallo zusammen,
also ich verwende die normale Gilden Anzeige. Ich find es schon mal gut überhapt eine zu haben aber diese sieht natürlich sehr dürftig aus.

Bild Link: > hier <




			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        



Wenn man die Anzeige so hinbekommen würde, dann wäre die Anzeige perfekt. Auch die Anzeige von @ragnaroek finde ich sehr gut aber leider bietet er nur einen aditierbaren Link an, was mir natürlich nicht zusagt. Wäre schön wenn er sich einen Ruck geben könnte und das Script hier posten könnte.

Bin über jede Hilfe sehr dankbar !


----------



## Shem (17. Juni 2006)

Nachdem mir einige meine Leute gesagt hatten das in dem script keine sortierung ist fiel mir das auch erst auf, aber nachdem ich das ganze Script zerstört hatte ging gar nix ( hatte an ner kopie gefummelt *glück* ), ich wollte das die leute nachdem Gilden Rang sortiert werden weiß einer ne Lösung ?



```
$server = 'Die Silberne Hand';  //Servernamen eingeben
$gilde ='Konzil der Elemente';  //Gildennamen eingeben
$url = 'http://www.blasc.de/guild.php?g=12443';  //URL zur Schnittstelle eingeben

$file = file_get_contents($url);
if(!$file) die("Fehler beim Öffnen von $url");

$guild = unserialize(gzuncompress($file));

$wahl = $_GET['wahl'] ? $_GET['wahl'] : 'level';
$sort = $_GET['sort'] ? $_GET['sort'] : 'desc';
$charlvl = 0;
foreach($guild['character'] as $char) {
$charlvl = ($charlvl + $char['level']);
}
$avlvl = (int) ($charlvl/$guild['numchars']);
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>
<head>
<title><?=$guild['guild_name'] ?> - Gildenübersicht</title>
</head>
<body leftmargin="0" rightmargin="0" topmargin="0" bottommargin="0">
<a name="top"></a>
<div align="center" style="padding: 10px">
<table border="0" width="95%" cellpadding="2" cellspacing="2">
<tr>
<td colspan="8">
<div style="border-bottom: 2px solid rgb(218, 182, 86)">
<table border="0" cellpadding="2" cellspacing="2">
<tr>
<td>
</td>
<td><h1><i>Mitglieder</i></h1></td>
</tr>
</table>
</div>
<table border="0" cellpadding="2" cellspacing="2">
<tr valign="top">
<td>
</td>
</tr>
</table>
</td>
</tr>
<tr valign="top" style="font-size: 14px">
<td>
<?
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'namel' && $_GET['sort'] == 'level') {
$pic = 'up_akt';
}
elseif(!isset($_GET['wahl']) && !isset($_GET['sort'])) {
$pic = 'up_akt';
}
else {  $pic = 'up'; }
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'name' && $_GET['sort'] == 'desc') {
$apic = 'down_akt';
}
else {  $apic = 'down'; }
?>
<b>Name:</b>

</td>
<td align="center">
<?
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'level' && $_GET['sort'] == 'asc') {
$pic = 'up_akt';
}
else {  $pic = 'up'; }
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'level' && $_GET['sort'] == 'desc') {
$apic = 'down_akt';
}
else {  $apic = 'down'; }
?>
<b>Level:</b>

</td>
<td>
<?
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'race' && $_GET['sort'] == 'asc') {
$pic = 'up_akt';
}
else {  $pic = 'up'; }
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'race' && $_GET['sort'] == 'desc') {
$apic = 'down_akt';
}
else {  $apic = 'down'; }
?>
<b>Rasse:</b>

</td>
<td>
<?
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'class' && $_GET['sort'] == 'asc') {
$pic = 'up_akt';
}
else {  $pic = 'up'; }
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'class' && $_GET['sort'] == 'desc') {
$apic = 'down_akt';
}
else {  $apic = 'down'; }
?>
<b>Klasse:</b>

</td>
<td align="center">
<?
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'sex' && $_GET['sort'] == 'asc') {
$pic = 'up_akt';
}
else {  $pic = 'up'; }
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'sex' && $_GET['sort'] == 'desc') {
$apic = 'down_akt';
}
else {  $apic = 'down'; }
?>
<b>Geschlecht:</b>

</td>
<td>
<?
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'guild_title' && $_GET['sort'] == 'asc') {
$pic = 'up_akt';
}
else {  $pic = 'up'; }
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'guild_title' && $_GET['sort'] == 'desc') {
$apic = 'down_akt';
}
else {  $apic = 'down'; }
?>
<b>Rang:</b>

<?
function sortierung($a, $b) {
global $wahl, $sort;
if ($a[$wahl] == $b[$wahl]) {
return 0;
}
if($sort == 'desc') {
return ($a[$wahl] < $b[$wahl]) ? 1 : -1;
}
elseif($sort == 'asc') {
return ($a[$wahl] < $b[$wahl]) ? -1 : 1;
}
else {
return ($a[$wahl] < $b[$wahl]) ? -1 : 1;
}
}

usort($guild['character'], 'sortierung');

foreach($guild['character'] as $c) {
if($i %2 == 0) { $bgc = ''; } else { $bgc = '#592c0c'; }
if($c['sex'] == 'm') { $sex = 'männlich'; } else { $sex = 'weiblich'; }

echo '<tr valign="top" bgcolor="'.$bgc.'">
<td>
<a class="bold" href="http://www.blasc.de/index.php?c='.$c['id'].'&showguild=&server='.$server.'&search=suchen" target="_blank" title="Profil von '.$c['name'].'...">'.$c['name'].'</a><br>

</td>
<td align="center">'.$c['level'].'</td>
<td>'.$c['race'].'</td>
<td>'.$c['class'].'</td>
<td align="center">
'.$sex.'
</td>';

echo '<td>'.$c['guild_title'].'</td>';



echo "<td>";

?>

<table cellspacing="0" border="0" width="100%" cellpadding="0">
<tr>
<td width="30%">

</td>
<td width="70%">
<table cellpadding="0" cellspacing="1" border="0">
<tr>

</td>
</tr>
</table>
</td>
</tr>
</table>

<?
}


?>

<table cellspacing="0" border="0" width="100%" cellpadding="0">
<tr>
<td width="50%">

</td>
<td width="50%">
<table cellpadding="0" cellspacing="0" border="0">
<tr>


</td>
</tr>
</table>
</td>
</tr>
</table>

<tr>
<td colspan="8">
<div align="right" style="border-top: 1px solid rgb(218, 182, 86)">
powered by <a href="http://www.blasc.de" target="_blank">BLASC</a> ::
© copyright<? echo date( ' Y '); ?><a href="http://www.blasc.de/index.php?id=3&#8834;=1&showguild=<?=$guild['guild_name'] ?>&server=<?=$server ?>" target="_blank"><?=$guild['guild_name'] ?></a> ::
<a class="bold" href="#top" title="zum Seitenanfang...">^</a>
</div>
</td>
</tr>
</table>
<br>
</div>
</body>
</html>
```


----------



## Bogentod (18. Juni 2006)

Shem schrieb:


> Nachdem mir einige meine Leute gesagt hatten das in dem script keine sortierung ist fiel mir das auch erst auf, aber nachdem ich das ganze Script zerstört hatte ging gar nix ( hatte an ner kopie gefummelt *glück* ), ich wollte das die leute nachdem Gilden Rang sortiert werden weiß einer ne Lösung ?



in Zeile 10 findest du folgende Zeile:

$wahl = $_GET['wahl'] ? $_GET['wahl'] : 'level'; hier bei "level" einfach auf "Rang"  ändern und es wird nach dem Gilden Rang sortiert.

MfG Bogentod


----------



## Shem (20. Juli 2006)

Bogentod schrieb:


> in Zeile 10 findest du folgende Zeile:
> 
> $wahl = $_GET['wahl'] ? $_GET['wahl'] : 'level'; hier bei "level" einfach auf "Rang"  ändern und es wird nach dem Gilden Rang sortiert.
> 
> MfG Bogentod




Geändert aber klappt trotzdem net und scheinbar hat das irgendwie gar keine sortierung wenn du mal schaust
Konzil der Elemente, alleine das wundert mich


----------



## WhiteWolf25524 (26. Juli 2006)

Hi Leute gibbet auch nen code NUR für die Berufe ?

Möchte gerne das man unsere Berufe auf einer Seperaten php sehen kann 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        



Bisher habe ich nur die Codes für die Charauflistung gesehen 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        



Wäre cool wenn mir da einer Helfen könnte.


----------



## David (1. August 2006)

Also ich habs so gelöst:


```
echo "<table cellspacing=\"1\">";
echo "<tr><td class=\"mdesc\" colspan=\"7\">Mitglieder (".$guild[numchars].")</td></tr>";
echo "<tr><td class=\"desc\">Name</td><td class=\"desc\">Level</td><td class=\"desc\">Rasse</td><td class=\"desc\">Klasse</td><td class=\"desc\">PvP-Rang</td><td class=\"desc\">Beruf</td><td class=\"desc\">Letztes Update</td></tr>";
foreach($character as $c) {
	$i = 0;
	echo "<tr><td><a href=\"http://www.blasc.de/?c=".$c[id]."\" target=\"blank\">".$c[name]."</a></td><td>".$c[level]."</td><td>".$c[race]."</td><td>".$c['class']."</td><td>Rang ".$c['pvprank']."</td><td>";
	
	$berufe = array_keys($guild[character][$i][skills][Berufe]);
	foreach($berufe as $b) {
		echo $b."<br />";
	}
	
	echo "</td><td>".date("d.m.Y - H:i:s",strtotime($c[lastupdate]))."</td></tr>";
	$i + 1;
}
echo "</table>";
```

Allerdings wird nur beim ersten Mal ein Beruf festgesetzt und bei ALLEN Gildenmitgliedern derselbe Beruf angezeigt.
Hat einer ne Idee wie man das fixen kann?  


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.


----------



## Japedogg (3. August 2006)

Hallo, hier mal NUR Berufe mit Anzeige der Skillpunkte absteigend sortiert nach den bereits erreichten Skillpunkten.


```
<?PHP
define ('CRLF', chr(13).chr(10)); // Zeilenumbruch
$url = 'http://www.blasc.de/guild.php?g=XXXX'; // <= bei XXXX deine Gildennummer eintragen
$file = file_get_contents($url);

if(!$file) die("Fehler beim Öffnen von $url");

$uncompressed = gzuncompress($file);
$guild = unserialize($uncompressed);


/*** HAUPTBERUFE ***/

/* Alchimie */
print getTableForProfession("Berufe", "Alchimie", $guild);

/* Ingenieurskunst */
print getTableForProfession("Berufe", "Ingenieurskunst", $guild);

/* Schmiedekunst */
print getTableForProfession("Berufe", "Schmiedekunst", $guild);

/* Schneiderei */
print getTableForProfession("Berufe", "Schneiderei", $guild);

/* Verzauberkunst */
print getTableForProfession("Berufe", "Verzauberkunst", $guild);

/* Lederverarbeitung */
print getTableForProfession("Berufe", "Lederverarbeitung", $guild);


/*** NEBENBERUFE ***/

/* Erste Hilfe */
print getTableForProfession("Sekundäre Fertigkeiten", "Erste Hilfe", $guild);

/* Kochkunst */
print getTableForProfession("Sekundäre Fertigkeiten", "Kochkunst", $guild);

/* Angeln */
print getTableForProfession("Sekundäre Fertigkeiten", "Angeln", $guild);


/**** DIE FUNCTIONEN ***/

// Gibt Tabelle aus mit  
function getTableForProfession($w, $prof, $gArray){
	print "	<table width=\"200px\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\" style=\"border: 1px solid #0000ff; \">".CRLF;
	print "	  <tr style=\"background-color:#0000ff; color:white; font-weight:bold;\">".CRLF;
	print "	   <td align=\"left\" width=\"100%\"> ".$prof."</td>".CRLF;
	print "	  </tr>".CRLF;
	print "	  ".getNamesAndSkillsForProfession($w, $prof, $gArray ).CRLF;	  
	print "	 </table><br>".CRLF;
}

// Gibt Name und Skill des Berufes aus, absteigend sortiert. 
function getNamesAndSkillsForProfession($w, $prof , $gArray){
  $i=0;
  $str = "";
  $arr = array();
  
  //Neues Array mit relevanten Daten füllen
  foreach($gArray['character'] as $c) {
	  if ($c['skills'][$w][$prof]['value'] != ""){	  
	  $arr[$i]['name'] = $c['name'];
	  $arr[$i]['id'] = $c['id'];
	  $arr[$i]['cur'] = $c['skills'][$w][$prof]['value'];
	  $arr[$i]['max'] = $c['skills'][$w][$prof]['max'];
	  $i++;
	  }
  }
  
  // Hole eine Liste von Spalten
  foreach ($arr as $key => $val) {
	 $cur[$key]  = $val['cur'];
  }
  
  // Die Daten nach erreichtem Skill absteigend sortieren.
  array_multisort($cur, SORT_DESC, $arr);
  
  // Daten ausgeben
   foreach($arr as $n) {
	  print "<tr  valign=\"top\"><td colspan=\"2\" >".CRLF. 
			"<a href=\"http://www.blasc.de/?c=".$n['id']."\" target=\"_blank\">".$n['name'] ." " .$n['cur'] ."/".$n['max']."</a></td></tr>".CRLF;
   }
}
?>
```

Hier zum Downloaden: 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.


----------



## Obscurus (9. August 2006)

Bastele gerade für meine Gilde an einem kleinen Script, das von Chars den Bank-Inhalt darstellen kann, dabei ist derzeit folgende Funktion entstanden:


```
function output($char) {

// URL, die durchsucht werden soll
$url = "http://www.blasc.de/?c=$char&tab=5";

// Zeichenfolge vor relevanten Einträgen
$startstring = "<table class=";

// bis zum nächsten html tag bzw. Zeichenfolge nach relevanten Einträgen
$endstring = "</table>";

$file = @fopen ($url,"r");

if (trim($file) == "") {
	echo "Blasc.de ist nicht erreichbar.";
	} else {
	$i=0;
	while (!feof($file)) {

//  $zeile[$i] = fgets($file, 100000); //(falls overflow auftritt, die vorderen // löschen und vor der folgenden Zeile einfügen.)
		$zeile[$i] = fgets($file);
		$i++;
	}
	fclose($file);
}

// Nun werden die Daten entsprechend gefiltert.

for ($j=0;$j<$i;$j++) {
  if ($resa = strstr($zeile[$j],$startstring)) {
			$resultat .= $resa;
	}
}

return strtr($resultat, array("/images" => "http://www.blasc.de/images", "?i=" => "http://www.blasc.de/?i="));

}
```

Unter angabe der ID die bei blasc.de oben in der Adressleiste steht erhält man von der Funktion die gesamte Inventar-Tabelle von blasc.de.

Der Aufruf der Funktion sieht dann z.B. wie folgt aus:


```
echo output(406900);
```

PS: Meine PHP-Kenntnisse sind noch nicht sonderlich ausgereift, also bitte nicht hauen wenn der Code  etwas umständlich,... verbuggt,... idiotisch,..., nicht standardkonform,... oder sonstwas ist.


----------



## WhiteWolf25524 (10. August 2006)

Hi Leutz 

ich habe ein neues Prob 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        



Irgendwie kann ich auf blasc nicht mehr zugreifen ...... :-/

habe ne neue Gilde und wenn ich dann die neue URL eintrage, dann funzt das nicht ....

Hat wer ne Ide wie was nun aus schaut mit den links und ID´s ?

Ich habe bald keine Ideen mehr woran das liegen könnte....


MfG


----------



## David (11. August 2006)

WhiteWolf25524 schrieb:


> Hi Leutz
> 
> ich habe ein neues Prob
> 
> ...


Kein Wunder, Blasc ist umgezogen.

http://www.blasc.de

musst du ändern zu

http://www.blasc.de




			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.


----------



## WhiteWolf25524 (11. August 2006)

ja habe ich aber dann schreit er mir diverse errors rein .....

http://hugo.kommweb.de/Gildestrucktur2.php


----------



## Japedogg (11. August 2006)

> Warning: gzuncompress() [function.gzuncompress]: data error in /srv/www/vhosts/kommweb.de/subdomains/hugo/httpdocs/Gildestrucktur2.php on line 9



Also obiges Problem könnte mit dem code hier gelöst werden. Die URL für das PHP-Array bleibt weiterhin www.blasc.de.


```
$url = 'http://www.blasc.de/guild.php?g=38766';
$file = file_get_contents($url);

if(!$file) die("Fehler beim Öffnen von $url");

$uncompressed = gzuncompress($file);
$guild = unserialize($uncompressed);
```

hab ich probiert und funktioniert auch bei mir. Die restlichen Fehler sind vielleicht Folgefehler.

Das Problem:


> Warning: usort() [function.usort]: The argument should be an array in /srv/www/vhosts/kommweb.de/subdomains/hugo/httpdocs/Gildestrucktur2.php on line 201



könnte eventuell auftreten, weil ihr noch keinen Lederer habt. Bin mir da aber nicht sicher, da ich deinen Code nicht kenne und daher nicht weiß ob du Berufe überhaupt anzeigen lassen willst. Wenn ja, könnte das die Fehlerquelle sein. Versuch das mal abzufangen. Sollte das nicht helfen poste doch bitte die betreffenden Codeabschnitte.

Gruß Jape


----------



## WhiteWolf25524 (12. August 2006)

kannst ja mal gerne schauen aber der funzt immer noch nicht :-/

Hier mal mein Code......


```
<?
$server = 'Rexxar';
$gilde ='HugoSimon%20auf%20ET';
$url = 'http://www.blasc.de/guild.php?g=38766';
$file = file_get_contents($url);

if(!$file) die("Fehler beim Öffnen von $url");

$uncompressed = gzuncompress($file);
$guild = unserialize($uncompressed);

$wahl = $_GET['wahl'] ? $_GET['wahl'] : 'level';
$sort = $_GET['sort'] ? $_GET['sort'] : 'desc';
$charlvl = 0;
foreach($guild['character'] as $char) {
$charlvl = ($charlvl + $char['level']);
}
$avlvl = (int) ($charlvl/$guild['numchars']);
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>
<head>
<title><?=$guild['guild_name'] ?> - Gildenübersicht</title>
<style type="text/css" media="screen">
<!--
body {
margin: 0px;
color: rgb(255, 255, 255);
font: 12px "Trebuchet MS", Geneva, Arial, Helvetica, SunSans-Regular, sans-serif;
line-height: 16px;
background-color: rgb(0, 0, 0);
}

td {
color: rgb(255, 255, 255);
font: 12px "Trebuchet MS", Geneva, Arial, Helvetica, SunSans-Regular, sans-serif;
line-height: 16px;
}

h1 {
color: rgb(218, 182, 86);
}

a {
color: rgb(218, 182, 86);
font: 12px "Trebuchet MS", Geneva, Arial, Helvetica, SunSans-Regular, sans-serif;
line-height: 16px;
text-decoration: none;
}

a:hover {
color: rgb(245, 213, 129);
}

a.bold {
color: rgb(218, 182, 86);
font: 12px "Trebuchet MS", Geneva, Arial, Helvetica, SunSans-Regular, sans-serif;
line-height: 16px;
font-weight: bold;
text-decoration: none;
}

a.bold:hover {
color: rgb(245, 213, 129);
}
-->
</style>
</head>
<body leftmargin="0" rightmargin="0" topmargin="0" bottommargin="0">
<a name="top"></a>
<div align="center" style="padding: 10px">
<table border="0" width="95%" cellpadding="2" cellspacing="2">
<tr>
<td colspan="8">
<div style="border-bottom: 2px solid rgb(218, 182, 86)">
<table border="0" cellpadding="2" cellspacing="2">
<tr>
<td>
</td>
<td><h1><i><?=$guild['guild_name'] ?> - Gildenübersicht</i></h1></td>
</tr>
</table>
</div>
<table border="0" cellpadding="2" cellspacing="2">
<tr valign="top">
<td>
<b>Server:</b> <?=$guild['server'] ?> &#8226;
<b>Fraktion:</b> <?=$guild['faction'] ?> &#8226;
<b>registrierte Charaktere:</b> <?=$guild['numchars'] ?> &#8226;
<b>Level-Durchschnitt:</b> <?=$avlvl ?>
</td>
</tr>
</table>
</td>
</tr>
<tr valign="top" style="font-size: 14px">
<td>
<?
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'namel' && $_GET['sort'] == 'level') {
$pic = 'up_akt';
}
elseif(!isset($_GET['wahl']) && !isset($_GET['sort'])) {
$pic = 'up_akt';
}
else {  $pic = 'up'; }
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'name' && $_GET['sort'] == 'desc') {
$apic = 'down_akt';
}
else {  $apic = 'down'; }
?>
<b>Name:</b>

</td>
<td align="center">
<?
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'level' && $_GET['sort'] == 'asc') {
$pic = 'up_akt';
}
else {  $pic = 'up'; }
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'level' && $_GET['sort'] == 'desc') {
$apic = 'down_akt';
}
else {  $apic = 'down'; }
?>
<b>Level:</b>

</td>
<td>
<?
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'race' && $_GET['sort'] == 'asc') {
$pic = 'up_akt';
}
else {  $pic = 'up'; }
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'race' && $_GET['sort'] == 'desc') {
$apic = 'down_akt';
}
else {  $apic = 'down'; }
?>
<b>Rasse:</b>

</td>
<td>
<?
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'class' && $_GET['sort'] == 'asc') {
$pic = 'up_akt';
}
else {  $pic = 'up'; }
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'class' && $_GET['sort'] == 'desc') {
$apic = 'down_akt';
}
else {  $apic = 'down'; }
?>
<b>Klasse:</b>

</td>
<td align="center">
<?
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'sex' && $_GET['sort'] == 'asc') {
$pic = 'up_akt';
}
else {  $pic = 'up'; }
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'sex' && $_GET['sort'] == 'desc') {
$apic = 'down_akt';
}
else {  $apic = 'down'; }
?>
<b>Geschlecht:</b>

</td>
<td>
<?
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'guild_title' && $_GET['sort'] == 'asc') {
$pic = 'up_akt';
}
else {  $pic = 'up'; }
if(isset($_GET['wahl']) && isset($_GET['sort']) && $_GET['wahl'] == 'guild_title' && $_GET['sort'] == 'desc') {
$apic = 'down_akt';
}
else {  $apic = 'down'; }
?>
<b>Rang:</b>

<?
function sortierung($a, $b) {
global $wahl, $sort;
if ($a[$wahl] == $b[$wahl]) {
return 0;
}
if($sort == 'desc') {
return ($a[$wahl] < $b[$wahl]) ? 1 : -1;
}
elseif($sort == 'asc') {
return ($a[$wahl] < $b[$wahl]) ? -1 : 1;
}
else {
return ($a[$wahl] < $b[$wahl]) ? -1 : 1;
}
}

usort($guild['character'], 'sortierung');

foreach($guild['character'] as $c) {
if($i %2 == 0) { $bgc = '#442109'; } else { $bgc = '#592c0c'; }
if($c['sex'] == 'm') { $sex = 'männlich'; } else { $sex = 'weiblich'; }

echo '<tr valign="top" bgcolor="'.$bgc.'">
<td>
<a class="bold" href="http://www.blasc.de/index.php?c='.$c['id'].'&showguild=&server='.$server.'&search=suchen" target="_blank" title="Profil von '.$c['name'].'...">'.$c['name'].'</a><br>

</td>
<td align="center">'.$c['level'].'</td>
<td>'.$c['race'].'</td>
<td>'.$c['class'].'</td>
<td align="center">
'.$sex.'
</td>';

echo '<td>'.$c['guild_title'].'</td>';



echo "<td>";

?>

<table cellspacing="0" border="0" width="100%" cellpadding="0">
<tr>
<td width="30%">

</td>
<td width="70%">
<table cellpadding="0" cellspacing="1" border="0">
<tr>

</td>
</tr>
</table>
</td>
</tr>
</table>

<?
}


?>

<table cellspacing="0" border="0" width="100%" cellpadding="0">
<tr>
<td width="50%">

</td>
<td width="50%">
<table cellpadding="0" cellspacing="0" border="0">
<tr>


</td>
</tr>
</table>
</td>
</tr>
</table>

<tr>
<td colspan="8">
<div align="right" style="border-top: 1px solid rgb(218, 182, 86)">
powered by <a href="http://www.blasc.de" target="_blank">BLASC</a> ::
© copyright<? echo date( ' Y '); ?><a href="http://www.blasc.de/index.php?id=3&#8834;=1&showguild=<?=$guild['guild_name'] ?>&server=<?=$server ?>" target="_blank"><?=$guild['guild_name'] ?></a> ::
<a class="bold" href="#top" title="zum Seitenanfang...">^</a>
</div>
</td>
</tr>
</table>
<br>
</div>
</body>
</html>
```

Wäre SUPER GEILO MATRO NETT, wenn mir das mal einer raus fummeln kann,..........
muss das auch noch includen für nen CMS .........




			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 

Danke erstmal 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        



habe nochmal den Head was ausgeklammert nun kommt das ......



```
$server = 'Rexxar';
$gilde ='HugoSimon%20auf%20ET';
$url = 'http://www.blasc.de/guild.php?g=38766';
//$file = file_get_contents($url);

if(!$file) die("Fehler beim Öffnen von $url");

$uncompressed = gzuncompress($file);
$guild = unserialize($uncompressed);
```

vorher hatte er ne Fatal error und ging gar nix mehr ......


----------



## Bogentod (12. August 2006)

WhiteWolf25524 schrieb:


> kannst ja mal gerne schauen aber der funzt immer noch nicht :-/
> 
> Hier mal mein Code......
> 
> ...



Der Fehler liegt hier:
$url = 'http://www.blasc.de/guild.php?g=38766'; das muss geändert werden
in
$url = 'http://www.blasc.de/guild.php?g=38766';

ändere dies im Code auch bei den anderen, denn "www.blasc.de" gibt es nicht mehr. Das ist jetzt nur noch "www.blasc.de" hab das in meinen Code geändert und es funzt alles wunderbar.

MfG Bogentod


----------



## WhiteWolf25524 (12. August 2006)

Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

  ZACK UND FUNZT !!!

 Danke !!!  


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.


----------



## Bogentod (12. August 2006)

so stellte ich es mir auch vor 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.


----------



## DerOnkel(FS) (14. August 2006)

kann vielleicht jemand noch eben posten wie ich die daten auslese/ausgebe für nur einen Char???


Will meinen eigenen Char auf meiner HP wiedergeben.....



danke!


----------



## DerOnkel(FS) (14. August 2006)

```
foreach($guild['character'] as $c)
{
if(($c['id']) == '495809'){
$deronkel_name = $c['name'];
}
```

so klappts

ist zwar noch kein sauberer code aber funzt!!!


----------



## Gast (26. August 2006)

Gibt es nun keine php funktion mehr ?

auch durch wechseln von blasc.de auf buffed.de im code kann es nicht ausgelesen werden da nicht vorhanden 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        



mfg Biggi


----------



## Boleo (26. August 2006)

Hallo zusammen!!

Wann wird die PhP Schnittstelle denn wieder im Einsatz sein?

Habe das Problem obwohl ich die URL´s natürlich abgeändert  habe, im Script auf unserer Gilden HP, das zwar der Rahmen da ist, aber leider keine Liste erscheint  


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 


Ich würde auch gerne wissen, ob es eine URL gibt, die ich in unsere DKP Datenbank einbinden kann im Infos und Gfx zu aktualisieren.Natürlich kommt ein "Powered by Blasc" mit auf die DKP Site  


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 
Hoffe das Ihr schnell antwortet weil unsere Gildi´s schon entzug nach der Bequemen Methode der Information^^



Grüße von den "Helden der Apokalypse"


----------



## Arkanus (26. August 2006)

Haben wir hier denn jemanden, der ein Tool ähnlich dem BLASC-Client schreiben könnte (blos ohne die Bugs)? Dann könnten wir eine solche Seite für Chars inkl. PHP und meinetwegen auch direkter MySQL-Schnittstelle selbst realisieren, Server dafür und PHP-Programmierung würde ich beisteuern.

Falls ja, meldet euch einfach bei mir: arkanus@zeugendesolymp.eu


----------



## Bogentod (26. August 2006)

Habe selbes Problem mit der PHP-Schnittstelle, alle Links auf www.buffed.de geändert aber es wird nix angezeigt. Hoffe das funktioniert bald wieder.


----------



## Gast (27. August 2006)

Jaja, alle Links klappen durch Umstellung s/blasc/buffed nur die Gildenuebersicht kann nicht mehr abgerufen werden. :'( Macht das mal bitte wieder heil. Unsere Membe-Seite ist schon ganz traurig...


----------



## Crowley (27. August 2006)

geht wieder 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        



http://www.buffed.de/guild.php?g=<guildid>


----------



## Gast (27. August 2006)

*Danke!* an die, die's repariert haben. Das ist doch mal prompter Service 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.


----------



## Smashi (28. August 2006)

Gibt es auch die möglichkeit auf die Datenbank der einzelnen Chars zuzugreifen damit man sie auf die eigene internetseite einbinden kann ??


----------



## Dornathal (29. August 2006)

&#9824;Hallo Leute ich versuche gerade wie ihr vielleicht erraten könnt eine Mitgliederliste auf die Homepage meiner Gilde zu stllen. Da ich noch nicht richtig mit PHP umgehen kann stellt sich mir folgendes problem:

Ich versuche die Jeweiligen berufe der Charakter auszulesen. Allerdings wird immer gezeigt das skills nicht als variable belegt ist. Wenn ich nun den ganzen Array schreibe  
	
	



```
if (isset($c['skills']['Berufe']['Lederverarbeitung']['value'])){
```
 gibt er nie Berufe aus. 

Ich gebe euch hier einmal den kompletten Code 
	
	



```
<?php

$url = 'http://www.blasc.de/guild.php?g=37365';

$file = file_get_contents($url);
if(!$file) die("Fehler beim Öffnen von $url");

$guild = unserialize(gzuncompress($file));
print '<b>
<html>
<head></head>
<body background = "http://dornathal.byto.de/Anfang/pergament3.gif">
<div align = "center">
Mitgliederliste der Shadow Thieves
<table border="1" cellpadding="2" cellspacing="2" background="http://dornathal.byto.de/Anfang/pergament3.gif" bordercolorlight="#E0E0E0" bordercolordark="#000000">
<tr>
<h3><td>Name</td><td>Ges.</td><td>Level</td><td>Rasse</td><td>Klasse</td><td>Gilden Rang</td><td>PvP Rang</td>
</tr></b></h3>';



foreach($guild['character'] as $c) {
$beruf = 'Berufslos';
if($c['pvprank'] == '0') { $pvprank = 'kein Rang'; }
if($c['pvprank'] == '1') { $pvprank = 'Späher'; }
if($c['pvprank'] == '2') { $pvprank = 'Grunzer'; }
if($c['pvprank'] == '3') { $pvprank = 'Waffenträger'; }
if($c['pvprank'] == '4') { $pvprank = 'Schlachtrufer'; }
if($c['pvprank'] == '5') { $pvprank = 'Rottenmeister'; }
if($c['pvprank'] == '6') { $pvprank = 'Steingardist'; }
if($c['pvprank'] == '7') { $pvprank = 'Blutgardist'; }
if($c['pvprank'] == '8') { $pvprank = 'Zornbringer'; }
if($c['pvprank'] == '9') { $pvprank = 'Klinge der Horde'; }
if($c['pvprank'] == '10') { $pvprank = 'Feldherr'; }
if($c['pvprank'] == '11') { $pvprank = 'Sturmreiter'; }
if($c['pvprank'] == '12') { $pvprank = 'General'; }
if($c['pvprank'] == '13') { $pvprank = 'Kriegsfürst'; }
if($c['pvprank'] == '14') { $pvprank = 'Oberster Kriegsfürst'; }
if (isset($c['skills']['Berufe']['Lederverarbeitung']['value'])){
if ($c['skills']['Berufe'] == 'Lederverarbeitung') {$beruf = 'Lederverarbeitung';}
else{$beruf = 'Berufslos';}}
if($c['race'] == 'Troll') { $pic = 'Bilder/Troll-m.png';} 
	 
	print "<tr>";
	//print "<td>".$pic."</td>";
	print "<td>".$c['name']."</td>";
	print "<td>".$c['sex']."</td>";
	print "<td>".$c['level']."</td>";
	print "<td>".$c['race']."</td>";
	print "<td>".$c['class']."</td>";
	print "<td>".$c['guild_title']."</td>";
	print "<td>".$pvprank."</td>";
	print "<td>".$beruf."</td>";
	//print "<td>".$c['lastupdate']"</td>";

print '</tr>';
}
print '
</table>
';
//</div><div aligne ="left">
//<table>
//<tr></tR><td>Alchemie</tD><td></td>';
//foreach($guild['character'] as $c){
  //$beruf = $c['skills']['Berufe'];
//if (isset($beruf));
//	if ($beruf = "Alchimie"){ print "<td>".$c['name']."</td>";}
	
//}

//$skills = $guild['character']['skills']['Berufe']
 //foreach($skills[{beruf}] as $s){
 //print"<td>" .$guild['character']['name']. "</td>";
 //print "<td>".$c['value']."</td>";
 //print </table>;				  
 
print'
</div>
</body>
</html>
';

 

/*


server -> String
guild_name -> String
faction -> String
numchars -> int 
character -> Array
____name -> String
____level -> int
____race -> String
____class -> String
____sex -> char
____guild_rank -> int (0 = gildenmeister, 1 = offizier, 2 = veteran, 3 = mitglied, 4 = initiand)
____guild_title -> String
____lastupdate -> sqldate
____skills -> Array
________Berufe -> Array
____________[{beruf}] -> Array
________________value -> int
________________max -> int 
________Sekundäre Fertigkeiten -> Array
____________[{Fertigkeit}] -> Array
____________value -> int
____________max -> int */
```

kann mir jemand helfen pls?


----------



## Dornathal (31. August 2006)

Hallo Nochmals. Ich habe das Problem selbst gelöst.
Ausserdem habe ich eine NICHT an die jeweilige Seite gebundenes PHP  schreiben können. Also Kann Jeder diese Seite ohne Probleme in seine HP einbinden Dies ist der code 
	
	



```
<?php

$url = 'http://www.blasc.de/guild.php?g=37365'; // Hier die schnittstelle zur Blasc Datenbank eingeben

$file = file_get_contents($url);
if(!$file) die("Fehler beim Öffnen von $url");

$url2 = 'http://dornathal.byto.de/Anfang/Mitgliederliste2.php'; // HIer den Pfad zu diesem PHP Dokument eintragen.

$guild = unserialize(gzuncompress($file));
print '<b>
<html>
<head></head>
<body background = "http://dornathal.byto.de/Anfang/pergament3.gif">
<div align = "center">
Mitgliederliste der ';
print $guild['guild_name'];
print ' mit ';print $guild['numchars'];
print ' Mitgliedern.
<table border="1" cellpadding="2" cellspacing="2" bgcolor="silver" bordercolorlight="blue" bordercolor="blue">
<tr>
<h3>
<td><b><a href = '.$url2.'?sort=NA>Name</a></td>

<td><b><a href = '.$url2.'?sort=LE> Level</a></td>
<td><b><a href = '.$url2.'?sort=RA>Rasse</a></td>
<td><b><a href = '.$url2.'?sort=KL>Klasse</a></td>
<td><b><a href = '.$url2.'?sort=GR>Gilden Rang</a></td>
<td><b><a href = '.$url2.'?sort=PVP>PvP Rang</a></td>
<td><b>Beruf</td>
<td><a href = '.$url2.'?sort=LU>Letztes Update</td>
</tr></b></h3>';
//$sort = Sort_desk;
//$wahl = sort_string;

usort($guild['character'], "cmp");

function cmp($a, $b){
 if (isset($_GET['sort']))$sort = $_GET['sort'];
  if (!isset ($_GET['sort'])) $sort = 'GR';
If ($sort == 'GR'){
	if ($a['guild_rank'] == $b['guild_rank']) return 0;
	return ($a['guild_rank'] < $b['guild_rank']) ? -1 : 1;
}If ($sort == 'NA'){
	if ($a['name'] == $b['name']) return 0;
	return ($a['name'] < $b['name']) ? -1 : 1;
}If ($sort == 'LE'){
	if ($a['level'] == $b['level']) return 0;
	return ($a['level'] < $b['level']) ? 1 : -1;
}If ($sort == 'RA'){
	if ($a['race'] == $b['race']) return 0;
	return ($a['race'] < $b['race']) ? -1 : 1;
}If ($sort == 'KL'){
	if ($a['class'] == $b['class']) return 0;
	return ($a['class'] < $b['class']) ? -1 : 1;
}If ($sort == 'PVP'){
	if ($a['pvprank'] == $b['pvprank']) return 0;
	return ($a['pvprank'] < $b['pvprank']) ? 1 : -1;
}If ($sort == 'LU'){
	if ($a['lastupdate'] == $b['lastupdate']) return 0;
	return ($a['lastupdate'] < $b['lastupdate']) ? 1 : -1;
}}
foreach($guild['character'] as $c) {
if($c['faction'] == 'H'){
if($c['pvprank'] == '0') { $pvprank = 'kein Rang'; }
if($c['pvprank'] == '1') { $pvprank = 'Späher'; }
if($c['pvprank'] == '2') { $pvprank = 'Grunzer'; }
if($c['pvprank'] == '3') { $pvprank = 'Waffenträger'; }
if($c['pvprank'] == '4') { $pvprank = 'Schlachtrufer'; }
if($c['pvprank'] == '5') { $pvprank = 'Rottenmeister'; }
if($c['pvprank'] == '6') { $pvprank = 'Steingardist'; }
if($c['pvprank'] == '7') { $pvprank = 'Blutgardist'; }
if($c['pvprank'] == '8') { $pvprank = 'Zornbringer'; }
if($c['pvprank'] == '9') { $pvprank = 'Klinge der Horde'; }
if($c['pvprank'] == '10'){ $pvprank = 'Feldherr'; }
if($c['pvprank'] == '11'){ $pvprank = 'Sturmreiter'; }
if($c['pvprank'] == '12'){ $pvprank = 'General'; }
if($c['pvprank'] == '13'){ $pvprank = 'Kriegsfürst'; }
if($c['pvprank'] == '14'){ $pvprank = 'Oberster Kriegsfürst'; }}else{if($c['pvprank'] == '0') { $pvprank = 'kein Rang'; }
if($c['pvprank'] == '1') { $pvprank = 'Gefreiter'; }
if($c['pvprank'] == '2') { $pvprank = 'Fußknecht'; }
if($c['pvprank'] == '3') { $pvprank = 'Landesknecht'; }
if($c['pvprank'] == '4') { $pvprank = 'Feldwebel'; }
if($c['pvprank'] == '5') { $pvprank = 'Fähnrich'; }
if($c['pvprank'] == '6') { $pvprank = 'Leutnant'; }
if($c['pvprank'] == '7') { $pvprank = 'Hauptmann'; }
if($c['pvprank'] == '8') { $pvprank = 'Kürassier'; }
if($c['pvprank'] == '9') { $pvprank = 'Ritter der Allianz'; }
if($c['pvprank'] == '10'){ $pvprank = 'Feldkommandant'; }
if($c['pvprank'] == '11'){ $pvprank = 'Rittmeister'; }
if($c['pvprank'] == '12'){ $pvprank = 'Marschall'; }
if($c['pvprank'] == '13'){ $pvprank = 'Feldmarschall'; }
if($c['pvprank'] == '14'){ $pvprank = 'Großmarschall'; }}
// ************* Ausgabe ***************//
print "<tr>";
   // print "<td>".$pic."</td>";
	print "<td><a href=\"http://www.blasc.de/?c=".$c['id']."\" target=\"blank\"> ".$c['name']." </a></td>";
	//print "<td>".$c['sex']."</td>";
	print "<td>".$c['level']."</td>";
	print "<td>".$c['race']."</td>";
	print "<td>".$c['class']."</td>";
	print "<td>".$c['guild_title']."</td>";
	print "<td>".$pvprank."</td>";


if (isset($c['skills'])){
$s = $c['skills'];

 $berufe = $s['Berufe'];
 echo "<td>";
// berufe
 if (count($berufe)>0)
	 {
	 $berufname = array_keys($berufe);
	 for($x=0;$x<count($berufe);$x++)
   {
   echo $berufname[$x];
   echo " ( ".$berufe[$berufname[$x]]['value']."/".$berufe[$berufname[$x]]['max']." )<br /> ";
   }
	 }}else{print '<td></td>';}





 
	print "</td><td>".date("d.m.Y",strtotime($c['lastupdate']))."</td></tr>";}
//**************************************//	 

print '
</table>

';
print'
</div>
</body>
</html>
';
/*
server -> String
guild_name -> String
faction -> String
numchars -> int 
character -> Array
____name -> String
____level -> int
____race -> String
____class -> String
____sex -> char
____guild_rank -> int (0 = gildenmeister, 1 = offizier, 2 = veteran, 3 = mitglied, 4 = initiand)
____guild_title -> String
____lastupdate -> sqldate
____skills -> Array
________Berufe -> Array
____________[{beruf}] -> Array
________________value -> int
________________max -> int 
________Sekundäre Fertigkeiten -> Array
____________[{Fertigkeit}] -> Array
____________value -> int
____________max -> int */ 
?>
```

Ändert nur die beiden angegebenen Sachen im Oberen Teil.
Beispiel: Seite der Shadow Thieves auf dem Server die silberne Hand Http://dornathal.byto.de/Anfang/Mitgliederliste2.php

Ich hoffe es hilft euch weiter. Graphisch noch nicht perfect aber es ist ja änderbar. Auf dann. 

Ausserdem hoffe ich das Ich keinen Rechtschreibfehler verursacht habe. Viel Spass beim UAslesen eurer Gildendaten Und verzeiht mir wenn ich keinen sauberen Code geschrieben habe. Immerhin bin ich der erste der hier ne komplette Auslesung gepostet habe. Und ausserdem ist das hier auch mein erster Code.

MFG Dornathal


----------



## Gast (31. August 2006)

Aber was ich noch suche ist eine Schnittstelle von der aus man für einen Character die Seite aussführen kann


----------



## BigWhoop (31. August 2006)

So ich habe mal eine variable Seite gemacht wo jeder der eine Gilde hat seine Daten abrufen kann 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        



Die Seite heisst wie folgt

http://mhbsd.at.serveftp.net/?gilde=2132

(Dieses ist die gilde Uhters Garde als Beispiel)

Wobei die Nummer eure Gilden nummer ist die ihr bei blasc bzw. buffed raussuchen könnt!

Wer hilfe beim Coden braucht kann sich unter der ICQ# 92029650 bei mir melden 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        



Guten abend

PS an den Eintrag von 18:58 : Schau mal hier auf den Seiten nach das wurde schon beantwortet !


----------



## BigWhoop (31. August 2006)

BigWhoop schrieb:


> So ich habe mal eine variable Seite gemacht wo jeder der eine Gilde hat seine Daten abrufen kann
> 
> 
> Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
> ...



^^ So jetzt bin ich auch Angemeldet 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.


----------



## Tdshadow (1. September 2006)

Hi alle

Nach zig mal testen und versuchen geht's noch immer nicht. Alles mögliche versucht. 

Das PhP habe ich übernommen von Dornathal. Den hier:

<?php

$url = 'http://www.blasc.de/guild.php?g=37365'; // Hier die schnittstelle zur Blasc Datenbank eingeben

$file = file_get_contents($url);
if(!$file) die("Fehler beim Öffnen von $url");

$url2 = 'http://dornathal.byto.de/Anfang/Mitgliederliste2.php'; // HIer den Pfad zu diesem PHP Dokument eintragen.

*$guild = unserialize(gzuncompress($file));*

usw usw

Nur es geht einfach nicht. Oben alles geändert wie es dasteht.
Also mal meinen Anbieter gefragt ob das überhaupt geht mit dem Paket was ich habe.Macht in auch darauf 
aufmerksam, das ich immer den selben Fehler bekomme deren Ursprung hier liegt:
*$guild = unserialize(gzuncompress($file));*

Antwort:

Hallo,

die Funktion ist schon verfügbar, allerdings funktioniert Ihr Aufruf nicht, da die Daten die Sie übergeben (inhalt von http://www.buffed.de/?g=15796) keine gZip komprimierten Daten sind.

Hööö???

help


----------



## ZAM (1. September 2006)

Also ehrlich gesagt funktioniert das ganze Prima, ist nur ein wenig unsauber "programmiert".

Ich würde statt dem riesigen If-Baum eher ein Array mit den benötigten Informationen anlegen und den Kopf der foreachschleife entlasten. 


```
$rankings = Array(
	"H" => Array(
		0 => 'kein Rang',
		1 => 'Späher',
		2 => 'Grunzer',
		3 => 'Waffenträger',
		4 => 'Schlachtrufer',
		5 => 'Rottenmeister',
		6 => 'Steingardist',
		7 => 'Blutgardist',
		8 => 'Zornbringer',
		9 => 'Klinge der Horde',
		10 => 'Feldherr',
		11 => 'Sturmreiter',
		12 => 'General',
		13 => 'Kriegsfürst',
		14 => 'Oberster Kriegsfürst'
	),
	"A" => Array(
		0 => 'kein Rang',
		1 => 'Gefreiter',
		2 => 'Fußknecht',
		3 => 'Landsknecht',
		4 => 'Feldwebel',
		5 => 'Fähnrich',
		6 => 'Leutnant',
		7 => 'Hauptmann',
		8 => 'Kürassier',
		9 => 'Ritter der Allianz',
		10 => 'Feldkommandant',
		11 => 'Rittmeister',
		12 => 'Marschall',
		13 => 'Feldmarschall',
		14 => 'Großmarschall'
	)
);
```

Den If-Baum rausschmeißen und stattdessen auf das nötigste reduzieren:

```
$cfaction = $guild['faction'];

foreach($guild['character'] as $c) 
{
	$cpvprank = $c['pvprank'];
	
	$pvprank = $rankings[$cfaction][$cpvprank];
	
// ************* Ausgabe ***************//
```


Nach der Aussage deines Provider muss man zudem davon ausgehen das du in der Angabe der URL statt
dem Link auf "http://www.buffed.de/*guild.php*?g=15796" nur "http://www.blasc.de*/?*g=15796" angegeben hast.


----------



## Gast (1. September 2006)

Hi

Thx fürs helfen.

Lag wirklich daran: http://www.buffed.de/guild.php?g

mfg


----------



## Der,der nicht weiter weiß&#33; (3. September 2006)

Ja ich weiß, falsches Thema aber ich bin kein Mitglied hier(das funzt halt nicht) und habe auch kein Thema dafür gefunden..also nahm ich das sichtbarste...

Das mit den UI.. WIE GEHT DENN DAS?????????? 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 

Ich weiß echt nicht weiter... 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.


----------



## Grooth (3. September 2006)

Dank der grossartigen Hilfe von BigWhoop hab ich es jetzt auch hinbekommen - und unsere Gilde wird bei Blasc ausgelesen. guckst du hier So viel Unterstützung zu bekommen ist echt selten - vielen Dank dafür!

Grooth


----------



## BigWhoop (3. September 2006)

BigWhoop schrieb:


> So ich habe mal eine variable Seite gemacht wo jeder der eine Gilde hat seine Daten abrufen kann
> 
> 
> Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
> ...



Vielen dank für den Eintrag hier Grooth 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        


Du warst allerdings der einzige der sich gemeldet hat 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 die anderen scheinen es alle hin zu bekommen ... komisch nur das sie hier dann immer ins Forum schreiben *g*


----------



## Gast (6. September 2006)

Kann man auch einen einzenlnden Char auf die website includen?


----------



## Smashi (9. September 2006)

Also ich habe ein Problem ich habe nen den Gildebnbaum und habe jetzt versucht den Einzelnen Char zu includen auf unserer eigenen seite aber leider geht das mit dem rezepten nicht es werden immer nur die ersten zezepte angezeigt vieleicht kann mir ja jemand weiterhelfen


----------



## Smashi (9. September 2006)

hhuups habe vergessen die webadresse anzugeben http://Thedarkdogs.homeip.net


----------



## BigWhoop (10. September 2006)

Rezepte werden im Gildenarray nicht mit aus gegeben !

mfg BigWhoop


----------



## Daefea (13. September 2006)

ja hallo zusammen kann es sein das das ganze leider nicht mehr funktioniert oder bin ich grade zu blöd zu?^^

wär lieb wenn mir da mal wer auskunft geben könnte, habe sowohl php aus auch xml versucht 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 

danke schon mal Daefea


----------



## BigWhoop (13. September 2006)

Funktioniert alles einwandfrei im Moment!

Es gab zwar am 6.9 schwierigkeiten aber das ist wohl wieder behoben 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        



Also im moment ist alles klar



> /-----------------Script Start----------------/
> 06.09.06 21:01:01 = Die URL konnte nicht erreicht werden.
> /-----------------Script Stop-----------------/
> /-----------------Script Start----------------/
> ...


----------



## Arkanus (20. September 2006)

Was ist nun eigentlich mit dem Bankfach als PHP-Array? Wurde schon vor Monaten angekündigt ...


----------



## BigWhoop (20. September 2006)

Viel interesanter als das Bankfach fände ich die Rezepte 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.


----------



## FlashIT (21. September 2006)

[Nachtrag] Huch, nun les ich gerade, dass ihr das unten Gewünschte schon vor einiger Zeit wohl angekündigt habt *grins* Ich lass es dennoch mal so stehen und will die Nachfrage zu diesem Feature mal damit bekräftigen... [/Nachtrag]

Ersteinmal ein Lob an das Blasc-Team, dass es diese Schnittstelle gibt...

Ich habe jedoch etwas mehr vor und daher eine größere Frage:
Und zwar möchte ich für eine Gildenhomepage (eher ein System, welches später evtl. auch andere Gilden einsetzen werden) einen Import schreiben, welcher verschiedene Daten zu den Chars der Gilde sammelt...
Nun bietet dieser Export hier schon ein paar kleine Informationen... Jedoch würde ich gern NOCH mehr Informationen zum den einzelnen Chars haben!

Also analog zu der Gildenschnittstelle noch eine Charschnittstelle zu jedem Char mit in etwa folgenden Inhalten:
- Namen(, evtl. kurzInfo) und blascIDs der besessenen Items im Inventar/Bank jeweils...
- Namen(, evtl. kurzInfo) und blascIDs der besessenen Rezepte
- ...

Hintergrund ist vorallem das fehlende Housing und somit die fehlende Gildenbank etc.
Die Homepage soll am Ende durch Zusammenarbeit mit der Gildeneigenen Datenbank(welche eben durch einen Parser/Konverter von Blasc die Daten abgleicht) eine Gildeninterne Suche nach Gegenständen und Fertigkeiten ermöglichen und auch alles eben praktisch und handlich darstellen... Über die zusätzlich bekannten blascIDs der Items etc. kann man dann sogar NOCH nähere Informationen erhalten indem man auf blasc.de weitergeleitet wird...


Wäre es möglich dass ihr sowas noch einführt? Ich hatte auf einer anderen Seite soetwas gefunden, jedoch waren die Jungs von Anfang an zu dämlich so eine Schnittstelle zu bauen und haben nicht mit IDs die Referenzierung ermöglicht und auch so viel zu viele Fehler gemacht, die solch ein Projekt einfach vermiesen :-/
Die Schnittstelle, der Client und die Aufmachung von blasc.de wäre mir da im Gegensatz ein Augenschmaus! *honigUmDenBartSchmier*


----------



## Rascal (21. September 2006)

Hallo

Solange dies noch nicht vom Blasc-Team integriert wurde, versuchs doch mal so:

Schreib ein PHP-Skript, welches einfach die Bank- oder Rezepte-Seite ausliest, und dann per Grep die einzelnen Items rausliest, und in der DB speichert. Problem ist, das Skript braucht teils relativ lange bis es durch ist...

Hab das mal für mich gemacht und hat sehr gut funktioniert. Habs dann aber irgendwann mal gelöscht weil ichs nichtmehr gebraucht hab 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        



So Long
Ras


----------



## BigWhoop (21. September 2006)

So einfach ist das nun auch nicht 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        



Man braucht schon kenntnisse der MAterie um soetwas zu schreiben!

Ausserdem würde ich davon abraten denn bei jedem seitenlayout wechsel kannst du probleme bekommen und musst dein script umschreiben oder neu strukturieren.

mfg Biggi


----------



## Rascal (21. September 2006)

BigWhoop schrieb:


> Man braucht schon kenntnisse der MAterie um soetwas zu schreiben!


Das braucht man bei solchen Sachen generell



BigWhoop schrieb:


> Ausserdem würde ich davon abraten denn bei jedem seitenlayout wechsel kannst du probleme bekommen und musst dein script umschreiben oder neu strukturieren.


Musst du bei jeder Änderung an der Schnittstelle ebenfalls (siehe hier 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 )

So Long
Rascal


----------



## BigWhoop (21. September 2006)

Nun dies liegt aber nicht an dem Benutzer sondern an dem schlechten Programierer ^^ :-)

just my 2 cent 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        



PS: ausserdem sollte dir aufgefallen sein, wenn du diesen Thread im Forum gut verfolgt hast, das hier bestimmt 80% nicht so GANZ das know how haben von dem wir beide hier gerade sprechen!


----------



## FlashIT (22. September 2006)

@Rascal: Ja genau, das wäre meine einzige Lösung nun, wenn die Erweiterung der Schnittstelle wirklich so auf sich warten lässt wie ich es leider vermute...

@BigWhoop: So grosse Probleme bis auf die Arbeit zum ParserSchreiben und eben der massive Geschwindigkeitseinbruch seh ich da nicht wirklich, wenn man ein wenig clever ist ;-)
Vorteil meinerseits ist, dass es ja eh in eine eigene Datenbank fliesst und somit die Geschwindigkeit sogar etwas uninteressanter wird...
Zum Einen war das Team da wohl recht clever und hat gute Namen für die Class-Tags vergeben an denen sich der Parser dann orientieren kann.
Zum Anderen sieht man recht schnell dass die Items ja durch nen Link ala "<a href="?i=..." umgeben sind... So zb muss man nur noch parsen was dazwischen steht und SOOO grosse Änderungen werden in dem Stück "Layout" da nicht passieren... ;-)


----------



## BigWhoop (23. September 2006)

Ich frage mich ob ihr die 10 Seiten vorher gelesen habt oder ob ihr euch auf diese Seite beschrängt 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 

Ich verfolge dieses Forum massiv und sehr genau und sehe das es meistens leute sind die nichtmal fertige scripts bei sich zum laufen bekommen. Also ist die frage des know hows der Leute hier wohl schon geklärt.

Ich sage auch nicht das es nicht geht oder kompliziert ist. Mein einziger Einwand war der das die Leute hier größten Teils es nicht von sich aus hinbekommen werden also wäre ein beta-script oder opensource projekt dies bezüglich sehr hilfreich für die allgemeinheit. 

Denn wenn die leute nen parser schreiben können dann würden sie hier nicht im Forum fragen sondern es einfach machen und wenn dann probleme kommen evtl. fragen aber mehr auch nicht.

just my 2 cent Biggi  


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.


----------



## FlashIT (23. September 2006)

@Big:

Also ich bezieh mich einfach NUR auf meine Bitte die Schnittstelle zu erweitern ;-)
Rascal nannte daraufhin einen alternativen Weg, der wie du selbst nun sagst problemlos möglich ist...
Dennoch war deine erste Antwort auf IHN (zitat):


> So einfach ist das nun auch nicht smile.gif
> 
> Man braucht schon kenntnisse der MAterie um soetwas zu schreiben!
> 
> Ausserdem würde ich davon abraten denn bei jedem seitenlayout wechsel kannst du probleme bekommen und musst dein script umschreiben oder neu strukturieren.


Also hab ich das nochmal korrigiert, da das mit dem Layout schlichtweg falsch ist...

Das haben wir dann widerlegt :-P also find dich damit ab und schieb den Schuh nun nicht nem anderen Schuster zu *grins*
Spass und Sticheln beiseite...
Natürlich werd ich gern ein beispielscript des Parsers hier reinstellen, wenn die Schnittstelle wirklich nicht erweitert wird! Dann in der Hoffnung, dass das blascTeam so fair ist und das gepostete Script dann nicht nutzt um eben ihr Layout DOCH passend zu ändern damit es nichtmehr funktioniert *lach*
Aber vorallem in der Hoffnung, dass kleine Feinheiten von anderen sogar noch verbessert werden!

Freundliche Grüße
Björn


PS: Mich hätte nur einfach gefreut wenn einer des BLASC-Teams sich nur eine Sekunde Zeit nimmt und eben sagt, ob man DEMNÄCHST damit rechnen kann, dass etwas erweitert wird. Sonst mach ich mir nun leider die Mühe und in ner Woche war sie umsonst... Gerade bei einem Thread der gepinnt wurde, hab ich das eigentlich erwartet...


PPS: Übrigens hab ich noch nie gesehen, dass man sich in einer Schnittstelle mit Umlauten herumprügeln muss. Aber ich will ja nich meckern ;-)


----------



## BigWhoop (24. September 2006)

> "kannst du probleme bekommen"


^^ wenn du das bestreitest dann weiss ich nicht worüber wir hier reden 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 

und dann macht es keinen Sinn weiter zu diskutieren 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 Jedem sollte klar sein das bei einem Seitenlayout wechsel wie z.b. neuen infos auf den seiten oder geänderten anzeige optionen der ganze parser für den "Allerwertesten" ist 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        



Und dieses kommt bei einem aufstrebenden System wie BLASC immer mal vor.

Zu den Umlauten ... die sind ja nun garkein problem 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        



Aber auf das einfügen der Schnittstelle bzw. die erweiterung können wir denke ich noch ein wenig warten

just my 2 cent  


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        



PS: Ausserdem sollte das nur ein hinweis sein an die vielen Leute hier die nicht das know how haben für den parser und eine prävention gegen 500 Beiträge ala "Wie geht so ein Parster" & "Programiert einer so einen Parser bitte" sein  


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.


----------



## Rascal (25. September 2006)

BigWhoop schrieb:


> und dann macht es keinen Sinn weiter zu diskutieren
> 
> 
> Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
> ...


Äm... nicht ganz... wenn du's richtig machst, kriegste keine Probleme solange nicht der Code an der Liste selber geändert wird (oder haste das gemeint?)


Und zum Thema Know-How: Ich find einfach, wer sowas realisieren will, muss die entsprechenden Sachen (PHP und "Wie-bau-ich-nen-parser" im Griff haben... ansonsten wird das nix... Und auch wenn ich normalerweise ein Hilfsbereiter Typ bin, hab ich kein Bock, Hausfrauensichere Anleitungen für sowas zu schreiben... 

So Long
Rascal


----------



## BigWhoop (25. September 2006)

Das war mal ein guter Post  und ich kann auch alles nachvollziehen 

Es scheint das ihr mich falsch verstanden habt  Natürlich meinte ich das ... ich meinte mit layout nicht das die seite von schwarz auf weiß wechselt im hintergrund :p

Das mit dem know how ist ja klar und das sage ich die ganze zeit nur wer hier im forum hat das schon  Dann würde er sich hier nicht melden zumindest nicht mit kompletten quelltexten die garnicht von ihm sind 

Und das mit den Anleitungen ... würde ich auch nicht machen  Sowas kriegen nur Kunden bei uns

just my 2 cent


----------



## Rascal (25. September 2006)

BigWhoop schrieb:


> Das war mal ein guter Post
> 
> 
> Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
> ...


Vor-dem-2.-Kaffe-Power 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        





BigWhoop schrieb:


> Und das mit den Anleitungen ... würde ich auch nicht machen
> 
> 
> Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
> ...


Das ist mal ein Wort 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.


----------



## BigWhoop (25. September 2006)

Aber mal was anderes ... diese Downzeiten hier sind echt mies 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 da kommt man ohne eigene DB eh nicht weit 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        





> /-----------------Script Start----------------/
> 09.06.06 21:01:01 = Die URL konnte nicht erreicht werden.
> /-----------------Script Stop-----------------/
> /-----------------Script Start----------------/
> ...





> /-----------------Script Start----------------/
> 14.09.06 6:31:29 = Die URL konnte nicht erreicht werden.
> /-----------------Script Stop-----------------/





> /-----------------Script Start----------------/
> 18.09.06 14:31:02 = Die URL konnte nicht erreicht werden.
> /-----------------Script Stop-----------------/





> /-----------------Script Start----------------/
> 21.09.06 13:00:01 = Die URL konnte nicht erreicht werden.
> /-----------------Script Stop-----------------/
> /-----------------Script Start----------------/
> ...





> /-----------------Script Start----------------/
> 24.09.06 18:30:01 = Die URL konnte nicht erreicht werden.
> /-----------------Script Stop-----------------/
> /-----------------Script Start----------------/
> ...





> /-----------------Script Start----------------/
> 25.09.06 1:30:01 = Die URL konnte nicht erreicht werden.
> /-----------------Script Stop-----------------/
> /-----------------Script Start----------------/
> ...



Edit: Oh ist ja extrem lang geworden ! sry


----------



## *Karragtarr* (Gast) (9. Oktober 2006)

Wann soll jetzt eigendlich mal die Schnittstelle erweitert werden? Ich bin zwar gerade dabei einen Parser zu proggen, aber vielleicht kann ich mir die Arbeit ja sparen, wenn die Schnittstelle bald mit Rezepten und Inventar erweitert wird.

PS: Hat zufällig jemand schon einen Parser geschrieben? Dann könnte dieser doch vorübergehend als Lösung hier veröffentlicht werden.  


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.


----------



## ZAM (9. Oktober 2006)

*Karragtarr* schrieb:


> PS: Hat zufällig jemand schon einen Parser geschrieben? Dann könnte dieser doch vorübergehend als Lösung hier veröffentlicht werden.
> 
> 
> Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.



Das hier ist eine etwas ältere Version meiner kleinen quick&dirty Grundklasse die auf meine Templateklasse zurückgreift.  Die aktuellere Version hat schon einige Vorbereitungen für später Funktionsimplementationen wie Layoutwahl, Userhandling etc.  Das ganze System ist bereits multilingual ausgelegt Die Klasse benötigt Template- und Sprachdateien.  Ist halt nicht viel für ne Stunde "arbeit". Ich erweiter das ganze sicher noch.

```
<?
################################################################################
#																			  #
# blasc Guildparser CLASS v0.01a is Copyright (c)							   #
# Written and developed by Christian Zamora 2003-2006.						 #
#																			  #
# This class is free software; you can redistribute it and/or modify it		#
# under the terms of the GNU General Public License as published by the Free   #
# Software Foundation; either version 2 of the License, or (at your option)	#
# any later version.														   #
#																			  #
# This program is distributed in the hope that it will be useful, but		  #
# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY   #
# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License	  #
# for more details.															#
#																			  #
# edited by Ch. Zamora.														#
#																			  #
# Edit Log:																	#
# - dynamic template extension on template assign							  #
# - dynamic template directory choose on template assign					   #
#																			  #
# Note:																		#
# Create an xxxxx.php file and initiate this class like this:				  #
#																			  #
# include ('<classfilename>');												 #
#																			  #
#																			  #
################################################################################
	class BLASC extends Template
	{
		var $guildurl;
		var $charurl;
		var $imgchar;
		var $imgpvpr;
		
		var $file;
		var $guild;
		var $guildid;
		var $language;
		
		function blasc($guildid = 1, $language = 'DE')
		{
			# Prüfen ob buffed.de erreichbar ist
			$this->IsOnline();						
			
			# GildenID und Sprache zuordnen.
			$this->guildid  = $guildid;
			$this->language = $language;
			
			# Konfiguration der URLs
			$this->guildurl = @sprintf('%sguild.php?g=%d',BLASCURL, $this->guildid);
			$this->charurl  = @sprintf('%s?c=',BLASCURL);
			$this->imgchar  = 'images/races/';
			$this->imgpvpr  = 'images/PvPRanking/';
			

			
			# Daten ermitteln und in einem Array ablegen.
			if(!($this->file = file_get_contents($this->guildurl)))
				$this->BlascError(1);
			 
			$this->guild = @unserialize(gzuncompress($this->file));					
			# Standardkonfiguration für die Anzeige der Tabelle erzeugen			
			
			# Tabelle erstellen
			$this->CreateTable();
		
		}
		
		# Fehlerausgabe
		function BLASCError($num)
		{
			if($this->language != 'DE' && $this->language != 'EN') 
				die('Invalid language configuration. Please choose DE or EN or leave it blank for default.');
				
			$errorFile = @sprintf('include/_messages_%s.inc', strtolower($this->language));
			$this->CheckForFile($errorFile);
				
			$fp = @file($errorFile);
			for($x = 0; $x < sizeof($fp); $x++)
			{
				list($linenum, $line) = explode('=', $fp[$x]);
				if($linenum == $num) {
					$errorMessage = trim($line);
					break;
				}
			}
			$fp = null;
			
			if(empty($errorMessage)) die('Unknown error.');
			else die($errorMessage);
		}
		# Prüfen ob buffed.de erreichbar ist.
		function IsOnline()
		{
			if(!($fp = @fsockopen('www.buffed.de', 80, &$errno , &$errstr , 1))) $this->BLASCError(2);
			else $fp = null;
		}
		# Template erzeugen
		function CreateTable()
		{
			foreach($this->guild['character'] as $c) 
			{
				$mainjobs = '';
				$secjobs  = '';
				
				# Bilder erzeugen
				$raceimage = @sprintf('%s-%s.png', $c['race'], $c['sex']);
				$pvpimage = ($c['pvprank'] > 0) 
						  ? @sprintf('PvPRank%s.png', $c['pvprank']) 
						  : 'space.gif';
			
				# HauptBerufe ermitteln und erstellen
				foreach($c['skills']['Berufe'] as $b)
				{
					list($bname, $bskill) = each($c['skills']['Berufe']);
					$value = $bskill['value'];
					$max   = $bskill['max'];
					$percent = (100/$max*$value);
					$btpl = $this->Template('jobline');
					$btpl->Add('JOB',	  $bname);
					$btpl->Add('SKILL',	$value);
					$btpl->Add('SKILLMAX', $max);
					$btpl->Add('JOBMETER', $percent);
				
					$mainjobs .= $btpl->Out();
				}
				# Sekundäre Fähigkeiten ermitteln und erstellen
				foreach($c['skills']['Sekundäre Fertigkeiten'] as $b)
				{
					list($bname, $bskill) = each($c['skills']['Sekundäre Fertigkeiten']);
					$value = $bskill['value'];
					$max   = $bskill['max'];
					$percent = (100/$max*$value);					
					$btpl = $this->Template('jobline');
					$btpl->Add('JOB',	  $bname);
					$btpl->Add('SKILL',	$value);	
					$btpl->Add('SKILLMAX', $max);					
					$btpl->Add('JOBMETER', $percent);
				
					$secjobs .= $btpl->Out();
				}				
							
				# Gildentitel
				$guild_title = ($c['guild_rank'] != 0) 
							 ? $c['guild_title'] 
							 : @sprintf('<font class="leader">%s</font>', $c['guild_title']);
							
				# Templatezeile generieren
				$mtpl = new Template('memberline');
				$mtpl->Add('CHARURL', $this->charurl . $c['id']);
				$mtpl->Add('RACEIMAGE', $this->imgchar . $raceimage);
				$mtpl->Add('PVPIMAGE',  $this->imgpvpr . $pvpimage);
				$mtpl->Add('NAME',  $c['name']);
				$mtpl->Add('PVP',   $this->NumToPvPRank($c['pvprank'],$this->guild['faction']));
				$mtpl->Add('LEVEL', $c['level']);
				$mtpl->Add('RACE',  $c['race']);
				$mtpl->Add('CLASS', $c['class']);
				$mtpl->Add('UPDATED', $c['lastupdate']);				
				$mtpl->Add('TXT_MAIN_JOB', $this->gettext('TXT_MAIN_JOB'));
				$mtpl->Add('TXT_SEC_JOB', $this->gettext('TXT_SEC_JOB'));
				$mtpl->Add('GUILDTITLE', $guild_title);
				$mtpl->Add('MAIN_JOBS', $mainjobs);
				$mtpl->Add('SEC_JOBS', $secjobs);
				
				$memberlines .= $mtpl->Out();
			}

			# Namensliste ermitteln und erstellen
			foreach($this->guild['character'] as $ca) {
				$memberlist .= @sprintf(' | <a href="#%s">%s</a> ', $ca['name'], $ca['name']);
			}
			
			$this->tpl = $this->Template('chartable');
			$this->tpl->Add('ID', $this->guildid);
			$this->tpl->Add('TXT_GUILD', $this->gettext('TXT_GUILD'));
			$this->tpl->Add('TXT_GUILDCOUNT', $this->gettext('TXT_GUILDCOUNT'));
			$this->tpl->Add('TXT_GUILDTITLE', $this->gettext('TXT_GUILDTITLE'));
			$this->tpl->Add('TXT_LEVEL', $this->gettext('TXT_LEVEL'));
			$this->tpl->Add('TXT_RACE',  $this->gettext('TXT_RACE'));
			$this->tpl->Add('TXT_CLASS', $this->gettext('TXT_CLASS'));
			$this->tpl->Add('GUILDNAME',   $this->guild['guild_name']);
			$this->tpl->Add('GUILDCOUNT',  $this->guild['numchars']);
			$this->tpl->Add('REALM', 	   $this->guild['server']);
			$this->tpl->Add('MEMBER_LIST', $memberlist);
			$this->tpl->Add('MEMBER_LINES',$memberlines);
		}
		# Prüfen ob benötigte Dateien vorhanden sind.
		function CheckForFile($file) 
		{
			if(!file_exists($file)) 
				die('File' . $file . ' is missing in /include/!');
		}
		# Text aus dem Languagefile holen
		function GetText($mark)
		{
			if($this->language != 'DE' && $this->language != 'EN') 
				die('Invalid language configuration. Please choose DE or EN or leave it blank for default.');
				
			$txtFile = @sprintf('include/_templatetxts_%s.inc', strtolower($this->language));
			$this->CheckForFile($txtFile);
				
			$fp = @file($txtFile);
			for($x = 0; $x < sizeof($fp); $x++)
			{
				list($linemark, $line) = explode('=', $fp[$x]);
				if($linemark == $mark) {
					$message = trim($line);
					break;
				}
			}
			$fp = null;
			
			if(empty($message)) return ('Unknown');			
			else return $message;
		}
		# PVP Ränke übersetzen
		function NumToPvPRank($num, $faction)
		{
			$ranking['DE'] = Array(
				"H" => Array(
					0 => 'kein Rang', 1 => 'Späher', 2 => 'Grunzer', 3 => 'Waffenträger', 
					4 => 'Schlachtrufer', 5 => 'Rottenmeister', 6 => 'Steingardist', 7 => 'Blutgardist', 
					8 => 'Zornbringer', 9 => 'Klinge der Horde', 10 => 'Feldherr', 11 => 'Sturmreiter', 
					12 => 'General', 13 => 'Kriegsfürst', 14 => 'Oberster Kriegsfürst'
					),
				"A" => Array(
					0 => 'kein Rang', 1 => 'Gefreiter', 2 => 'Fußknecht', 3 => 'Landsknecht', 
					4 => 'Feldwebel', 5 => 'Fähnrich', 6 => 'Leutnant', 7 => 'Hauptmann',
					8 => 'Kürassier', 9 => 'Ritter der Allianz', 10 => 'Feldkommandant', 
					11 => 'Rittmeister', 12 => 'Marschall', 13 => 'Feldmarschall', 14 => 'Großmarschall'
					)
			);
			$ranking['EN'] = Array(
				"H" => Array(
					0 => 'no ranking', 1 => 'Scout', 2 => 'Grunt', 3 => 'Sergeant', 4 => 'Senior Sergeant', 
					5 => 'First Sergeant', 6 => 'Stone Guard', 7 => 'Blood Guard', 8 => 'Legionnare', 
					9 => 'Centurion', 10 => 'Commander Champion', 11 => 'Lieutenant General', 
					12 => 'General', 13 => 'Warlord', 14 => 'High Warlord'
					),
				"A" => Array(
					0 => 'no ranking', 1 => 'Private', 2 => 'Corporal', 3 => 'Sergeant', 4 => 'Master Sergeant', 
					5 => 'Sargeant Major', 6 => 'Knight', 7 => 'Knight Liertenant', 8 => 'Knight Captain', 
					9 => 'Knight Champion', 10 => 'Lieutenant', 11 => 'Commander', 12 => 'Marshal', 13 => 'Field Marshal', 
					14 => 'Grand Marshal'
					)
			);

			return $ranking[$this->language][$faction][$num];
		}
		# Ausgabe
		function Show()  
		{
			$content = trim($this->tpl->Out());
			echo (!empty($content)) ? $content : $this->BLASCerror(3); 
		}
	}
?>
```

Die Anwendung in bereits vorhandenen CMS Systemen/Seiten etc. ist denkbar einfach. 

```
require ("template.class.php");
require ("blasc.class.php");
	
$blasc = new blasc($id);
$blasc->Show();
```


Hier noch die template.class.php

```
<?
################################################################################
#																			  #
# ilphpTpl TEMPLATE CLASS v0.4a is Copyright (c)							   #
# Written and developed by Christian Zamora 2003-2004.						 #
#																			  #
# This class is free software; you can redistribute it and/or modify it		#
# under the terms of the GNU General Public License as published by the Free   #
# Software Foundation; either version 2 of the License, or (at your option)	#
# any later version.														   #
#																			  #
# This program is distributed in the hope that it will be useful, but		  #
# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY   #
# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License	  #
# for more details.															#
#																			  #
# edited by Ch. Zamora.														#
#																			  #
# Edit Log:																	#
# - dynamic template extension on template assign							  #
# - dynamic template directory choose on template assign					   #
#																			  #
# Note:																		#
# Create an xxxxx.php file and initiate this class like this:				  #
#																			  #
# include ('<classfilename>');												 #
#																			  #
# To initiate an HTML file do following:									   #
# $tpl = new Template('<templatefile>',['<templatedir>',['template extension']]);#
#																			  #
# Optional values are set to templates/ as directory and .tpl as default	   #
# Extension																	#
#																			  #
# To replace content use {NAME} Tags in the HTML file						  #
# e.g.:																		#
#	  If the template file is in the same directory like the scriptfile.	  #
#																			  #
#	  Filename: mytemplate.html											   #
#	  Your Template File source: <html>{TEXT}</html>						  #
#	  The way to replace it:												  #
#	  $tpl = new template('mytemplate','','.html');						   #
#	  $tpl->Add('TEXT', 'Hello World');									   #
#	  echo $tpl->Out();													   #
#	  This will print "Hello World" on your website.						  #
#																			  #
#																			  #
################################################################################
class Template
{
	  var $template = '';
	  var $fields   = Array();

	  /* initiate template
	  * @param filename name of the template file
	  * @param tpldir name of the directory where the templates are stored
	  *				  default is templates/
	  * @param tplext extension of the template files, default is *.tpl
	  */
	  function Template($filename, $tpldir = 'templates/', $tplext = '.html')
	  {
			   /* check if template file exists */
			   if (!file_exists($tpldir . $filename . $tplext)) {
				   $this->template = "Fehler: Template '$filename' "
									."existiert leider nicht!\n";
			   }
			   /* if template file exists , put line breaks
				* on every line in the html source
			   */
			   else {
				   $this->template = implode('', file($tpldir . $filename . $tplext));
			   }
	  }
	  
	  /* save content to replace
	  *  @param name
	  *  @param value
	  */
	  function Add($name, $value) {
			   $this->fields[$name] = $value;
	  }
	  
	  /* replace html source and print it */
	  function Out()
	  {
			   while( list($name, $value) = each($this->fields)) {
					$this->template = str_replace('{'.$name.'}', $value, $this->template);
			   }			   
			   return $this->template;
	  }
}
?>
```


----------



## BigWhoop (9. Oktober 2006)

Respekt 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 Das nenne ich mal schöne Antwort 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        



Schönen Script aber ich denke jetzt werden sich die Fragen hier im Forum wieder häufen 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        



*freu*


----------



## ZAM (9. Oktober 2006)

Vorteilhafter wäre ein "return" statt dem "echo" in der Klassenfunktion "Show()".
Damit kann man einen Cronjob füttern der aller X Stunden die Liste statisch erstellt. (Oder halt per Script).


----------



## Gast (19. Oktober 2006)

hi
ich habe nen webspace von buffed.de akteptieren die diesen http php zugriff?
und funzt das ganze mit ilch?

hier die url bekomme nur fehler -.-

www.ironforge-reloaded.de.vu


----------



## BigWhoop (19. Oktober 2006)

URL file-access is disabled in the server configuration 

^^ das sagt ja alles 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.


----------



## Rascal (19. Oktober 2006)

```
allow_url_fopen = On
```
...sag ich da nur 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.


----------



## BigWhoop (20. Oktober 2006)

Ich denke nicht das er die möglichkeit hat dies umzustellen 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.


----------



## Gast (20. Oktober 2006)

gibts denn nen free webspace wo es erlaubt is?


----------



## BigWhoop (20. Oktober 2006)

Da musst du nun selbst nach schauen 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        


oder du meldst dich mal bei mir 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 *hust*


----------



## BadBlackLion (30. Oktober 2006)

Ich weis ich bin faul und so weiter, aber kann mir jemand helfen?

Ich betreibe folgende Seite : http://badblacklion.funpic.de .

Ich habe versucht meine Gildeninfos von buffed.de herunterzuladen, leider enthält die PHP-Datei nur cryptische Zeichen  


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 

Wo muss ich diese Datei einbinden? Wie würde das aussehen?

Danke schon im Voraus


----------



## Rascal (31. Oktober 2006)

Wie wärs damit: Du liest den ERSTEN Post dieses Topics....

*kopfschüttel*


----------



## IdeF|ks (9. Dezember 2006)

Moin moin,

ich versuche gerade verzweifelt ne PHP Datei zu schreiben, die mir die Daten in eine lokale MySQL DB überträgt.

Aber irgendwie kommt immer nur Kauderwelsch raus. 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        




Ich bin bereits mit zwei bekannten den Code stundenlang durchgegangen aber wir finden den Fehler nicht.

Auf einer anderen Testumgebung tritt das Problem genauso auf.


Gruß Jonathan // Chiisai

Edit: Fehlerhaften Code entfernt damit es nicht noch verwirrender wird als es jetzt schon hier im Forum ist.


----------



## Gast (9. Dezember 2006)

OK, vllt waren wir nur ein wenig übermüdet. 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 Innerhalb von 48 Std 2 Std Schlaf sollte einem zu denken geben. 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        



Der Fehler ist gefunden.

Der erste Teil ist geschafft.

Jetzt nur noch die Berufe und deren Attribute in andere Tabellen, Beziehungen setzen und fertig is es. 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        



Wenn es fertig ist und mein Bekannter, der die Hauptarbeit gemacht hat, damit einverstanden ist, biete ich das ganze schön kommentiert auf unserer neuen Gilden HP zum DL an.


Bis dahin erst man gute N8 zusammen.


----------



## IdeF|ks (9. Dezember 2006)

Verdammt. Ich bin zu müde um zu raffen, dass ich gar nicht angemeldet bin. 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.


----------



## Xathras (9. Dezember 2006)

> Verdammt. Ich bin zu müde um zu raffen, dass ich gar nicht angemeldet bin.


dann würde ich dir empfehlen den homestone zu benutzen und ein paar std zu schlafen... mit der ruhexp morgen kannst du locker den level ähm bzw. das script schaffen 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.


----------



## Schaddi (14. Dezember 2006)

Also die Sachen die ich hier runtergeladen habe funktionieren nicht oder sind nicht erreichbar.

Die Vorlage die es gibt ist Binäry hochgeladen worden und auch unbrauchbar.

Viele Links funktionieren nicht um einmal in Quelltexte schielen zu können.

Auch die Verlinkungen weichen ab von dem was vorgegeben wird einzutragen.

Hat nicht irgendwer statt 75 unterschiedlicher Beiträge fertige Scripte zum runterladen und abändern auf eigene Bedürfnisse?
Mir fehlt hier ehrlich der rote Faden ...

Thx & cu


----------



## *BigWhoop* (Gast) (14. Dezember 2006)

Schaddi schrieb:


> Also die Sachen die ich hier runtergeladen habe funktionieren nicht oder sind nicht erreichbar.
> 
> Die Vorlage die es gibt ist Binäry hochgeladen worden und auch unbrauchbar.
> 
> ...


dann meld dich bei mir in ICQ bei Fragen 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 ICQ# 92029650


----------



## MasterCassim1 (26. Dezember 2006)

Hatte mich vor kurzem selbst mal an einem Script versucht, dass die Daten in eine MySql Datenbank einträgt. Ich habe nur vergessen das Level zu übertragen, aber alles andere geht einwandfrei: Erweitert mit Level | Noch mal erweitert


```
<?php
  ## Mysql Connect
  include("include/mysql.php");

  ## Buffed Gildenliste aufruf
  $id = 69209;
  $url = "http://www.blasc.de/guild.php?g=".$id;

  $file = file_get_contents($url);
  if(!$file) die("Fehler beim Öffnen von $url");

  $guild = unserialize(gzuncompress($file));
  ## Ende des Aufrufs

  ## DB Eintragungen
  foreach($guild['character'] as $c) {
	$prüfen = mysql_query("SELECT * FROM memberliste WHERE name = '".$c['name']."'");
	if ((mysql_num_rows($prüfen)) == 0) {
	  $qry = mysql_query("INSERT INTO memberliste VALUES ('', '".$c["id"]."', '".$c["name"]."', '".$c['sex']."', '".$c['level']."', '".$c['guild_rank']."', '".$c['guild_title']."', '".$c['race']."', '".$c['class']."', '".$id."')");
	}
	while ($d = mysql_fetch_array($prüfen)) {
	  if(($c['guild_rank'] !== $d['guild_rank']) OR ($c['guild_title'] !== $d['guild_title']) OR ($c['level'] !== $d['level'])) {
		$qry = mysql_query("DELETE FROM memberliste WHERE name = '".$c['name']."'");
		$qry = mysql_query("INSERT INTO memberliste VALUES ('', '".$c["id"]."', '".$c["name"]."', '".$c['sex']."' , '".$c['level']."', '".$c['guild_rank']."', '".$c['guild_title']."', '".$c['race']."', '".$c['class']."', '".$id."')");
	  }
	}
	
  }
  ## Eintragungen Ende
  ## Ausgabe [gekürzt]
?>
```

P.s.: Habe nur die wichtigsten Daten in der Datenbank. Alle anderen habe ich nicht ausgelesen.


----------



## santrax (8. Januar 2007)

MasterCassim1 schrieb:


> ```
> ## DB Eintragungen
> foreach($guild['character'] as $c) {
> $prüfen = mysql_query("SELECT * FROM memberliste WHERE name = '".$c['name']."'");
> ...


Das Eintragen/Updaten des Datenbankeintrages würde sich verkürzen lassen indem Du dem Feld des Namens einen Unique Index verpasst und aus INSERT INTO ein REPLACE INTO machst.

Findet mysql keinen bestehenden Datensatz mit dem übergebenen namen, wird er eingefügt. Besteht bereits ein Datensatz mit dem Namen, wird dieser kurzerhand upgedatet 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        



ReadYa

Mike


----------



## xXxKrillexXx (12. Januar 2007)

also ich weis ja nich wie ihr das macht, aba ich als kompletter einsteiger versteh 1. mal nur bahnhof und 2.mal funzt das bei mir nich siehe  Legion der Verlassenen

wenn mir da jmd. helfen möchte hier de Quell text


```
<?php

$url = 'http://www.blasc.de/guild.php?g=63074';

$file = file_get_contents($url);
if(!$file) die("Fehler beim Öffnen von $url");

$guild = unserialize(gzuncompress($file));
print_r($guild);

?>
```

mfg. Krille


----------



## MasterCassim1 (12. Januar 2007)

santrax schrieb:


> Das Eintragen/Updaten des Datenbankeintrages würde sich verkürzen lassen indem Du dem Feld des Namens einen Unique Index verpasst und aus INSERT INTO ein REPLACE INTO machst.
> 
> Findet mysql keinen bestehenden Datensatz mit dem übergebenen namen, wird er eingefügt. Besteht bereits ein Datensatz mit dem Namen, wird dieser kurzerhand upgedatet
> 
> ...



Das stimmt : ) da ich mich aber mit mysql nicht so gut auskenne, habe ich das mal so gelöst. Alternativ hätte ich noch den UPDATE Befehl nehmen können, der mir aber nicht so leicht von der Hand geht : ) Es geht auf jeden Fall wie mal hier sieht. Ich werde aber mal deinen Vorschlag annehmen und es testen, dann bau ich noch ein, dass der nur alle xx Stunden updatet, weil das Script sonst zu lange braucht, wenn die Gilde grüßer wird ...


----------



## Rascal (15. Januar 2007)

xXxKrillexXx schrieb:


> ```
> <?php
> 
> $url = 'http://www.blasc.de/guild.php?g=63074';
> ...


Funzt bei mir ohne Probleme... ich vermute dein Server erlaubt keinen Zugriff auf entfernte Dateien (allow_url_fopen = Off)


----------



## *error* (Gast) (22. Januar 2007)

(vorausgesetzt, der Provider erlaubt, dass PHP HTTP-Zugriffe macht.)

hallo,
das ist mal wirklich was geiles ; )

einziges prob was ich zZ hab ... wo kann ich das einstellen ? php.ini oder liegt das mehr an firewall/apache einstellungen?

danke, lg


----------



## Gast (22. Januar 2007)

sry habs glaub ich überlesen ; )

beantworte meine frage selbst^^

allow_url_fopen = On


----------



## warrox (26. Januar 2007)

Halli hallo,
ist es eigentlich möglich den Bankinhalt auszulesen? Hoffe ich habe da jetzt nichts übersehen ;-)
MFG


----------



## BigWhoop (27. Januar 2007)

warrox schrieb:


> Halli hallo,
> ist es eigentlich möglich den Bankinhalt auszulesen? Hoffe ich habe da jetzt nichts übersehen ;-)
> MFG


ja, aber dies ist noch nicht in der schnittstelle und müsste über die seiten von blasc geparsed werden 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.


----------



## warrox (27. Januar 2007)

Alles klar ^^


----------



## Zidane1x (25. Februar 2007)

hmm



> Warning: file_get_contents() [function.file-get-contents]: URL file-access is disabled in the server configuration in /usr/export/www/vhosts/funnetwork/hosting/zid1x/blubb.php on line 5
> 
> Warning: file_get_contents(http://www.blasc.de/guild.php?g=80768) [function.file-get-contents]: failed to open stream: no suitable wrapper could be found in /usr/export/www/vhosts/funnetwork/hosting/zid1x/blubb.php on line 5
> Fehler beim Öffnen von http://www.blasc.de/guild.php?g=80768





funkt scheinbar nicht bei mir 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 gibt es noch eine andere Lösung wäre echt super



Rascal schrieb:


> Funzt bei mir ohne Probleme... ich vermute dein Server erlaubt keinen Zugriff auf entfernte Dateien (allow_url_fopen = Off)



hm das prob hab ich auch gibs ne andere mölichkeit?


----------



## Srabbel (10. März 2007)

Hi, ich check das nicht, bei mir zeig er mir das an:

Warning: main(inc_head_table.html) [function.main]: failed to open stream: No such file or directory in /usr/export/www/vhosts/funnetwork/hosting/imperiumdl/idl/index.php on line 49

Warning: main() [function.include]: Failed opening 'inc_head_table.html' for inclusion (include_path='.:') in /usr/export/www/vhosts/funnetwork/hosting/imperiumdl/idl/index.php on line 49

Warning: file_get_contents() [function.file-get-contents]: URL file-access is disabled in the server configuration in /usr/export/www/vhosts/funnetwork/hosting/imperiumdl/idl/index.php on line 57

Warning: file_get_contents(http://imperiumdl.im.funpic.de/idl/index.php?server=DE%20Final%20Beta%203&guild=BlackEight) [function.file-get-contents]: failed to open stream: no suitable wrapper could be found in /usr/export/www/vhosts/funnetwork/hosting/imperiumdl/idl/index.php on line 57
Fehler beim Öffnen von http://imperiumdl.im.funpic.de/idl/index.p...uild=BlackEight

kann mir einer helfen??


----------



## BigWhoop (11. März 2007)

Natürlich kann man das 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        



Die lösung so wie das Problem stehen hier:



> URL file-access is disabled in the server configuration in /usr/export/www/vhosts/funnetwork/hosting/imperiumdl/idl/index.php on line 57



mit anderen Worten: dein Provider erlaubt dir nicht auf externe datein zu zu greifen.

Lösung: Wechseln des Providers 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 !

gute nacht


----------



## Srabbel (12. März 2007)

Achso, ok danke.

Meinste mit Provieder T-online etc..?? oder meinen webhost?? weil ich heut eh einen neuen webhost bekomme^^ und soll das heissen das ich das nicht sehe aber die anderen??


----------



## BigWhoop (12. März 2007)

natürlich liegt es nicht am ISP sondern an deinem Hoster 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 entschuldige die schlechte Wortwahl !
wenn du eh umziehst dann kann es danach klappen.


----------



## Srabbel (13. März 2007)

coooooooooool 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 
^^ danke für die hilfe


----------



## iNaD (23. März 2007)

Ich habe zuerst überhaupt nicht kapiert wie das geht 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 
Und dann habe ich gestestet und ich muss sagen es funktioniert perfekt auf meinem Lokalem Webserver.
Dickes Lob von meiner Seite 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 

Aber eine Frage noch:
Wie kann ich z.B. das m vom Geschlecht in Männlich umwandeln?


----------



## BoNeaWaX (24. März 2007)

Ich nutze weiterhin den Code von Yiria, aber eines würde mich interessieren:



Grooth schrieb:


> Dank der grossartigen Hilfe von BigWhoop hab ich es jetzt auch hinbekommen - und unsere Gilde wird bei Blasc ausgelesen. guckst du hier So viel Unterstützung zu bekommen ist echt selten - vielen Dank dafür!
> 
> Grooth



@Grooth
wie hast du das 'lastupdate' in eine Ausgabe von Verstrichenen Tagen bekommen.
Ich habe in den Codes von BigWhoob nachgesehen, aber da wird das Datum nur in eine andere Form umgewandelt:

```
.date("d.m.Y",strtotime($c['lastupdate'])).
```

bekomme ich es eventuell damit hin:

```
function age($date) {

if (!$date) return false;
$year=0+substr($date,0,4);
$month=0+substr($date,5,2);
$day=0+substr($date,8,2);
$t=0;
$d=date("d");
$m=date("m");
$y=date("Y");
$age=$y-$year;

if ($month<$m) $t=-1;
else if ($m==$month AND $day<$d) $t=-1;

return ($age+$t);
}
```
Aber welche Variablen muss ich jetzt ersetzen um da jetzt das 'lastupdate' unter zu bringen?

Oder vielleicht doch ein ganz anderer Weg?

Schonmal Danke im Vorraus

Meine Testseite

*BoNe*


----------



## iNaD (24. März 2007)

So ich hab mich mal rangesetzt und ein bisschen mit dem Geschlecht und Rassen kram rumgespielt^^
Funktioniert auch endlich.
Aber kann mir einer sagen wie ich das mit den Berufen machen kann?
Weil ich krieg die einfach nicht ausgelesen. (Wahrscheinlich stell ich mich einfach zu dumm an^^)

Meine Testseite


----------



## BoNeaWaX (26. März 2007)

Ich habe mein Problem, durch ein wenig Probieren, nun in den Griff bekommen.

Ich nutze jetzt den Code:


```
$update = strtotime($c['lastupdate']);
$today = mktime();
$pop1 = date("j", strtotime($c['lastupdate']));
$pop2 = date("j", mktime());
$pop = $pop2 - $pop1;
$pup = date("G", mktime());

$seconds = $today - $update;

$days = $seconds / 86400;
$days = floor($days);

$temp_remainder = $seconds - ($days * 86400);
$hours = floor($temp_remainder / 3600);

$temp_remainder = $temp_remainder - ($hours * 3600);
$minutes = round($temp_remainder / 60, 0);


if ($pop == 1 ) {
	print "<td>gestern um ".date("G",strtotime($c['lastupdate']))." Uhr</td>";
	}
	elseif ($pop == 0 and $hours < 1 and $minutes == 1) {
	print "<td>heute vor ".$minutes." Minute</td>";
	}
	elseif ($pop == 0 and $hours < 1) {
	print "<td>heute vor ".$minutes." Minuten</td>";
	}
	elseif ($pop == 0 and $hours == 1) {
	print "<td>heute vor ".$hours." Stunde</td>";
	}
	elseif ($pop == 0 and $hours > 1) {
	print "<td>heute vor ".$hours." Stunden</td>";
	}
	else   {($dayx = $days + 1);
	print "<td>vor ".$dayx." Tagen</td>";
	}
```

Meine Testseite


----------



## BoNeaWaX (30. März 2007)

Gibt es denn eigentlich schon die Möglichkeit den Goldbesitz der einzelnen Chars auszulesen?


----------



## halfbaked (31. März 2007)

So kann das Ganze aussehn...

http://dasrudel.de.ki

Charliste bzw. Memberliste > twinks ">0"

Ist schon eine nette sache nur könnte das ganze mehr informationen über einen char enthalten

zur seite, das war mehr ein test, den ich noch nicht fertig hab... ^^ wie so oft 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.


----------



## BigWhoop (1. April 2007)

iNaD schrieb:


> So ich hab mich mal rangesetzt und ein bisschen mit dem Geschlecht und Rassen kram rumgespielt^^
> Funktioniert auch endlich.
> Aber kann mir einer sagen wie ich das mit den Berufen machen kann?
> Weil ich krieg die einfach nicht ausgelesen. (Wahrscheinlich stell ich mich einfach zu dumm an^^)
> ...


Nimm doch einfach das script von mir 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 Oder du schreibst mich mal an ^^ das hilft auch *g*


----------



## iNaD (1. April 2007)

BigWhoop schrieb:


> Nimm doch einfach das script von mir
> 
> 
> Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
> ...


Habs mittlerweile hinbekommen bei der neuen Memberliste^^
Trotzdem danke für das Angebot.
Bloß schade, dass man nicht mehr details anzeigen lassen kann^^


----------



## BigWhoop (1. April 2007)

Was willst du denn noch anzeigen lassen ?


----------



## BoNeaWaX (1. April 2007)

BigWhoop schrieb:


> Was willst du denn noch anzeigen lassen ?



Na, was die einzelnen Chars an Gold besitzen wäre zum Beispiel nicht schlecht.


----------



## BigWhoop (1. April 2007)

BoNeaWaX schrieb:


> Na, was die einzelnen Chars an Gold besitzen wäre zum Beispiel nicht schlecht.


achso du willst quasi das inventar und bankdaten haben ? gehen tut das 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 Ist aber umständlich. Musst dir hier mal alles durchlesen es gab da schon ein paar Tipps zu!


----------



## iNaD (1. April 2007)

Klar das wäre cool alles anzeigen zu lassen.
Aber dann muss man ja die ganze datenbank von buffed auslesen oder?


----------



## BoNeaWaX (2. April 2007)

BigWhoop schrieb:


> achso du willst quasi das inventar und bankdaten haben ? gehen tut das
> 
> 
> Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
> ...



Ich habe mir wirklich jeden einzelnen Eintrag durchgelesen, aber irgendwie war da nichts Handfestes dabei, wie ich einen Goldbetrag auslesen kann.
Oder habe ich was übersehen.
Verlinke mal, oder Zitiere bitte!

Besten Dank

*Der BoNe*


----------



## BigWhoop (3. April 2007)

ach ihr beiden 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 Ihr müsst die Internetseite parsen. Über die PHP Schnittstelle geht das natürlich nicht da der Wert ja nicht zur verfügung steht.


----------



## BoNeaWaX (4. April 2007)

BigWhoop schrieb:


> ach ihr beiden
> 
> 
> Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
> ...



Hm..   ok.
Und wie stell ich das an?  


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.


----------



## BigWhoop (5. April 2007)

vorallem brauchst du viel erfahrung in php und Zeit 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        


Dann öffnest du Wordpad und fängst an zu programieren.
Das Grundgrüst sieht so aus:


```
<?php
//hier kommt der Programiercode von dir rein
?>
```

hihi


----------



## Srabbel (5. April 2007)

huhu^^,

iihc hab e das prob das mein webhosterdas spärt oder so was kann ich da machen?? Ihc will das anzeigen lassen.

ich bin beim webhoster --> www.funpic.de <--


----------



## BigWhoop (5. April 2007)

Oh das ist einfach:

Webhoster wechseln.


----------



## BoNeaWaX (5. April 2007)

BigWhoop schrieb:


> vorallem brauchst du viel erfahrung in php und Zeit
> 
> 
> Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
> ...



Du bist lustig.
Soweit komm ich dann doch schon 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        


Was ich brauche ist lediglich ein kleiner Anstoß in die Richtung "parsen", den Rest bekomme ich schon irgendwie hin, hat ja per der PHP-Schnittstelle auch geklappt.
Vielleicht erbarmst du dich ja gegenüber einem noch nicht ganz so erfahrenen PHP-progger, der gewillst ist was zu lernen.
Und ist es nicht so: man lernt am besten, wenn man es tut!?!?

Gruß

*Der BoNe*


----------



## BigWhoop (8. April 2007)

Jau aber das würde hier im Forum dann doch ausarten sry.


----------



## BoNeaWaX (20. April 2007)

hier für alle, die gerne noch das Gold ausgelesen haben wollen.

Hab mir dann mal ein PHP-Buch besorgt. (bewirkt einiges an Wissenszuwachs, wenn man drin blättert. kann ich nur empfehlen 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

)


```
$urlgold = "http://www.buffed.de/character.php\?c=".$c['id']."";
$file2 = implode("", file($urlgold));
	if (preg_match("/Gold:(.*?)<img/i", $file2, $gold))
	{
		$gold = $gold[1];
	}
	else {
		$gold = "";
	}
	if (preg_match('/<img src="\/images\/wow\/gold.png" height="16" width="16" align="absmiddle">(.*?)<img/i', $file2, $silber))
	{
		$silber = $silber[1];
	}
	else {
		$silber = "";
	}
	if (preg_match('/<img src="\/images\/wow\/silver.png" height="16" width="16" align="absmiddle">(.*?)<img/i', $file2, $kupfer))
	{
		$kupfer = $kupfer[1];
	}
	else {
		$kupfer = "Keine Angaben";
	}
```

ansonsten hier nochmal meine Gildenübersicht

Gruß 

*Der BoNe*


----------



## BoNeaWaX (16. Mai 2007)

sorry, habe letztens mitbekommen, dass ich ein kleines Manko drin hatte.
Es kam zu Fehlern, wenn es zum Beispiel im Geldwert kein Silber oder Kupfer gab.
Habe dies nochmal überarbeitet und siehe da, es geht sogar noch einfacher:

```
$urlgold = "http://www.buffed.de/character.php\?c=".$c['id']."";
		$file2 = implode("", file($urlgold));
		if (preg_match("/Gold:<\/b>(.*?)<\/tr><\/table>/i", $file2, $gold))
		{
			$gold = $gold[1];
		}
		else {
			$gold = "Geldbeutel verloren";
			$fz = "10";
		}
```
einzige Voraussetzung ist, dass die Bilder "gold.png; silver.png; copper.png" in einem Pfad namens "images/wow/" in den Maßen 16x16 auf eurem Server zu finden sind.


----------



## Estron (8. August 2007)

Könnte man das net auch etwas ändern?
Blasc legt doch im WoW-Addon ordner eine datei an die nach beenden von WoW auf die Buffed-server per FTP hochgeladen wird.
Wie wäre es wenn man die Blasc-Datei parsen würde?
Ich hab mir die datei zwar noch nicht richtig angeschaut aber ich glaube es gibt da eine möglichkeit.

Naja zur Zeit hat bayern ja noch Sommerferien ich werd mich da mal dransetzen

MFG Estron


----------



## BigWhoop (9. August 2007)

Du tust dann einfach das gleiche wie der Server auf den du es hochlädst 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        



imho ist das eine simple xml datei die dort abgelegt und dann hochgeladen wird.

Nur müsstest du dann von jedem einzelnen immer die Datei einlesen lassen dessen daten du haben möchtest 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 Also Quasi ein eigenes Blasc netzwerk aufbauen denn dir reicht ja nicht die eine Datei.

da ist es simpler über die php schnittstelle alles auslesen zu lassen ^^


----------



## Estron (9. August 2007)

Dachte es geht noch nicht die Charakter-Infos per PHP abzurufen?
Ja das wäre dann sowas wie n kleines Blasc-Netzwerk aber wen stört es?
Es geht nur um meine Gilde nicht darum dem Blasc Netzwerk konkurrenz zu machen.
MFG Estron


----------



## BigWhoop (9. August 2007)

ähm was bitte genau willst du denn abrufen ?

oder

worüber meinst du reden wir hier seit Monaten ? 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.


----------



## Estron (9. August 2007)

http://wow.buffed.de/?c=2069460
Soetwas möchte ich für meine Gildenwebseite.
Aber für jeden Charakter aus meiner Gilde ein Script anzulegen dass die Buffedwebseite ausliest ist mir zu stressig.
Hab mir überlegt so wie hier bei buffed die Datei vom Blascprofiler zu nutzen.
Meine Gildenmember laden ihre daten hoch und fertig.

Ich habe das Problem dass Buffed.de bei mir und anderen aus der gilde seeeehr langsam läuft.
Dementsprechend läuft auch die abfrage über PHP langsam.
Deshalb wollte ich fragen ob man das auch auf diese art lösen kann.

MFG Estron


----------



## BigWhoop (9. August 2007)

Ja wie ich schon sagte ist das möglich.

Allerdings würde ja ein script reichen der das ausliest 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 dort einfach den namen eingeben und der liest den ensprechenden char aus ... viel spaß bei beiden lösungen 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.


----------



## Slate2k (1. September 2007)

Ist jetzt nur eine Frage, aber gibt es vieleicht eine Möglichkeit die Wow Arsenal seiten aus zu lesen?

z.B: diese => http://eu.wowarmory.com/guild-info.xml?r=Z...3%B6nix&p=1

(OK, ist sicher bischen zu viel verlangt *g* , aber einen Versuch ist es immer wert ^^)


----------



## BigWhoop (2. September 2007)

Slate2k schrieb:


> Ist jetzt nur eine Frage, aber gibt es vieleicht eine Möglichkeit die Wow Arsenal seiten aus zu lesen?
> 
> z.B: diese => http://eu.wowarmory.com/guild-info.xml?r=Z...3%B6nix&p=1
> 
> (OK, ist sicher bischen zu viel verlangt *g* , aber einen Versuch ist es immer wert ^^)


was hast du denn da bzw. damit vor ?


----------



## Scheffi (3. September 2007)

Xmasman schrieb:


> Wer jetzt wissen will wie es aussieht hier der link
> *»B8 Clan« *



Hallo Leute

ich benutze für unsere Gildenpage PHPkit und dreh bald durch ich kriege nur scheiß aus dem Array.

Kann bitte jemand erklären wie das hier funktionieren soll ???

Danke


----------



## BigWhoop (3. September 2007)

Scheffi schrieb:


> Hallo Leute
> 
> ich benutze für unsere Gildenpage PHPkit und dreh bald durch ich kriege nur scheiß aus dem Array.
> 
> ...


jau meld dich doch ieinfach bei mir 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.


----------



## D0ENER (3. September 2007)

ich nutze phpRaider und wollte dazu ein Tool schreiben das die Gildenliste aus dem Arsenal ausliest, und die Leute wählen dann ihren Char. Den ersten Schritt hab ich hinbekommen, am 2. Arbeite ich noch. Aber da hier Leute anscheinend auch Interesse an den Arsenaldaten haben poste ich mal mein Script (Achtung bin php Anfänger, ist unsauber gecoded). 



> <?php
> error_reporting(E_all);
> require_once('minixml.inc.php');
> ini_set("user_agent","Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.8.1.6) Gecko/20070725 Firefox/2.0.0.6");
> ...



Zum XML Parsen hab ich Minixml verwendet, kannst das auch ganz anders machen(und sicher weniger umständlich^^) 
Wichtig ist nur die Zeile 
ini_set("user_agent","Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.8.1.6) Gecko/20070725 Firefox/2.0.0.6"); 
um dem Arsenal vorzugaukeln das du einen modernen Browser hat, sonst kriegst du nicht die rohen XML-Daten

Was mich jetzt interessiert, welche Daten stellt Buffed alles als XML/PHP zur Verfügung. Als ich in unserem Forum Itemstats integriert habe, habe ich gemerkt das z.B. eine Itemlist.xml verfügbar ist. Am wichtigsten wäre für mich eine XML die die craftbaren Items / Enchants für die Berufe enthält, mit Namen und Link zu Blasc. Ist das vorhanden oder muss ich mir die Daten mit nem Textparser umständlich besorgen?


----------



## Scheffi (3. September 2007)

BigWhoop schrieb:


> jau meld dich doch ieinfach bei mir
> 
> 
> Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.



Ok dann melde ich mich bei dir ;-)

Also wenn ich das XML Array auf die Page setze kommt das raus:

260GnomHexenmeisterm3Raidmeister1542251101501101501752007-08-31 10:00:07 630GnomSchurkem12.Gildenmeister34337537537537537513015018751501502007-09-01 01:40:26 700GnomHexenmeisterm0Gildenmeister3753751742253753752252253003002007-09-03 11:40:05 650MenschMagierm2GM-Twink3753753603753603751751751501502007-09-03 01:50:17 10MenschMagierm8Twink2007-08-19 23:40:15 700ZwergKriegerm9Initiant3603753753753753751752252252007-09-02 21:30:29 120MenschMagierw9Initiant44751075327530752007-08-31 19:50:09 270NachtelfJägerm8Twink2007-08-25 06:00:03 410GnomHexenmeisterm5Veteran2007-08-25 06:00:03 210MenschMagierw8Twink2007-08-25 06:00:03 250GnomHexenmeisterw9Initiant11315046752752007-09-02 21:30:04 380MenschKriegerm9Initiant347556751501502007-09-01 10:50:06 600ZwergPriesterm9Initiant2007-09-03 03:00:11 570MenschKriegerm8Mitglied276300300300150150397575752007-09-03 12:00:09 290DraeneiPaladinm9Initiant2007-09-03 00:00:03 560NachtelfSchurkew9Initiant295300300300137575752007-09-02 14:40:14 560MenschPaladinw8Mitglied27530030030027130075752007-09-02 22:50:11


Wenn ich den PHP Array rauf setze kriege ich das raus:

http://wow-learningbydoing.de/include.php?...ae76b9ff9b3058a

Bitte um hilfe was ich falsch mache.

MfG Scheffi


----------



## BigWhoop (3. September 2007)

also DOENER du kannst dir mit dem php befehl "print_r" alles ausgeben lassen was in dem array steht.

und der andere ... das melden sollte wohl eher nicht hier passieren 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.


----------



## D0ENER (3. September 2007)

jojo die Daten aus dem Array werden in ne mySQL DB geschrieben, deswegen auch die Namensgebung, die Arraybezeichnung stimmt mit den Namen der Tabellen überein. Habe viel mehr das Problem mit dem Code von phpRaider, ist etwas zu professionell gemacht und ich muss mich erstmal in Objektorientiertes Programmieren einarbeiten. Der code in meinem Post war viel mehr als Antwort auf Slate2k gedacht 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.


----------



## Scheffi (3. September 2007)

BigWhoop schrieb:


> also DOENER du kannst dir mit dem php befehl "print_r" alles ausgeben lassen was in dem array steht.
> 
> und der andere ... das melden sollte wohl eher nicht hier passieren
> 
> ...




Wo dann ??? Ich weiß mir leider nicht mehr zu helfen in diesem Thema


----------



## BigWhoop (4. September 2007)

ich habe ja ein paar kontaktmöglichkeiten im Profil hinterlegt 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.


----------



## Fieberwahn (21. Oktober 2007)

JUHU! PhP klappt jetzt prima. ich hab auch ein bisschen mit dem Layout rumgespielt und skill-vortschrittsgrafiken via css-formatierter felder reingepackt:

http://souls-of-darkness.pytalhost.com/roster.php

thx 4 die schnittstelle. jetzt müssen nur noch alle gildenleute blasc installieren^^


----------



## fr34kwOw (4. November 2007)

Guten Tag,

Ich wollt fragen ob man die Gildenausgabe auch nach Klassen sotieren kann und wenn ja wie das geht. Zur Zeit verwende ich folgenenden Code.

```
<?
$url = 'http://www.buffed.de/guild.php?g=5185';

$file = file_get_contents('http://www.buffed.de/guild.php?g=5185');
if(!$file) die("Fehler beim Öffnen von $url");

$guild = unserialize(gzuncompress($file));
// print_r($guild);
echo'<table border=0 width=100% cellpadding=0 cellspacing=0 valign=middle>
<tr class="title">
<td class="title">Klasse/Name</td>
<td class="title">Level</td>
<td class="title">Rasse</td>
<td class="title">Rang</td>
</tr>';

foreach($guild['character'] as $c)
{

$wowklasse=clearfromtags($c['class']);
if($wowklasse =='Paladin') 
$wowklasse='<img src="images/Paladin.gif"/>';
if($wowklasse =='Krieger') 
$wowklasse='<img src="images/Warrior.gif"/>';
if($wowklasse =='Hexenmeister') 
$wowklasse='<img src="images/Warlock.gif"/>';
if($wowklasse =='Druide') 
$wowklasse='<img src="images/Druid.gif"/>';
if($wowklasse =='Jäger') 
$wowklasse='<img src="images/Hunter.gif"/>';
if($wowklasse =='Magier') 
$wowklasse='<img src="images/Mage.gif"/>';
if($wowklasse =='Priester') 
$wowklasse='<img src="images/Priest.gif"/>';
if($wowklasse =='Schurke') 
$wowklasse='<img src="images/Rogue.gif"/>';
if($wowklasse =='Schamane') 
$wowklasse='<img src="images/Shaman.gif"/>';

else
$wowklasse=''.$wowklasse.'';
print "<tr class=base1>";
print "<td class=base1>".$wowklasse." <strong>".$c['name']."</strong></td>";
print "<td class=base1>".$c['level']."</td>";
print "<td class=base1>".$c['race']."</td>";
print "<td>".$c['guild_title']."(".$c['guild_rank'].")</td>";
print "</tr>\n";
}
echo "</table>";
echo "Damit hier alle Gildenmitglieder Angezeigt werden können, benötigt jeder Spieler das Blasc 2.0 Addon. Welches kostenlos unter <a href=www.buffed.de>www.buffed.de</a> heruntergeladen werden kann."
?>
```
Danke für die Hilfe schon mal im vorraus.


----------



## BigWhoop (4. November 2007)

SElbstverständlich ist das kein PRoblem 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        



Du kannst die Ausgabe schleife dahingehend umsortieren oder du machst es über eine eigene DAtenbank.


----------



## fr34kwOw (4. November 2007)

könntes mir sagen wie? bin php noob 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.


----------



## BigWhoop (4. November 2007)

uffff kontaktier mich doch einfach mal dann schauen wir weiter.


----------



## iNaD (8. Dezember 2007)

Nur mal so eine Frage in den raum geworfen:
Hat schon jemand ein Script programmiert, was die PHP-Schnittstelle für anfänger benutzbar macht?
Also wo man nur in der Config ein paar einstellungen machen muss und Templates hat? Wenn nicht würde ich das vllt. machen.


----------



## BigWhoop (9. Dezember 2007)

jup ist schon lange passiert 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        



einfach nur gilden nummer ändern...fertig


----------



## iNaD (9. Dezember 2007)

Link dazu?
Würde mich mal interessieren.
Und wenn du mir den Link zur normalen Schnitstelle gibst, dann hast du mich nicht verstanden.

EDIT: Ich hoffe jemand liest das hier nochmal 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        


Ich arbeite nun an einem Script.
Demnächst stelle ich eine Demo auf meinen Space 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.


----------



## iNaD (9. Dezember 2007)

Sry für doppelpost, aber wollte mal wissen, was ihr von meiner bisherigen Arbeit haltet.
Habe max. ne Stunde dran gesessen:
http://wow.i-need-a-drink.de

Freue mich über Feedback.


----------



## BigWhoop (10. Dezember 2007)

das sieht ja sehr danach aus was es hier schon zu bekommen gibt ;-)
blätter ein paar Seiten zurück dann findest du einiges.


----------



## iNaD (10. Dezember 2007)

Klar aber meins soll einfacher werden für anfänger.
Also das sie nicht coden müssen etc. sondern das es nur eine Config gibt.
Und am besten natürlich mit vielen Features.


----------



## BigWhoop (10. Dezember 2007)

Wie schon gesagt gibt es das schon 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 muss nur die ID geändert werden.


----------



## iNaD (10. Dezember 2007)

Gib mal genauen Link pls.


----------



## BigWhoop (10. Dezember 2007)

du wirst doch auch noch suchen können oder? 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 Sind doch nicht mehr im Kindergarten. Vorallem wo du dir schon so ne mühe machst und ich dir vorher gesagt habe das es sinnlos ist da schon gemacht 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.


----------



## Bellanes (12. Januar 2008)

Slate2k schrieb:


> Ist jetzt nur eine Frage, aber gibt es vieleicht eine Möglichkeit die Wow Arsenal seiten aus zu lesen?
> 
> z.B: diese => http://eu.wowarmory.com/guild-info.xml?r=Z...3%B6nix&p=1
> 
> (OK, ist sicher bischen zu viel verlangt *g* , aber einen Versuch ist es immer wert ^^)





also ich hab mal eine anfrage bei blizzard für ein wbb3 Plugin gestellt ob ich dafür arsenal einmal die woche rausladen dürfte bei allen memberids (aktuell ca 100) unser gilde

drücken wir es mal so aus. wenn blizzard erkennt dass die XML Schnittstelle des arsenals von einer externen seite ausgelesen wird werden sie es unterbinden und es ist auch als fanseite nicht erlaubt diese schnittstelle zu verwenden (die haben es natürlich höflicher in ihrer mail ausgedrückt  


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 )


----------



## Scorpio (11. März 2008)

Das Auslesen des Armorys ist kein Problem und störte auf Anfrage auch keinen.

Wenn du per Script deinen User Agent auf ein Betriebssystem und einen Browser setzt, kann das Armory nicht unterscheiden ob du nun Script oder Benutzer bist.

Auslesen genauso einfach per XML in Struktur parsen, etc.


----------



## aykut (31. Januar 2009)

hat wer nen update diesbezüglich? 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        


ich würde gerne auch die Berufe und deren Skills anzeigen lassen... aber z.b. Inschriftenkunde wird ja nicht unter http://www.buffed.de/guild.php?g= mitgeliefert 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        




Pls help


----------



## digiheld (31. März 2009)

Hallo,

Ich habe hier alles abgesucht aber leider keine passende lösung gefunden. Warscheinlich weil es zu simpel ist.

Ich habe versucht diesen Code hier zum laufen zu kriegen. 



[codebox]
// Hier Server eintragen auf dem gespielt wird (für Leerzeichen = %20)

$server = "Laoch";

// Hier der Gildenname

$gildenname = "Scullcrusher";



$url = 'http://black-legion.info/guild_php.php?server='.$server.'&guild='.$gildenname;



$file = file_get_contents($url);

if(!$file) die("Fehler beim Öffnen von $url");



$guild = unserialize(gzuncompress($file));

print_r($guild);



print "";

foreach($guild['character'] as $c) {

    print "";

    print "".$c['name']."";

    print "".$c['level']."";

    print "".$c['race']."";

    print "".$c['class']."";

    print "\n";



}

?>

[/codebox]

leider bekomme ich folgende Fehlermeldung:

Warning: file_get_contents(http://black-legion.info/guild_php.php?server=Laoch&guild=Scullcrusher) [function.file-get-contents]: failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /var/www/phptest5.php on line 17
Fehler beim Öffnen von http://black-legion.info/guild_php.php?ser...ld=Scullcrusher



kann es sein das es für ROM noch nicht funktioniert?

und wenn doch was mache ich falsch?

gruss

digiheld




			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.


----------



## angelpilot (28. Januar 2010)

Moin,

wollte mal fragen ob die Schnittstelle evtl. um die Berufe beschnitten wurde oder werden diese nun an anderer Stelle zugänglich gemacht ?

aktuell ist halt nur folgendes im Array:


```
Array
(
 [id] => xxxxxxx
 [name] => xxxx
 [level] => 80
 [pvprank] => 0
 [race] => Blutelf
 [class] => Jäger
 [sex] => w
 [guild_rank] => 0
 [guild_title] => xxxxxxx
 [lastupdate] => 2009-01-09 17:31:01
)
```


----------



## Dynasty2410 (2. Juni 2010)

Mal eine kleine frage hat irgendwer schon fertige dateien die er zur verfügung stellen kann da mein php nun nicht unbedingt soweit ist dieses zusammen zu wursteln. Einfügen spezieller inhalte kann ich selber aber nicht das mit dem Programmieren.

Würde es schön finden wenn jemand was vollständiges hat 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.
        

 


P.S achja Spiele RoM 


Gibt es sowas für rom schon da server sind ja nicht wie bei wow auswählbar


----------



## fmhzomby (26. September 2010)

sicher 

Mein Link <-- so kann es aussehen 


```
cinfig.php ertelln

#----------------------- CONFIG Start ------------------------#

// SERVER AND GUILD SETTINGS
$config['server_name'] = 'die aldor'; 	// Name of the WoW Realm
$config['guild_name'] = 'die schattten der nacht'; 	// Name of your Guild

// GILDENRANG NAME DEFFINIEREN
$config['gildenrang0'] = 'Darkshadow'; 		 	//Guildrank1
$config['gildenrang1'] = 'ShadowOfficer'; 		//Guildrank2
$config['gildenrang2'] = 'Shadowkngiht'; 		//Guildrank3
$config['gildenrang3'] = 'Shadowrunner'; 		//Guildrank4
$config['gildenrang4'] = 'ShadowTwink'; 		//Guildrank5
$config['gildenrang5'] = 'ShadowTrial'; 		//Guildrank6
$config['gildenrang6'] = 'Shadow'; 			//Guildrank7
$config['gildenrang7'] = 'Shadow'; 			//Guildrank8


// MINDEST LVL DER ANZEIGE
$config['minlvl'] = '70';

// x stunden wann daten frisch vom server geholt werden
$config['time'] = 2;


// SETTINGS FOR THE GENERAL WEBSITE
$config['url_prefix_char'] = 'http://armory.wow-europe.com/character-sheet.xml?';	// Use for Char links
$config['url_prefix_armory'] = 'http://armory.wow-europe.com/'; 	// URL for the armory

//Bilder Anzeige in der Auflistung 0/1
$config['wow_bilder'] = 1;



#----------------------- CONFIG Ende ------------------------#
?>
```



```
in deine armory.php 

// INCLUDE EXTRA FUNCTIONS


include 'roster_functions.php';


// GET: SQL IMPORT STRING
$sql_import_mode = $_GET["sql"];
if($sql_import_mode == 'true'){
	$sql_import_mode = true;
} else {
	$sql_import_mode = false;
}
// GET: SORT FIELD
$sort_field = $_GET["sort"];
if($sort_field == ''){
	$sort_field = 'level';
}
// GET: SORT DIRECTION
$sort_direction = $_GET["direction"];
if($sort_direction == ''){
	$sort_direction = 'desc';
}

$count_Members = 0;
$count_Profs = 0;

$armory = new armory('roster', $config['server_name'], $config['guild_name'], NULL, NULL);

$xml_guild = $armory->pull_xml();


	$dira = $config['DIR_cache'];
	$dir = opendir ("./".$dira);
	$new_file_size = 0;
	$new_file_time = 0;
	$new_file_name = "";
	while (false !== ($file = readdir($dir))) {
 	if (strpos($file, 'guild-info' ) === false ) {
 	} else {
 	$file_size = filesize("$dira/$file");
 	$file_time = filemtime("$dira/$file");
 	if ( $file_size > 614 ) {
 	
				if ( $file_size >= $new_file_size ) {
 	
 	if ( $file_time >= $new_file_time ) {
 	
 	$new_file_size = $file_size;
 	$new_file_time = $file_time;
 	$new_file_name = $file;
 	}
 	} else {
 	$new_file_size = $file_size;
 	$new_file_time = $file_time;
 	$new_file_name = $file;
 	}
 	}
 	}
	}
	$cachedFile = $config['DIR_cache'].$new_file_name;
	$fh = fopen($cachedFile, 'r');
	$theData = fread($fh, filesize($cachedFile));
	fclose($fh);

	$array_Members = buildCharacterArray($xml_guild);
 
	$array_Members_sorted = sortCharacterArray($array_Members, $sort_field, $sort_direction);

	printCharacterArray($array_Members_sorted, $sort_field, $sort_direction);
	
	echo '<div align="center">'.base64_decode($str).'</div>'; 


?>
```


----------



## General Crime (21. Januar 2011)

Hallo Buffed User,
dieser Tread ist ja mitlerweile etwas veraltet das das Arsenal umgezogen ist.

Nun meine aktuelle Frage: Weiß jemand schon die neuen XML Links um eine neue Schnittstelle zu Basteln?

Die alten Links funktionieren Teilweise noch sind jedoch nicht mehr uptodate also die ausgelesenen daten sind alt.

Würd mich freuen wenn jemand schon mehr weis da sons meine Gildenhomepage komplett neu aufgebaut werden muss zumindest was die Char übersicht angeht!


----------

