Fonsi-Heizer
Mitglied
Hallo zusammen.
Ich darf wieder einmal um Euren Rat bitten.
Zum Anfang poste ich hier gleich mal den PHP Code um was es geht:
Was macht dieses Script überhaupt?
Dieses Script liest aus den Verzeichnissen Tisch-1,... die stand.txt aus und gibt diese aus. Des weiteren gibt es eine Schreibe in Datei Funktion, welche zurzeit in eine spieler.xml die Daten schreibt.
Wie Ihr sehen könnt, ist hier auch eine "veraltete Funktion" split bestandteil, welche ich mittlerweile nur mit explode ersetzt habe.
Was möchte ich nun erreichen / aktualisieren?
Ich möchte gerne, statt der spieler.xml die stand.txt beschreiben!
Des Weiteren hat sich der Aufbau der stand.txt geändert.
ALT:
NEU:
Wichtig wäre das die Spieler 1 - 4 via dem oben angeführten Script beschrieben werden könnten, sowie auch die Runden.
Hier noch einmal in Grün markiert welche Daten ich in die neue stand.txt schreiben möchte:
1;Spieler 1;0;Spieler 2;0;Spieler 3;0;Spieler 4;0;00:00:00;0;0
Vielen Dank im Voraus.
LG
Ich darf wieder einmal um Euren Rat bitten.
Zum Anfang poste ich hier gleich mal den PHP Code um was es geht:
PHP:
<html>
<head>
<style type="text/css">
body { background-color:#C0C0C0; font-family:Verdana; color:#FFFFFF;}
.tischueberschrift { color:#8A1A19; font-weight:bold; font-size:30pt;}
.staende { border:1px solid #8A1A19; background-color:#D4AAAB;}
td { font-size:10pt; font-weight:bold;}
.footer {font-family: verdana; font-size: 10px; color: #8A1A19; font-weight: bold;}
input.runden {width:30px;}
img {border:0;}
</style>
</head>
<body>
<?php
//phpinfo();
$aktualisieren = false;
if (isset($_REQUEST["do"])) {
$aktion = $_REQUEST["do"];
if ("reset" == $aktion) {
$tisch = $_REQUEST["tisch"];
$datei = "daten/$tisch/stand.txt";
$wdatei = fopen($datei, "w+");
fwrite($wdatei, "Spieler 1;000;Spieler 2;000;Spieler 3;000;Spieler 4;000;Runden;0;Status;0");
fclose($wdatei);
$aktualisieren = true;
}
if ("setrunde" == $aktion) {
$tisch = $_REQUEST["do_tisch"];
$runden = $_REQUEST["Runden_".$tisch];
$s1 = $_REQUEST["Runden_".$tisch];
$s2 = $_REQUEST["Runden_".$tisch];
$datei = "daten/$tisch/stand.txt";
$wdatei = fopen($datei, "w+");
fwrite($wdatei, "Spieler 1;000;Spieler 2;000;Spieler 3;000;Spieler 4;000;Runden;$runden;Status;0");
fclose($wdatei);
$aktualisieren = true;
}
}
if (isset($_REQUEST["speichern"])) {
$temp_tisch_old = "";
$temp_tisch_akt = "";
$temp_tisch_old_wert = "";
foreach ($_REQUEST as $post_key => $post_wert) {
$temp_tisch_akt = substr($post_key,0,8);
if (substr($post_key,0,5) == "Tisch") {
if ($temp_tisch_akt == $temp_tisch_old) {
//jetzt muss gespeichert werden
$post_pfad = split("_",$post_key);
$datei = "daten/$post_pfad[0]/spieler.xml";
//$datei = "daten/Tisch-1/spieler_temp.xml";
$post_wert = htmlentities($post_wert);
$temp_tisch_old_wert = htmlentities($temp_tisch_old_wert);
$wdatei = fopen($datei, "w+");
fwrite($wdatei, "<ArrayOfString>\n<string>$temp_tisch_old_wert</string>\n<string>$post_wert</string>\n<string>Spieler 3</string>\n<string>Spieler 4</string>\n</ArrayOfString>");
fclose($wdatei);
}
}
$temp_tisch_old = substr($post_key,0,8);
$temp_tisch_old_wert = $post_wert;
//phpinfo();
}
$aktualisieren = true;
}
if ($aktualisieren) {
//echo "<script>location.href=\"tische-internet-admin.php\";</script>";
}
?>
<center>
<span class="tischueberschrift">Turnierleitung Tisch-Administration</span>
</center><br>
<form name="form1" method="post" action="">
<table border="0" cellpadding="0" cellspacing="0" width="100%">
<tr>
<td width="33%"></td>
<td align="left" width="33%">
<?php
$Pfad="./daten/";
$verzeichnisse = array();
if($Verzeichniszeiger=opendir($Pfad))
{
//Filesystem sequentiell auslesen
while($Datei=readdir($Verzeichniszeiger))
{
//unötige Verzeichnisse entfernen
if ($Datei!="." && $Datei!=".." && $Datei!="undefined")
{
//Wenn es sich um eine Verzeichnis handelt
if(is_dir($Pfad.$Datei))
{
array_push($verzeichnisse, $Datei);
}
}
}
closedir($Verzeichniszeiger);
// Sortieren des Arrays
natsort ($verzeichnisse);
//Ausgabe der Verzeichnisse
}
?>
<table>
<tr>
<td></td>
<td><img src="bilder/spacer.gif" height="1px" width="100px"/></td>
<td></td>
<td><img src="bilder/spacer.gif" height="1px" width="300px"/></td>
<td><img src="bilder/spacer.gif" height="1px" width="30px"/></td>
<td></td>
<td><img src="bilder/spacer.gif" height="1px" width="30px"/></td>
<td><img src="bilder/spacer.gif" height="1px" width="300px"/></td>
<td></td>
<td><div align="center" class="footer">race to</div></td>
<td></td>
<td><img src="bilder/spacer.gif" height="1px" width="50px"/></td>
</tr>
<?php
foreach ($verzeichnisse as $v) {
if ($v != "Raster_GP_2013" && $v != "Raster_Salzburg_open" && $v != "Tisch-20" && $v != "Tisch-21" && $v != "Tisch-15" && $v != "Tisch-23" && $v != "Tisch-24" && $v != "Tisch-25" && $v != "Tisch-26" && $v != "Tisch-27" && $v != "Tisch-28" && $v != "Tisch-29" && $v != "Tisch-30") {
//Spielstand Datei
$file = "daten/$v/stand.txt";
$spielstand = implode ("", file ($file));
$spielstaende = explode (";", $spielstand);
$s1s= ltrim($spielstaende[1],"0");
$s2s = ltrim($spielstaende[3],"0");
$status = $spielstaende[11];
$status = is_numeric($status) ? $status : 3;
$runden = $spielstaende[9];
$runden = is_numeric($runden) ? $runden : 0;
echo "<tr>\n";
echo " <td bgcolor=\"#8A1A19\"> </td>\n";
echo " <td align=\"left\" class=\"staende\">\n";
echo " $v\n";
echo " </td>\n";
echo " <td><img src=\"css/$status.png\" alt=\"Tisch\" /></td>\n";
//Spieler Datei
$spielfile = "daten/$v/spieler.xml";
$spieler = implode ("", file ($spielfile));
preg_match_all("|<[^>]+>(.*)</[^>]+>|U",$spieler,$ausgabe, PREG_SET_ORDER);
$s1 = $ausgabe[0][1];
$s2 = $ausgabe[1][1];
$s1_form = str_replace(" ","-",$s1);
$s2_form = str_replace(" ","-",$s2);
if ($s1s == "") $s1s = "0";
if ($s2s == "") $s2s = "0";
echo " <td width=\"50%\" align=\"right\" class=\"staende\"> \n";
echo " <input name=\"".$v."_".$s1_form."\" type=\"text\" value=\"$s1\" maxlength=\"20\">\n";
echo " </td> \n";
echo " <td align=\"right\" class=\"staende\"> \n";
echo " " . $s1s . " \n";
echo " </td> \n";
echo " <td> \n";
echo " - \n";
echo " </td>\n";
echo " <td class=\"staende\"> \n";
echo " " . $s2s . " \n";
echo " </td>\n";
echo " <td width=\"50%\" align=\"left\" class=\"staende\"> \n";
echo " <input name=\"".$v."_".$s2_form."\" type=\"text\" value=\"$s2\" maxlength=\"20\">\n";
echo " </td>\n";
echo " <td></td>\n";
?>
<td class="staende"><input class="runden" name="Runden_<?php echo $v; ?>" type="text" value="<?php echo $runden; ?>" maxlength="2"></td>
<td></td>
<td>
<a href="#" title="<?php echo $v; ?> Runden setzen und reset" onClick="if (!confirm('Soll der Rundenstand an <?php echo $v; ?> und Stand zurückgesetzt werden?')) return false; document.getElementById('do').value='setrunde';document.getElementById('do_tisch').value='<?php echo $v; ?>'; document.form1.submit();"><img src="css/reset.png" alt="Runden Speichern" /></a>
<!--
<a href="tische-internet-admin.php?do=reset&tisch=<?php echo $v; ?>" title="<?php echo $v; ?> Reset" onclick="if (!confirm('Soll der <?php echo $v; ?> wirklich zurückgesetzt werden?')) return false;"><img src="css/reset.png" alt="Tisch zurücksetzen" /></a>--></td>
<?php
}
}
?>
</tr>
<tr>
<td></td>
<td><img src="bilder/spacer.gif" height="1px" width="100px"/></td>
<td></td>
<td><img src="bilder/spacer.gif" height="1px" width="300px"/></td>
<td><img src="bilder/spacer.gif" height="1px" width="30px"/></td>
<td></td>
<td><img src="bilder/spacer.gif" height="1px" width="30px"/></td>
<td align="right">
<input name="aktualisieren" type="submit" value="Refresh">
<input name="speichern" type="submit" value="Speichern">
<input name="do" id="do" type="hidden" value="">
<input name="do_tisch" id="do_tisch" type="hidden" value="">
</td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td colspan="12" class="footer">
<img src="css/0.png" alt="Tisch" /> Waiting
<img src="css/1.png" alt="Tisch" /> In progress
<img src="css/2.png" alt="Tisch" /> Finished
<img src="css/3.png" alt="Tisch" /> Dataset Error
</td>
</tr>
</table>
</td>
<td width="33%"></td>
</tr>
</table>
</form>
</body>
</html>
Was macht dieses Script überhaupt?
Dieses Script liest aus den Verzeichnissen Tisch-1,... die stand.txt aus und gibt diese aus. Des weiteren gibt es eine Schreibe in Datei Funktion, welche zurzeit in eine spieler.xml die Daten schreibt.
Wie Ihr sehen könnt, ist hier auch eine "veraltete Funktion" split bestandteil, welche ich mittlerweile nur mit explode ersetzt habe.
Was möchte ich nun erreichen / aktualisieren?
Ich möchte gerne, statt der spieler.xml die stand.txt beschreiben!
Des Weiteren hat sich der Aufbau der stand.txt geändert.
ALT:
Code:
Spieler 1;000;Spieler 2;000;Spieler 3;000;Spieler 4;000;Runden;0;Status;0
Code:
1;Spieler 1;0;Spieler 2;0;Spieler 3;0;Spieler 4;0;00:00:00;0;0
Wichtig wäre das die Spieler 1 - 4 via dem oben angeführten Script beschrieben werden könnten, sowie auch die Runden.
Hier noch einmal in Grün markiert welche Daten ich in die neue stand.txt schreiben möchte:
1;Spieler 1;0;Spieler 2;0;Spieler 3;0;Spieler 4;0;00:00:00;0;0
Vielen Dank im Voraus.
LG
Zuletzt bearbeitet: