include und der böse Wolf :)
Verfasst: 07.09.2003 16:21
Ich hab ein File namens 'planeten.php'.
In diesem wird ermittelt wieviele Planeten & Sektoren pro Planet ein User unter Kontrolle hat (das ganze gehört zu einem MMOG).
Pro Planet wird nun ein Script für die am Planeten vorkommende Sektorenanzahl eingefügt.
(Hier 1 Sektor pro Planet, das file heißt 'sektor1.php')
Mein Problem ist nun folgendes:
Die beiden files funktionieren beide alleinstehend tadellos, wenn ich 'planeten.php' jedoch das file 'sektor1.php' includen lasse, bekomme ich ein zero sized reply.
Hier die Sources:
planeten.php
sektor1.php
Bitte um Hilfe *g*
Vielen Dank!
In diesem wird ermittelt wieviele Planeten & Sektoren pro Planet ein User unter Kontrolle hat (das ganze gehört zu einem MMOG).
Pro Planet wird nun ein Script für die am Planeten vorkommende Sektorenanzahl eingefügt.
(Hier 1 Sektor pro Planet, das file heißt 'sektor1.php')
Mein Problem ist nun folgendes:
Die beiden files funktionieren beide alleinstehend tadellos, wenn ich 'planeten.php' jedoch das file 'sektor1.php' includen lasse, bekomme ich ein zero sized reply.
Hier die Sources:
planeten.php
Code: Alles auswählen
<?php
session_start();
include('/srv/www/htdocs/connect.php');
$daten = "SELECT `besitz` FROM `user` WHERE `id`='" . $_SESSION['id'] . "'";
$daten = mysql_query($daten);
$daten = mysql_fetch_array($daten);
/* Script das irgendwie rausfindet, auf welchen Planeten man rumgammelt =) */
$besitz = $daten['besitz'];
$besitz = strtok($besitz,"§");
$i = 0;
$planeten_anzahl = 0;
while($besitz)
{
/*
Da es in userem MMOG möglich ist, mehrere Planeten zu besitzen, mehre Sektoren pro Planet UND diese getrennt zu verwalten, wird dieses Script schnell unübersichtlich.
Die allgemeine Form von $besitz sieht wie folgt aus:
PlanetID§Sektoren_unter_Kontrolle§PlanetID usw
d.h. wenn wir jedes zweite strtok zählen, erfahren wir wieviele Planeten der User besitzt, was unser 1. Ziel ist.
Somit wissen wir also, wieviele Tables wir brauchen.
*/
$i++;
if(($i % 2) == 1)
{
$planeten_anzahl++;
$planeten_id[$planeten_anzahl] = $besitz;
}
else
{
$sektoren[$planeten_anzahl] = $besitz;
}
$besitz = strtok("§");
}
for($i = 1; $i <= $planeten_anzahl; $i++)
{
if (
($sektoren[$i] == 1)
|| ($sektoren[$i] == 2)
|| ($sektoren[$i] == 3)
|| ($sektoren[$i] == 4)
|| ($sektoren[$i] == 5)
)
{
include('sektor1.php');
}
}
?>
Code: Alles auswählen
<?php
/*
Ein-Sektor : Das PHP Script für 1 Sektor auf einem Planet
Scriptvariablen:
+--------------------+-------+------------------------------------------+
| Variablenname | Typ | Verwendung |
+--------------------+-------+------------------------------------------+
| $_SESSION | Array | Session Informationen |
| | | |
| $planetare_daten | Array | DB Informationen ü. den Planeten |
| $prozentraten | Array | Jegliche % - Informationen |
| $besitzer_sektor | Array | Daten Besitzer der einzelnen Sektoren |
| $eigene_ressourcen | Array | Metall, Nahrung und Lemex |
+--------------------+-------+------------------------------------------+
| $koordinaten | Var | Koordinaten d. Planeten |
| $eigener_sektor | Var | Nummer d. eigenen Sektors |
+--------------------+-------+------------------------------------------+
*/
# Schritt 1 - Initialisierung der Hautvariablen
# $planetare_daten
$planetare_daten = "SELECT * FROM `planeten` WHERE `id`='".$planeten_id[$planeten_anzahl]."'";
$planetare_daten = mysql_query($planetare_daten);
$planetare_daten = mysql_fetch_array($planetare_daten);
# $koordinaten
$koordinaten = $planetare_daten['koordinaten'];
$koordinaten = str_replace("§",":",$koordinaten);
# $besitzer_sektor
$temp = $planetare_daten['besitzer'];
$temp = strtok($temp,"§");
$i = 0;
while($temp)
{
$i++;
$temp_besitzer[$i] = $temp;
$temp = strtok("§");
}
$temp_daten_1 = "SELECT `nickname`,`spezies`,`rasse`,`sternenbund` FROM `user` WHERE `id`='".$temp_besitzer['1']."'";
$temp_daten_1 = mysql_query($temp_daten_1);
$temp_daten_1 = mysql_fetch_array($temp_daten_1);
$temp_daten_2 = "SELECT `nickname`,`spezies`,`rasse`,`sternenbund` FROM `user` WHERE `id`='".$temp_besitzer['2']."'";
$temp_daten_2 = mysql_query($temp_daten_2);
$temp_daten_2 = mysql_fetch_array($temp_daten_2);
$temp_daten_3 = "SELECT `nickname`,`spezies`,`rasse`,`sternenbund` FROM `user` WHERE `id`='".$temp_besitzer['3']."'";
$temp_daten_3 = mysql_query($temp_daten_3);
$temp_daten_3 = mysql_fetch_array($temp_daten_3);
$temp_daten_4 = "SELECT `nickname`,`spezies`,`rasse`,`sternenbund` FROM `user` WHERE `id`='".$temp_besitzer['4']."'";
$temp_daten_4 = mysql_query($temp_daten_4);
$temp_daten_4 = mysql_fetch_array($temp_daten_4);
$temp_daten_5 = "SELECT `nickname`,`spezies`,`rasse`,`sternenbund` FROM `user` WHERE `id`='".$temp_besitzer['5']."'";
$temp_daten_5 = mysql_query($temp_daten_5);
$temp_daten_5 = mysql_fetch_array($temp_daten_5);
$besitzer_sektor = array(
"1" => array(
"id" => $temp_besitzer['1'],
"nickname" => $temp_daten_1['nickname'],
"spezies" => $temp_daten_1['spezies'],
"rasse" => $temp_daten_1['rasse'],
"sternenbund" => $temp_daten_1['sternenbund']
),
"2" => array(
"id" => $temp_besitzer['2'],
"nickname" => $temp_daten_2['nickname'],
"spezies" => $temp_daten_2['spezies'],
"rasse" => $temp_daten_2['rasse'],
"sternenbund" => $temp_daten_2['sternenbund']
),
"3" => array(
"id" => $temp_besitzer['3'],
"nickname" => $temp_daten_3['nickname'],
"spezies" => $temp_daten_3['spezies'],
"rasse" => $temp_daten_3['rasse'],
"sternenbund" => $temp_daten_3['sternenbund']
),
"4" => array(
"id" => $temp_besitzer['4'],
"nickname" => $temp_daten_4['nickname'],
"spezies" => $temp_daten_4['spezies'],
"rasse" => $temp_daten_4['rasse'],
"sternenbund" => $temp_daten_4['sternenbund']
),
"5" => array(
"id" => $temp_besitzer['5'],
"nickname" => $temp_daten_5['nickname'],
"spezies" => $temp_daten_5['spezies'],
"rasse" => $temp_daten_5['rasse'],
"sternenbund" => $temp_daten_5['sternenbund']
)
);
# Arrayform: $besitzer_sektor[Sektoren_Nummer][DB_Name] = Information
# zB $besitzer_sektor['1']['nickname'] = "LilaLemming"
# $eigener_sektor
$temp = $planetare_daten['besitzer'];
$temp = strtok($temp, "§");
$i = 0;
while($temp)
{
$i++;
$temp_sektoren[$i] = $temp;
$temp = strtok("§");
}
switch($_SESSION['id'])
{
case $temp_sektoren['1']: $eigener_sektor = 1; break;
case $temp_sektoren['2']: $eigener_sektor = 2; break;
case $temp_sektoren['3']: $eigener_sektor = 3; break;
case $temp_sektoren['4']: $eigener_sektor = 4; break;
case $temp_sektoren['5']: $eigener_sektor = 5; break;
DEFAULT: echo "ERROR";
}
# $eigene_ressourcen
$temp = $planetare_daten['lagernde_ressourcen'];
while($temp)
{
$i++;
if ($i == $eigener_sektor)
{
$temp_res = $temp;
}
$temp = strtok("§");
}
$temp_res = strtok($temp_res,"-");
$i = 0;
while($temp_res)
{
$i++;
$temp_ress_sorted[$i] = $temp_res;
$temp_res = strtok("-");
}
$eigene_ressourcen = array(
"metall" => $temp_ress_sorted['1'],
"nahrung" => $temp_ress_sorted['2'],
"lemex" => $temp_ress_sorted['3']
);
# $prozentraten
$temp = $planetare_daten['foerderungsquote'];
$temp = strtok($temp,"§");
$i = 0;
while($temp)
{
$i++;
$temp_foerderung[$i] = $temp;
strtok($temp);
}
$temp = $planetare_daten['vermehrungsquote'];
$i = 0;
while($temp)
{
$i++;
$temp_vermehrung[$i] = $temp;
strtok($temp);
}
$prozente = array(
"m4e" => $temp_vermehrung['1'],
"sov" => $temp_vermehrung['2'],
"tak" => $temp_vermehrung['3'],
"metall" => $temp_foerderung['1'],
"nahrung" => $temp_foerderung['2'],
"lemex" => $temp_foerderung['3']
);
# Ende Schritt 1 - Initialisierung d. wichtigsten Variablen
# Schritt 2 - Table & eingefügtes:
echo "<div align=\"center\">";
?>
<table border="1" width="80%">
<tr>
<td width="29%">
<table border="1" width="33%" height="151">
<tr>
<td width="7%" align="center" height="30">1</td>
<td width="31%" align="right" height="30">
<?php
echo $besitzer_sektor['1']['nickname'];
?>
</td>
<td width="63%" height="30">
<?php
echo $planetare_daten['name'];
?>
</td>
</tr>
<tr>
<td width="7%" align="center" height="30">2</td>
<td width="31%" align="right" height="30">
<?php
echo $besitzer_sektor['2'];
?>
</td>
<td width="63%" rowspan="3" height="86">
<p> </p>
</td>
</tr>
<tr>
<td width="7%" align="center" height="30">3</td>
<td width="31%" align="right" height="30">
<?php
echo $besitzer_sektor['3'];
?>
</td>
</tr>
<tr>
<td width="7%" align="center" height="30">4</td>
<td width="31%" align="right" height="30">
<?php
echo $besitzer_sektor['4'];
?>
</td>
</tr>
<tr>
<td width="7%" align="center" height="31">5</td>
<td width="31%" align="right" height="31">
<?php
echo $besitzer_sektor['5'];
?>
</td>
<td width="63%" height="31">
<p align="center">
<?php
echo $koordinaten;
?>
</p>
</td>
</tr>
</table>
</td>
<td width="71%">
<table border="1" width="101%" height="165">
<tr>
<td width="97%" height="33" align="center" colspan="6"></td>
</tr>
<tr>
<td width="26%" height="33" align="center" colspan="3">Sektor
<?php
echo $eigener_sektor;
?>
</td>
<td width="25%" height="33"></td>
<td width="22%" height="33" align="right">Bevölkerung</td>
<td width="28%" height="33"> gesamt 0.000.000</td>
</tr>
<tr>
<td width="7%" height="33" align="center">pic</td>
<td width="5%" height="33" align="right">
<?php
echo $prozente['metall'];
?>
%
</td>
<td width="14%" height="33" align="right">Metall:</td>
<td width="25%" height="33"><?php echo $ressourcen['metall']; ?></td>
<td width="22%" height="33" align="right">Gebäude</td>
<td width="28%" height="33"></td>
</tr>
<tr>
<td width="7%" height="33" align="center">pic</td>
<td width="5%" height="33" align="right">
<?php
echo $prozente['metall'];
?>
%
</td>
<td width="14%" height="33" align="right">Nahrung:</td>
<td width="25%" height="33"><?php echo $ressourcen['nahrung']; ?></td>
<td width="22%" height="33" align="right">Ausbildung</td>
<td width="28%" height="33" align="right"></td>
</tr>
<tr>
<td width="7%" height="33" align="center">pic</td>
<td width="5%" height="33" align="right">
<?php
echo $prozente['metall'];
?>
%
</td>
<td width="14%" height="33" align="right">Lemex:</td>
<td width="25%" height="33"><?php echo $ressourcen['lemex']; ?></td>
<td width="22%" height="33" align="right">Produktion</td>
<td width="28%" height="33" align="right">
<p align="center">Militär</td>
</tr>
</table>
</td>
</tr>
</table>
</div>
Vielen Dank!