Hello,
So nach einigen hin und her habe ich mal das auf die Beine gestellt. Kann man sicherlich noch einfacher machen aber da muss ich mich halt erstmal reinarbeiten xD. Aber bei meiner Version wird das Bearbeiten schwer ^^...werde noch mal weiter schauen ist ja nur der Anfang. Die anderen beiden Dateien stell ich mal nicht hier rein, die sind nicht so spannend:
Und schon ist es passiert...
Erst gecoded und nicht gelpant und nun sollen die Anderen es richten :-)
- Du verspielst die Möglichkeit, Daten und Darstellung getrennt zu halten.
- Du verspielst die Möglichkeit eines klar gegliederten und übersichtlichen
Konzeptes bei dr Steuerflußkontrolle
a.) Request erhalten und der passenden Ressource zuführen
b.) Auftrag ermitteln
c.) Daten übernehmen
d.) Daten prüfen
e.) Daten dazu holen, vervollständigen und verarbeiten
f.) verarbeitete Daten wegschreiben
g.) Ergebnis ermitteln und aufbereiten (nur Daten)
h.) Steuerelemente für Response festlegen und aufbereiten
i.) Darstellung auswählen
j.) h mit f und g zusammenführen
k.) Response abschicken
Ob man nach dieser Liste nun auch MVC-Patterns anwenden kann, überlass ich mal der allgemeinen Diskussion. Was habe ich vergessen in der Liste?
<?php
$datei = fopen("spieler.txt","a+");
erst prüfen, ob fopen() auch geklappt hat.
$wtcteam = $_POST["wtcteam"];
$gegnerteam = $_POST["gegnerteam"];
Erst prüfen, ob überhaupt ein POST-Request vorlag und ob die Variablen gesetzt sind!
Umkopieren von einer Variable in eine andere ohne jegliche weitere Verarbeitung ist Unsinn.
Benutze direkt die Werte in $_POST, dann weißt Du wenigstens, woher sie kamen
if($wtcteam == "" OR $gegnerteam == "")
{
echo "Bitte alle Felder ausfüllen!"; ### [1]
nicht Datenübernahme, erste Schritte der Verarbeitung. Formulierung von Meldungen und
Absenden der Meldung mischen. Web-Client-Server-Technik ist plumpe Batchverarbeitung
}
else
{
aus dem Folögenden eine Funktion machen!
nicht Daten und Darstellung vermischen, wenn es dafür keinen triftigen Grund gibt
fwrite($datei, "<table align="center">");
nicht mit den alten HTML-Attributen arbeiten, sondern CSS-Benutzung ermöglichen
fwrite($datei, "<tr>");
fwrite($datei, "<td width="150" align="center">");
fwrite($datei, $wtcteam);
durch diese Art der Speicherung ^ werden leider auch eingeschleuste Angriffe (JavaScript,
HTML, CSS, ...) mit abgespeichert (was erstmal nicht schlimm ist) und lassen sich bei der
Ausgabe nur schwer wieder entfernen (was schlimm werden kann)
fwrite($datei, "</td>");
fwrite($datei, "<td width="150" align="center">");
fwrite($datei, $gegnerteam);
fwrite($datei, "</td>");
fwrite($datei, "</tr>");
fwrite($datei, "</table>");
fclose($datei);
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
wieso erst hier Document-Type und HTML-Grundgerüst? Du hast doch bei [1] schon Ausgaben gemacht?
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Formularübergabe</title>
</head>
<body>
<form id="form1" name="form1" method="post" action="index.php">
Encryption-Type würde ich immer gleich mit angeben (multipart/form-data)
<p>Unser Team:
<input type="text" name="wtcteam" id="1" />
</p>
<p>Gegner Team:
<label>
<input type="text" name="gegnerteam" id="gegnerteam" />
</label>
</p>
<p>
<input name="Senden" type="submit" value="Eintragen" /></p>
</form><p><br />
Die Trennung von AUfgaben ist prinzipiell gut,
aber die Zerspliterung in einzelne Scripte sorgt auch für eine
Vervielfachung des Aufwandes für Zugangskontrolle, Sessions,
einheitliche Darstellung, usw.
überleg Dir das gut
<a href="spielernamen.php">>>Gehe zur Liste<<</a></p>
<p>>><a href="loeschen.php">Liste löschen</a><<</p>
</body>
</html>
Für den Start ist es trotzdem schon ganz gut, denn es sieht so aus, als würde es sogar funktionieren. Aber lasse diese erste Lösung besser noch nicht auf einem öffentlich zugänglichen Webspace laufen.
Vielleicht magst Du ja auch die eine oder andere Anregung erst noch einfließen lassen?
Liebe Grüße aus dem schönen Oberharz
Tom vom Berg
![](http://selfhtml.bitworks.de/Virencheck.gif)
--
Nur selber lernen macht schlau
<http://bergpost.annerschbarrich.de>