PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : content system


HoPPeL
18.07.2006, 08:39:30
Huhu

ich versuch mich seit kurzem mit php und komm auch ganz gut damit zurecht... jetzt wollte ich mich mal an eine einfache homepage mit news-management-system ranwagen...

vor ein paar Monaten habe ich mich mit einem fertigen clanscript beschäftigt... dabei sind mir verschiedene Dinge aufgefallen und ich wollte nun fragen, wie ich die am besten umsetzten kann... zum einen gabs es sogenannte MODs in einem ordner waren dann php-datein wie:

mod=members&action=teams
mod=squads&action=view&id=1
mod=users&action=view&id=24

außerdem musste ich in die index.php einfach nur variabeln einfügen und schon erschien das login menü etc... müsste ich nicht mindestens einen include befehl oder ähnliches verwenden???

wie geht all dies??

mfg

conmunich
18.07.2006, 11:12:36
wenn du dich erst seit kurzem mit php beschäftigst, wirst du dich wohl eher schwer tun, wenn du dich jetzt an ein news management system wagst.

mod=members&action=teams
mod=squads&action=view&id=1
mod=users&action=view&id=24

sind keine php dateien in ordnern, sondern an eine url angehängte, per get befehl übertragene variablen, mit denen eine bestimmte funktion, oder in dem fall ein mod aufgerufen wird.

da du ja sowieso hier auf selfphp bist, würde ich dir empfehlen, einen oder vielleicht auch mehrere blicke in die befehlsübersicht zu werfen. wenn du also vor hast, wirklich ein newsscript zu coden, dann musst du noch einiges lernen.

aber übung macht ja bekanntlich den meister. und probieren geht über studieren.

also viel erfolg

HoPPeL
18.07.2006, 11:23:12
nunja es ja nicht sooo komplex werden einfach nur ein bereich wo man eine news schreiben kann und die dann auf der hauptseite angezeigt wird... ich würde das ganze jetzt über include datein bewältigen... weiß aber nicht ob man das bei solchen Projekten so machen sollte...

mfg

conmunich
18.07.2006, 11:27:47
wie willst du das denn realisieren? in die datenbank schreiben oder in txt files ablegen?

include() ist nur einer von vielen funktionen in php. das musst du entscheiden, ob du alles in eine datei schreibst, oder ob du externe dateien einbinden willst. kommt immer darauf an, ob du z.b. mysql zugangsdaten oder die konfiguration für dein script benötigst. dann würde ich das immer mit externen dateien machen. schau dir aber dazu mal die unterschiede zwischen
include und include_once
require und require_once an

HoPPeL
18.07.2006, 11:32:45
ja schon klar, dass es verschieden importiertfunktionen gibt wie

include_once
require
require_once etc

gibt.

Und wie ich dies nun machen will: also man loggt sich ein, und wenn man dann auf einen link klickt (z.B. -News-) dass dann in der mitte mit hilfe von include ein newsformular aufgerufen wird...

Die daten werden dann in einer Datenbank bespeichert und dann auf der hauptseite ausgegeben...

mfg

conmunich
18.07.2006, 11:37:15
z.b.<?php
if($_GET['pfad']=="formular") {
include("formular.html");
}
?>
wenn du das dann so
http://www.deineseite.de/index.php?pfad=formular
in deinem browser eintippst, wird das formular inkludiert. das ist der einfachste weg, der mir bekannt ist.

HoPPeL
18.07.2006, 11:41:34
naja ich werd mal ein bisschen rumprobieren und schauen wie weit ich komm ...

thx und mfg

conmunich
18.07.2006, 11:42:33
jo viel erfolg!

HoPPeL
18.07.2006, 13:45:04
also was ich jetzt noch mal gerne wissen würde, wie soll ich soche Projekte aufbauen!!

soll ich alles in eigene datein auslagern und per include etc einfügen
oder alles in eine Datei hauen oder mit ner Template Engine ...

was ist zu bevorzugen, wie machen es die profies?

mfg

Quago
18.07.2006, 13:50:18
ich denke das es darauf ankommt was du damit machen willst!!!
und du solltest nicht davon ausgehen was die profis machen sondern an deine grenzen denken darüber hinaus evt. rücksicht auf den "dau" nehmen (nat. auch auf die anderen user) ladezeit spielt hier neben anderen faktoren auch eine rolle!!!!

HoPPeL
18.07.2006, 13:52:38
japp stimmt schon aber meistens, ist es ja so es die guten machen auch am Besten.

mir geht es vorallem um übersichtlichkeit und die geschwindigkeit...
deswegen will ich nicht umbedingt die include-variante verwenden weil ich mir da vorstellen kann schnell die übersicht zu verlieren..

