.
|
|
| Autor | Beitrag |
|---|---|
|
000 19.08.2002, 11:05 Washoe |
Langsam wird dieses Forum ja das PHP Board. Deswegen stell ich auch mal meine Fragen zu PHP. Eigendlich meine ich auch ich wäreschon recht fitt und hab mir auch einige Bücher gekauft(ausgeliehen). Das letzte war php de luxe, ein sehr informatives Buch, trotzdem hab ich noch einige Fragen: 1. Zu template systemen. Bei template systemen, werden ja die Platzhalter durch reg. Ausdrücke mit Inhalt ersetzt, oder durch stringreplace(). Trotzdem sind diese Methoden ja langsam. eswegen, kann man es auch als template lösung bezeichenen, wenn man die templates in eine php datei reinschreibt, ungefähr so:
Dabei wird die varibale einfach nur eingefügt, wenn man die datei included. Deswegen, kann man das so machen, oder sollte man doch ein templatesystem wie smarty odeer easytemplate verwenden. 2. XML, das raf ich überhaupt nicht, deswegen, ist meine Aussage so richtig? XML beschreibt einfach nur die Struktur, alles tags müssen geschlossen werden....... aber wo liegt der sinn, wenn ich die struktur bis zur vergasung beschreibe, das will dch niemand lesen. Und dann ja noch die möglichkeit einen parser zu schreiben, warum? Und warum ist xml so ein toles portables format, jeder parser kann das doch anders interpretieren ??? Ich weiß, da ist bei mir nicht viel vorhanden, aber ich hoffe einer nimmt sich diesem Problem an. 3. Sessions 4. md5() hashes. Dabei wird der string ja einwegverschlüsselt, und es wurde auch noch nicht gebrochen. Aber ist denn noch niemand auf die idee gekommen einfach alle möglichkeiten von z.b. 2-6 zeichen automatisch in eine datenbank zu schreiben, sodass man nur noch den hash eigeben muss. Oder ist das zu aufwänding weil es zuviele möglichkeiten gibt. 5. Pear, pear ist doch einfach eine sammlung von php klassen und funktionen? Also kann man pear einfach auf den webspache kopieren und dann den chache oder die crypto funktionen benutzen? Das ist jetzt hypothese: Wenn ich etwas kommerziell entwickel und pear benutze, darf ich das verkaufen? Ich brauch jetzt eigendlich keinen vortrag über GPL, aber gdarf man das? 6. Programmiert ihr OOP? Lohnt sich oop z.b bei einem Gästebuch? Oder nutzt ihr es überhaupt. 7. Kennt ihr eine seite, wo beschrieben wird, wie man an php probleme herangeht ud nicht wie man sie im code löst. --Dieser Beitrag wurde am 19.08.2002 um 11:55 von Washoe bearbeitet. |
|
Profil || Suche |
|
001 19.08.2002, 11:24 theDon |
zu 4 bei 2 bzw 3 zeichen geht das noch...bei 6 zeichen wirds dann schon sehr sehr viel --\o tanz den naziprau! o/ And more than ever, I hope to never fall, |
|
Profil || Suche |
|
002 19.08.2002, 11:54 Washoe |
Ja, aber wenn mans einmal gemacht hätte, wäre md5 sinnlos. Brauch man eigendlich doch nur ne große Datenbank. Und wenn der compi auch mherere Tage rechnet, warum nicht. -- |
|
Profil || Suche |
|
003 19.08.2002, 13:03 Kriz |
Das ist eine Frage der Kosten-Nutzen Betrachtung. Kein Kryptoanalytiker dieser Welt würde einen MD5-Hash serialisieren, wenn die Aufwandskosten zur Analyse (Strom, Ressourcen, Zeitkosten ect.) in der Summe größer-gleich dem Gewinn aus dem Verkauf/Gebrauch der Information ist. Sprich, niemand würde z.B. einen 1024 Bit Code knacken wollen, wenn der Gewinn aus der Information nur einen Bruchteil der Aufwandskosten beträgt, selbst wenn die Information bahnbrechend ect. wäre. --K:R-I)Z++ |
|
Profil || Suche |
|
004 19.08.2002, 13:13 Washoe |
Naja, aber ich hab ja auch noch mehr fragen. -- |
|
Profil || Suche |
|
005 19.08.2002, 15:16 TheTinySteini |
1. Also dieses Forum hier verwendet ein Mischmasch. Dabei wird einfach das Template in eine Datei geschrieben (z.B. .html-Datei) und an den Stellen, an denen die Replacements sein sollen, wird einfach z.B. $content hingeschrieben. Dann wird im PHP-Code diese Variable belegt, die Datei eingelesen und per eval ausgegeben. Diese Methode ist sehr schnell (jedenfalls schneller als str_replace und Co), kann aber natürlich Sicherheitslücken mit sich bringen, falls man sie nicht gewissenhaft anwendet. 2. XML hat den Vorteil von selbstdefinierten Tags, so dass man fast jede Text-/Datenstruktur in einer XML-Datei abspeichern könnte - nicht nur ganz normale HTML-Seiten. 3. Relativ sicher ist eine Kombination aus Sessionid und Cookie. Dann kannst du zum Beispiel die Sessionid direkt aus dem Cookie lesen und verhinderst so ein Sessionhitchhiking per GET. 4. wurde ja geregelt, 5. kenn ich nicht. 6. Ja. Aber hält sich eher in Grenzen. Ne Datenbank-Klasse kann z.B. ganz vernünftig sein, weil man dann verschiedene Datenbanken (z.B. MySQL, Postgresql...) über eine einzige definierte Schnittstelle ansprechen kann. 7. uhm... nö :-/ Aber Ansätze bekommt man öfter in den Kommentaren zu den Funktionen auf php.net. Oder in den dortigen Artikeln. Ansonsten, einfach mal hier höflich fragen =) --TheTinySteini |
|
Profil || Suche |
|
006 19.08.2002, 18:30 Washoe |
3. Okay, diese cookie + url sache ist dann wohl relativ sicher. Außer man hat keine cookies, aber das ist dann wohl eigenes pech. Zu PEAR, pear ist bei jeder php ausgabe dabei. Du sagtes ja, man kann eine datenbank abstraktion coden, das ist auch in pear drin. Auf jedenfall wird darüber viel in meinem buch geschrieben (php de luxe). Außerdem gibt es halt erweiterunge, z.b. einen einfachen userland chache. (einfach zu benutzen). Eigendlich müsste jetzt nur noch ein xml profi kommen, und mir den wirlichen sinn dahinter erklären. -- |
|
Profil || Suche |
|
007 19.08.2002, 18:31 [RMen]OneStone |
Nun ich bin kein XML Profi, aber ich finde es hat was von erweiterten .INI Dateien... (ganz abstrakt gesehen) ... :D --georg-wicherski@pixel-house.net | http://www.pixel-house.net/ - Coding Resource| http://www.google.de/ |
|
Profil || Suche |
|
008 19.08.2002, 18:39 Zeeke |
Es benutzen ja auch schon einige Anwendungen XML-Konfigurationsdateien... -- |
|
Profil || Suche |
|
009 19.08.2002, 18:46 dp Administrator |
ne db klasse ist imho recht sinnlos bzw ich halte nicht wirklich was davon. letztendlich ist die query language von db zu db doch verschieden, d.h. man muss eh viele queries abändern (oder zumindest ein paar), was bringt mir die klasse dann noch? gut, wenn man einfach statt $db = new mysql einfach $db = new oracle schreiben könnte und alles funzt dann wäre das geradezu prädestiniert aber so sehe ich da kein sinn.. hätten die dbs nicht alle ne etwas abgeänderte query language wären sie wohl alle mehr oder minder gleich .. -- |
|
Profil || Suche |
|
010 19.08.2002, 23:47 Kriz |
Hm, DP, was wäre damit: <?php K:R-I)Z++ |
|
Profil || Suche |
|
011 20.08.2002, 01:18 theDon |
du kannst den code für fehlerbehandlung in die klasse reinpacken --\o tanz den naziprau! o/ And more than ever, I hope to never fall, |
|
Profil || Suche |
|
012 20.08.2002, 12:00 Washoe |
Du kannst ja ne klasse code(gibts schon in pear). Wo du einfach sagst: verbinde mit einer oracle datenbank. Das meiste ist jetzt wohl klar, nur xml ist sonne sache. Irgendwie hab ich das noch nicht ganz verstanden, obwohl alles davon redet. -- |
|
Profil || Suche |
|
013 20.08.2002, 12:27 [RMen]OneStone |
Naja, du definierst halt deine eigenen Tags, und so kannst du auch andere Sprache als HTML mit XML realisieren, zum Beispiel Tags für ein eigenes Konfigurateions-XML, dann sähe deine config.ini z.B. so aus:
Die ganzen Tags wie configuration, runtime_parameters, etc. könntest du dir dann selber ausdenken und so verwenden. Du kannst mit XML also dann im Prinzip alles machen... --georg-wicherski@pixel-house.net | http://www.pixel-house.net/ - Coding Resource| http://www.google.de/ |
|
Profil || Suche |
|
014 20.08.2002, 12:31 [PorK] |
Klassen sind praktisch! Damit spart man sich Arbeit, Code etc. |
|
Profil || Suche |
|
015 20.08.2002, 14:44 apfelkorn |
Klassen für Datenbanken haben insofern einen Sinn, wenn sie als allgemeine Schnittstelle gelten, die einheitlichen Zugriff auf der einen Seite haben und auf der anderen Seite für jede Datenbank andere Kommandos ausgeben. So kann man zum Beispiel eine Datenbank öffnen, mit Parsern Querystrings zerlegen und eine reine Textdatenbank benutzen. Genauso ist es zum Beispiel beim Unterschied zwischen ODBC und mysql. Während ODBC auch wiederrum eine Schnittstelle zu Datenbanken ist, hat sie ein leicht anderes Querysystem als mysql. z.B.: mySql: als Aufruf aus dem PHP-Code sagt man nur: die Interfaceklasse übernimmt dann die Aufgabe, das jeweils zu Differenzieren, und, Gott sei Dank, sind wenigstens SQL-Datenbanken recht gleich. -- |
|
Profil || Suche |
|
016 20.08.2002, 16:21 dp Administrator |
@kriz @apfel bei der ganzen action darf man nicht vergessen, dass die meisten php scripts mysql verwenden bzw dass der hoster das so vorgibt. und wer was schnelleres als mysql brauch, der soll sich mal überlegen ob php überhaupt sinn macht, ne binary oder ein apache modul wären da eher angebracht. -- |
|
Profil || Suche |
|
017 20.08.2002, 17:12 TheTinySteini |
Ok, das bessere Datenbankmodul hat ASP.net (siehe c't). [edit] TheTinySteini Dieser Beitrag wurde am 20.08.2002 um 17:16 von TheTinySteini bearbeitet. |
|
Profil || Suche |
|
018 20.08.2002, 17:16 dp Administrator |
das kann man mit ner funktion auch. zugangsdaten müssen sowieso herumfliegen, weil die möglichst seperat in ein file müssen (sicherheit, install-script) O_o. zudem hats nen vorteil, wenn man die einzeln speichert: man kann sein home php kram auf den server uppen ohne dass man die zugangdaten ändern muss. gleiches gilt für entwicklungen mit mehreren beteiligten .. die zugangsdaten kommen nich ins cvs, es muss net jeder immer wieder sein kram nach nem checkout reinschreiben. --Dieser Beitrag wurde am 20.08.2002 um 17:17 von Darth Paul bearbeitet. |
|
Profil || Suche |
|
019 20.08.2002, 21:34 apfelkorn |
also um eins mal vorne weg zu nehmen: xml für konfigurationsdateien zu verwenden ist nun wirklich Hirnschrott. xml ist eine sog. MarkUp Language, was soviel heist wie "Beschreibungssprache". Damit kann man eine xhtml-Seite beschreiben, genauso wie auch ein Dokument (wie es zum Beispiel OpenOffice vormacht) oder einen Apfel: <?xml blablabla> oder eine Textdatei: Dämmert es jetzt einigen, wozu XML gut ist? Genauso kann man auch ein Bild mit XML verfassen: |
|
Profil || Suche |
|
020 20.08.2002, 21:54 theDon |
ich habs...(bens) notepad verwendet xml um dlls zu beschreiben --\o tanz den naziprau! o/ And more than ever, I hope to never fall, |
|
Profil || Suche |
|
021 20.08.2002, 22:53 [RMen]OneStone |
Hmm, dann muss man also eine proccess.xml machen, die die Änderungen beschreibt? --georg-wicherski@pixel-house.net | http://www.pixel-house.net/ - Coding Resource| http://www.google.de/ |
|
Profil || Suche |
|
022 20.08.2002, 23:48 Washoe |
Aber was ist das universelle an xml. Denn, was ist ein wurmstich? Wenn ich einen Europäer hab, der interpretiert wurmstich vielleicht als ekelig, wärend es irgendwo eine delikatesse ist. Außedem, warum soll ich einen apfel so beschreiben. Man kann sich doch wirklich nicht antun, sich durch solche dateien zu wülen. Das will so doch keiner sehen, wie genauch der apfel beschaffen ist. Außerdem ist der text so ja wunderbar zu lesen. XML dateien kann man also irgendwie interpretieren, wo ist da das universelle, wenn es jeder anders interpretiren kann. Oder wenn ich jetzt den russen ein xml dokument überreiche, das für uns nach frieden aussieht du russen interpretieren es als kriegserklärung(war gerade in "Der Anschlag"). Und wo ist der sinn in php genau? Ich lese immer nur, parser schreiben und domxml und so, aber wie kann ich es konkret zu meinem vorteil nutzen. -- |
|
Profil || Suche |
|
023 21.08.2002, 12:51 apfelkorn |
argh Also das mit XML verhält sich so, das es ein einheitliches Dateiformat ist, das von vielen interpretiert werden kann, aber nicht muss. Dazu gibts aber die schöne Möglichkeit der DtD's, die festlegen, welche Tags den überhaupt erlaubt sind. So kann es zum Beispiel passieren, das Microsoft Word und Wordperfect oder Lotus plötzlich genau das gleiche Dateiformat haben und man hat so nicht mehr das Problem des Konvertierens. Zum Wurmstich: Das war nur ein Beispiel, damit man sieht, was es denn mit der Beschreibung auf sich hat. Natürlich bleibt es dem Interpreter (Mensch oder Maschine) überlassen, ob das jetzt für ihn lecker oder ecklig ist, aber das ist ein Problem, das mit dem Dateiformat nichts zu tun hat. Man sagt einfach nur: Da ist ein Wurmstich. Den kann man entweder rausschneiden, oder man schmeisst den ganzen Apfel weg, oder man beisst genüßlich rein. Aber im Dateiformat steht nur, das da überhaupt einer ist. Zum Thema anders interpretieren: Das ist Strunks. Man kann auch die UN-Charta als eine Frechheit gegen die Souveränität des eigenen Landes interpretieren, oder ganz radikal gesagt können Nazis den Holocaust als Wohltat für die Menschheit interpretieren, Juden werden das natürlich ganz anders interpretieren. Interpretation ist immer eine Sache des Standpunktes, ob nun Internet Explorer ein HTML-Tag als ungültig interpretiert und Netscape 4.5 nun fröhlich anfängt loszublinken is ja nicht die Sache von HTML. Nur das W3C hat vorgegeben, das es dieses "<blink>"-Tag gar nicht gibt, genauso wie es auch das IE-"<marquee>"-Tag nicht gibt (Zum Glück). Zu PHP: So dom, xml und so haben eigentlich nichts mit PHP zu tun. und zu deiner Signatur: |
|
Profil || Suche |
|
024 21.08.2002, 14:14 Washoe |
@apfelkorn Zu Php, was hatte den das untere beispiel mit xml zu tun? Warum soll man denn einen parser proggen. Was bringt es mir denn? Und mit der scheiße, ich habs einfach mal so gehört, keine ahnung ob das politisch korrekt ist. -- |
|
Profil || Suche |
|

