Ein etwas komplexes System kann mir wer helfen?

www.rent-a-database.de/mysql

Und mit Datenbanken solltest du früher oder später sowieso anfangen
also mach es lieber jetzt als später. Sonst kommst du nie rein.

Mit Textdateien .. mh .. nicht so kompliziert wie man
glauben möchte aber kann einem noch immer Kopfschmerzen
verursachen. Versuch mal folgendes und überleg dir den
Rest dann selbst :

In die Datei games.txt speicherst du bei jedem neuen
Spiel einfach die Eingaben nach folgendem Muster :

game_id|score_a|score_b|player_a|player_b|confirm_flag;

z.B.
1|5|11|Gumball|FreshMeat|0°

PHP:
<?
$f = fopen("games.txt", "rb");
$content = file($f);
$temp_content = explode("°", $content);

foreach($temp_content as $temp_value)
{
 $temp_array = explode("|", $temp_var);
}
?>

Jetzt hast du in der letzten Stelle des Arrays
(also $temp_array[5]) die Visibility bzw. die
Bestätigung. Wenn diese Bestätigung 0 ist,
wurde der String frisch geschrieben und muss
noch bestätigt werden. Wenn der String 1 ist
ist er nach Bool TRUE und du kannst ihn in
deiner Ausgabe ganz einfach über 'if($confirm_flag)'
einblenden.

Kapiert ?
 
Okay, okay ..

ich opfere dir jetzt mal einen Teil meiner spärlichen
Zeit und du gibst mir dafür bei Gelegenheit einen aus.

PHP:
1|5|11|Gumball|FreshMeat|0°
//aufgeschlüsselt bedeutet daß :
Game ID : 1 
Score Player Gumball : 5 
Score Player FreshMeat : 11
Bestätigt : FALSE

//hier noch ein paar Beispiele :
2|4|1|Da Man|Palantir|1°
3|4|4|Da Man|FreshMeat|0°
4|6|15|Chromeshade|Palantir|1°

Jetzt brauchst du folgenden Script zum Auslesen
eines Spielergebniss :

PHP:
<?php
if(isset($HTTP_GET_VARS[game_id])) $game_id = $HTTP_GET_VARS[game_id];

$key_array = array("0" => "game_id",
                   "1" => "score_a",
                   "2" => "score_b",
                   "3" => "player_a",
                   "4" => "player_b",
                   "5" => "confirm_flag");

$temp_content = file("games.txt");

foreach($temp_content as $temp_key => $temp_value)
{
 $temp_write[] = $temp_value;
 $temp_array = explode("|", $temp_value);
 if($temp_array[0] == $game_id)
 { $game_key = $temp_key; }
 foreach($temp_array as $temp_key_2 => $temp_value_2)
 { $game[$temp_array[0][$key_array[$temp_key_2] = $temp_value_2; }
}

if($HTTP_POST_VARS[confirm_flag])
{
 $game_id = $HTTP_POST_VARS[game_id];
 $game_key = $HTTP_POST_VARS[game_key];

 $temp_game = $game[$game_id];
 $temp_game[confirm_flag] = 1;

 array_splice($temp_write, $game_key, 1);

 $output_new = implode("|", $temp_game);
 $output_new .= "\n";
 $output_old = implode("", $temp_write);

 $msg = "Das Ergebniss wurde bestätigt";

 echo($output_new);

 $f = @fopen("games.txt", "wb");
 fputs($f, $output_old);
 fclose($f);
 $f = @fopen("confirmed.txt", "ab");
 fputs($f, $output_new);
 fclose($f);
}
?>

<form action='<?php echo($HTTP_SERVER_VARS[PHP_SELF]); ?>' method='post'>
<table>
 <tr><td><?php echo($msg) ?></td></tr>
 <tr><td>'False' :<input type='radio' name='confirm_flag' value='0'></td></tr>
 <tr><td>'True' :<input type='radio' name='confirm_flag' value='1'></td></tr>
 <input type='hidden' name='game_id' value='<?php echo($game_id); ?>'>
 <input type='hidden' name='game_key' value='<?php echo($game_key); ?>'>
 <tr><td><input type='submit' name='abschicken' value='abschicken'></td></tr>
</form>
</table>

Also jetzt habe ich gerade keinen Nerv mehr auf den Script
und ich hab auch gerade noch anderes zu tun. Ich schaue mal
das ich den Script die Tage noch kommentiert bekomme.

Es gibt noch einen Fehler beim Schreiben in die Confirmed.txt
Datei. Wenn den jemand findet, wäre ich sehr dankbar.

Pfote, Kojote
Php junkie
 
nochmal ne kleine zwischenfrage, geht das hier auch:

Also es wird jetzt das spiel bestätigt, und dann wird das ergebnis auf eine andere Seite, was weiss ich "Ergebnisse", hinter die schon auf der Seite befindenden Spielpaarung geschrieben...Natürlich die dazugehörige Spielpaarung...

wäre das vielleicht möglich, indem ich in eine vorgefertigte txt datei die Spielpaarungen schon eintrage,und dann irgendwie in diese das ergebnis nur hinzufüge ? un in der datei ergebnisse lade ich diese datei dann ein?
 
Zuletzt bearbeitet:
Zurück