Tom: Text mit Formular in Tabelle einfügen

Beitrag lesen

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>&gt;&gt;<a href="loeschen.php">Liste löschen</a>&lt;&lt;</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>