mfg

conmunich
18.07.2006, 13:54:59
ein profi entscheidet je nach projekt. wenn es nur eine kleiner, erster versuch ist, dann lass mal die finger von ner template engine. ich würde erstmal nur config und mysql zugangsdaten in externe dateien packen. den rest in eine datei. dann wirst du dich sehr schnell mit if abfragen beschäftigen, die dich dein ganzes php leben begleiten werden.

ich würde bei sowas kleinem jeden bereich z.b. so abtrennen.if($_GET['aktion']=="betrachten") {
// dein php code, der die news ausgibt
} elseif($_GET['aktion']=="verfassen") {
include("formular.html");
} else {
echo "Bereich nicht verfuegbar";
}
dann kannst du alles in eine datei packen und es wird nur dann der jeweilige bereich aufgerufen, wenn du ihn per get aufrufst. nur so als simples beispiel.

HoPPeL
18.07.2006, 14:02:54
ich persönlich finde es sehr unübersichtlich alles in einer Datei zu packen...
bis jetzt habe ich alles in separate Datein gelegt... also eine datei für den login bereich eine datei für die newsausgabe eine für die eingabe... usw...

conmunich
18.07.2006, 14:07:15
ich sag ja. es liegt bei dir :)

HoPPeL
18.07.2006, 14:09:57
hum :-)
nunja ich will, dass es halt gleich perfekt ist und nicht, dass ich nachher noch 5 mal alles neu lernen muss...
und da mir alles mit ner template engine am übersichtlichsten erschein wäre es wohl am besten damit zu arbeiten ..?!

mfg

conmunich
18.07.2006, 14:15:43
sorry aber das geht nicht!

grundsätzlich ist es ja keine schlechte einstellung, wenn man gleich alles richtig machen will, aber glaub mir es ist besser wenn man ein paar mal reintappt in die falle. aus fehlern lernt man, das gilt ganz besonders bei php. wenn du dich mal stundenlang mit einer einzigen funktion rumplagst, nur weil du nicht weiterkommst, dann solltest du danach die funktion im schlaf beherrschen. und in zukunft lachst du dann höchstens, wenn die funktion wieder kommt ;)

Quago
18.07.2006, 14:18:40
au ja will auch bald wieder was zm lachen ich habe mich nun 5Tage damit rumgeschlagen meine übersichtsfunktion aufzustellen und nun muss ich das gleiche nochmal schreiben für ein anderen programmteil...
da müsste ich viel zu lachen bekommen hoff°!!

HoPPeL
18.07.2006, 14:29:46
hmmm nungut ich hab mir noch mal die Erklärung zu der template engine durchgelesen und lass wohl erstmal lieber die finger davon...
ich versuch erstmal so zu bewältigen und dann mal schauen...

bloß so wie ich es jetzt mache habe ich irgendwie das gefühl einen unsauberen Programmierstil zu haben und das wurmt mich irgendwie :-(

mfg

conmunich
18.07.2006, 14:37:26
naja du hast ja gesagt, du willst versuchen, gleich alles richtig zu machen. dann halte dich an den pear standard, der gerne von php entwicklern übernommen wird. http://pear.php.net/manual/de/standards.php aber im großen und ganzen, kann man eigentlich nur sagen. immer schön einrücken. if abfragen etc. schön gegliedert auflisten.

schreib den code am besten so, wie du ihn selbst gerne lesen würdest :)

HoPPeL
18.07.2006, 14:40:26
neeee das mein ich nicht, von der Ausrichtung her mach ichs eigentlich so wie man es machen soll...

ich meinte damit, dass ich sachen zu umständlich programmier...
naja wird wohl daran liegen, dass ich noch nicht so in der materie stecke :-)

mfg

conmunich
18.07.2006, 14:45:22
Ich zitiere mich mal selbst :)irgendwie merkt man so nach einigen jahren, dass der code, für den man vorher 30 zeilen gebraucht hat (oh wunder), auch in 10 zeilen passt und sogar den selben zweck erfüllt. man lacht über sich selbst und sagt sich "man war ich blöd"!

HoPPeL
18.07.2006, 14:53:11
:-) so schauts aus :-)

mfg thx

feuervogel
18.07.2006, 21:02:10
Ich zitiere mich mal selbst :)

wobei die lösung mit weniger zeilen nicht zwingend die bessere ist, ganz im gegenteil :-)

conmunich
18.07.2006, 21:05:31
nicht zwangsläufig. da hast du schon recht. aber es war ja nicht auf sicherheitsabfragen etc. bezogen. sondern auf die umständlichen wege, weil man die leichten eben meistens nicht sieht, wenn man nur eine lösung kennt.

weisst ja wie das ist. :)