Verbesserung der Arbeitsweise

suntrop

Erfahrenes Mitglied
Hallo,

ich habe vor einem viertel Jahr ein kleines Programm erstellt, dass Daten aus einem Formular entgegen nimmt, prüft, in einer DB speichert und an anderer Stelle wieder ausgibt.

Jetzt werde ich ein paar kleinere Funktionen hinzufügen und möchte evtl. sogar das ganze Programm neu schreiben, weil ich es nicht für sehr strukturiert halte.

Zzt. arbeite ich so:
PHP:
if (isset($_POST["submit_action"]))
{
	require_once("library/php/ease_form_vars.inc.php"); 
	require_once("library/php/check_form_fields.inc.php"); //gibt $form_field_error zurück

	if (false === $form_field_error)
	{
		require_once("library/php/send_email.inc.php"); //gibt $send_successful zurück

		if (true === $send_successful)
		{
			require_once("library/php/archive_userdata.inc.php");
		}
		header("Location: /de/kontakt_danke.php");
	}
} // Ende: Prüfung ob Formular abgeschickt wurde
Also lagere ich einfach alle Schritte - wie Validierung, E-Mail Versand, DB-Eintrag - in einzelne Dateien aus und füge sie im Formular per include ein.

Im Prinzip funktioniert es auch, nur glaube ich ist diese Art nicht üblich. Es bringt mir jetzt beim Update einige Schwierigkeiten.

Nur wie kann ich es besser machen? Ich versuche mich zwar momentan auch an OOP, aber kommen damit noch nicht ganz zu Rande. Verstehe nicht, wie ich es hier "einbinden" soll und wo der tatsächliche Vorteil liegt.

Und wenn ich hier mehr mit Funktionen arbeite (weiß noch nicht genau wie) habe ich doch den Nachteil, das ich die ganzen Variablen (ca. 30) jeder Funktion übergeben müsste.

Also Problem ist, dass ich gerade etwas fest stecke. Ich weiß es geht besser, aber nicht wie.

Würde mich über ein paar Tipps freuen.

Grüße
suntrop
 
Hi suntrop,

die Frage ist, willst du nur deine Anwendung ein wenig refactorisieren oder willst du richtig coden lernen?
Bei letzterem würde ich dir den Kauf gescheihter Lektüre nahelegen.
'PHP 5 aus erster Hand' ist zum Einsteigen ganz ok.
Dann kannst du mit dem erlernen neuer Techniken nach und nach diese auf deiner Anwendung umsetzen.
Sollte ersteres der Fall sein, wird es wohl schwierig deine Anwendung von Heute auf Morgen auf eine MVC und OO orientierte umzumünzen.
In dem Fall solltest du sie lassen wie sie ist, nach dem Motto 'never change a running system' :)

Mehr kann ich dir so leider nicht sagen, da diese 'paar kleinen Tipps' nach denen du gefragt hast, ganz schnell den Rahmen sprengen können.

Bei konkreten Fragen zu einzelnen Aspekten stehe ich natürlich gerne Rede und Antwort.

MFG

Shrink
 
Hallo shrink,

danke für deine Antwort. Das Buch hatte ich mir auch schon ins Auge gefasst, dann aber zurückgestellt, da ich gerade mit einem anderen arbeite. Ich werd es mir bestimmt noch anschaffen.

Und, ja ich will richtig programmieren lernen und nicht bei meinen mini Anwendungen bleiben. Ich weiß, es ist schwer eine Antwort auf mein Frage zu geben. Ich denke ich werde es einfach nach und nach weiter optimieren, in kleineren Schritten erstmal, statt von neu anzufangen.

Grüße
suntrop
 
Hallo,

tja, ich suche auch noch immer antworten zu so einer Frage, und leider wird man die Antwort in einem Forum nicht finden.

Das dauert einfach seine Zeit, und viel beschäftigen mit der Thematik um da einen Überblick zu bekommen.

Ich kann dir nur empfehlen guten Coden von anderen anzusehen, und fertige System zu durchleuchten.

Versuche zum Beispiel einmal eine Klasse zu machen, die es dir erlaubt anhand von einfach Methoden auf die DB zuzugreifen. (von mir aus zwei verschiedene Datenbanktypen)

Ich bin da selbst noch eher ein Neuling, und würde vermutlich selbst lange brauchen für sowas. Werde ich alles nachholen wenn ich Zeit habe.

Vielleicht konnte ich ein paar Tipps geben, und du hattest was davon.

lg Darian
 
Ja, danke dir Darian.

Jeder Hinweis ist mir willkommen. Ich "befürchte" auch, es dauert einfach … und dabei bin ich so ungeduldig^^
 
Ich geb dir mal n Tipp, Bücher wälzen ist doch echt langweilig und viel vergisst man wieder.
Das soll jetzt keine Werbung sein aber ich kann die das PHP5 Video von video2brain empfehlen, so kannst du das Video laufen lassen, dir die Lektionen angucken und ggf. gleich ausprobieren, mir zumindestens gefällt diese Lernvariante besser.
 
… du bist sicher, dass du nicht für video2brain arbeitest :-)

Im Ernst, das sind meistens sehr gute Video Workshops, habe sogar zwei hinter mir im Schrank liegen.
Langweilig ist es schon, nur liegt es glaube ich weniger am Medium als an der behandelten Thematik. Eine PHP Referenz ist so spannend wie eine Packung Saltzstangen zertreten und wieder zusammenzusetzen, aber es gibt auch interessantere Projekte in Büchern.

Mal sehen was die im Video Sortiment dem Programmierwilligen offerieren …


Grüße
suntrop
 
Wer möchte schon eine PHP Referenz lesen, wenn es php.net gibt ;)

Aber es gibt auch angenehme Bücher zu der Thematik, folgendes kann ich empfehlen:

Professionelle PHP5 Programmierung - von George Schlossnagle

Ansonsten schau doch einfach mal bei den größeren Frameworks rein (cakePHP, ZendFramework, ezComponents) und studiere den Quelltext. Oft bieten sie nette Ideen die man ggf. selber umsetzen möchte oder man benutzt sogar Komponenten des Frameworks oder steigt sogar völlig darauf um.

Ich lese übrigens lieber ein gutes Buch als ein Videotutorial zu sehen, da habe ich was in der Hand und kann auch mal eben schnell nachschlagen wenn ich es brauche... Und das Wichtigste: Ich muss nicht vor dem PC sitzen, um es zu lesen ;)
 
Zuletzt bearbeitet:
Das mache ich ab und an auch ganz gerne, Programm Code zu durchstöbern.

Frameworks sind für mich momentan noch zu groß, d.h. meine Programme sind zu klein, als dass ich z.B. das ZF dafür in Betrieb nehme. Für die Zukunft habe ich mir das jedoch schon auserkoren.

Danke für den Buchtipp, aber da schreck mich der Titel (Professionelle) bei meinem jetzigen Kenntnisstand noch zu sehr ab :) zumal ich mir heute morgen PHP 5 aus erster Hand bestellt habe. Aber auf dem Wunschzettel ist es schon gelandet.
 
Zurück