PHP-Schnittstelle

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
smile.gif
 
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.
ohmy.gif


Hier mal der entsprechende Code-Schnipsel:
Code:
$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.
cry.gif


Die Syntax und auch der Code an sich sollte in Ordnung sein, denn wenn ich:
Code:
$fertigkeiten = $s['Sekundäre Fertigkeiten'];
durch
Code:
$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.
 
Zuletzt bearbeitet:
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.
ohmy.gif


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!
clap.gif


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


Gruß
Yiria
 
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?
 
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

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?
[post="84136"][/post]​

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?
 
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:

Code:
<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«
 
Zuletzt bearbeitet von einem Moderator:
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.
 
Zuletzt bearbeitet von einem Moderator:
ochnee, bitte net
cry.gif

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....
victory.gif
 
Um ein Array zu sortieren benötigt es schon ein paar Zeilen Code. Hier eine Funktion.

Code:
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
 
Zuletzt bearbeitet von einem Moderator:
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">
<?
$url = 'http://black-legion.info/guild_php.php?server=Kel´Thuzad&guild=Die%20Schwarze%20Hand';

$file = file_get_contents('http://black-legion.info/guild_php.php?server=Kel´Thuzad&guild=Die%20Schwarze%20Hand');
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="#CCCCCC">
<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>
<td background="balken.gif" width="<?=$berufe[$berufname[$x]]['value'] ?>" height="9">
<?
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>
<td background="balken.gif" width="<?=$fertigkeiten[$fertigkeitenname[$x]]['value'] ?>" height="9">
<?
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>
 
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....
 
Bei dem Berufe Teil des Scripts habe ich ein kleines Problem:

Code:
<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.
 
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.

Code:
<?
$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!
cool.gif
 
Zuletzt bearbeitet:
Also eine ganz einfache Variante, die Mitglieder nach dem Gildenrang zu Sortieren, habe ich hier:

Code:
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?
 
Zuletzt bearbeitet von einem Moderator:
Anhang anzeigen 1532Hallo,

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
 
Zuletzt bearbeitet von einem Moderator:
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.
 
Das geht afaik nicht.
 
Zuletzt bearbeitet von einem Moderator:
@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:
Code:
$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?
 
Hallo zusammen das mit den Sekundäre Fähigkeiten liegt an dieser Zeile

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

wenn ihr daraus

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

macht, geht's auch wieder :-)

Danke für das genialle script

/leftaf
 
Zurück