PHP-ORM (MySQL)
-
Dafür dass du eine Diplom haben willst liest du echt ganz schön ungenau! Hier steht nichts von All-Round ORM Framework.
Es steht doch im Topic, es ist ein Php-ORM (MySQL)!
Naja wenn du denkst du bist besser wegen deinem Dipl. und du meinst ich bin Aufgrund einer Abschlussprüfung zum Fachinformaitker noch ein Teenager der einer Ausbildung im Dualem System nach geht, dann verstehe ich dein "brummiges" weil nicht wirklich Produktives, und im 2. Post schon fast profilierendes Verhalten, glaub mir so viel Lebenserfahrung habe ich, meine kleine 5 Jährige Tochter reagiert manchmal ähnlich
.
Und auf Grund meiner grottenschlechten Rechtschreibung die sich durch korekturlesen und Rechtschreibprüfung korrigieren lässt bei wichtigen Dingen wie eine Doku, bin ich auch kein Teenager oder Dir anderweitig geistig unterlegen.
Also entweder Produktiv oder lass es! Danke!
Zudem das ganze habe ich bisher in unter unter 70h geplant und implementiert sowie die Dokus!! (musste auch eine Projektdoku schreiben die Tut hier aber nichts bei!)
Ich kann ohne zu Prollen und Träumen behaupten das ich wohl ein sehr gutes und Produktives Interface auch für ein Paar mehr DBMS in unter 3 Monaten draus machen kann!
Aber meine Zwecke und dem des Abschlussprojektes genügt es!
Es waren auch keine Vorschläge wie, hmm das würde es brauchen um es gut zu mache oder so, im großen und ganzen kahm nur, ähh is scheisse, taugt nicht und und und! Achso und das du n Dipl. hast das kahm auch noch.
mfg. Patrick
Also wenn jemand wirklich noch was konstruktives beizutragen hat Danke, aber so sachen wie Profilieren und mir zu erzählen das andere Sachen So viel mehr können und so viel besser sind könnt Ihr bitte stecken lassen! Danke.
Das macht mich nicht sauer absolut nicht, aber dafür habe ich im Moment einfach keine Zeit!
-
Ich habe es nicht nötig, mich vor dir zu profilieren, also lassen wir das Thema.
Was soll ich denn konstruktives zu deiner Arbeit sagen? Willst du gelobt werden? Willst du hören, dass es genial war, was du in unter 70h geschafft hast? Es mag durchaus gut sein für 70h, keine Ahnung, aber als Produkt finde ich das in der jetzigen Form völlig unbrauchbar. Ich seh auch nicht, wie sich das großartig weiterentwicklen könnte. Und ich bin generell kein Fan davon, alles selber zu machen, was es schon gibt. Oder es muss zumindest einen guten Grund geben, warum man das macht. Entwirf doch ein komplettes ORM System (ohne es zu implementieren) und zeig warum es besser ist (oder für eine konkrete Aufgabe besser geeignet), als die vorhandenen. Aber einfach irgendwas anzufangen, was keiner braucht, und was sich in 10 Jahren potenziell zu etwas entwickeln könnte, was man evtl. brauchen könnte, aber was es schon lang gibt, halte ich für völlig daneben. Und das kannst du durchaus als konstruktive Kritik betrachten.
-
Patrick_C64 schrieb:
Ist zwar nicht OpenSource aber Freeware, also darf für kommerzielle und nicht kommerziele Projekte genutzt werden. Anpassungen, Erweiterungen und Modifikationen müssen aber durch den Author in einer offiziellen Version zu Verfügung gestellt werden. Können also an diesen gesendet werden.
Du könntest dir mal die LGPL angucken. Die beinhaltet ziemlich genau das was du hier beschreibst.
-
Hi Tobiking2,
danke für deine Konstruktive Kritik, ich denke werde mal schauen, aber ich Glaube die kommt in Frage.
Aus den Vorangeganen Beiträgen habe ich mir mal ein Fazit gezogen, um wenigsten für mein Projekt und die Dokumentation konstruktiven nutzen zu haben, bis auf TobiKing2 wurde ja hier in den 3 anderen Posts lediglich ein Standpunkt vertreten, Konstruktive Kritik in diesem Sinne war da wenn überhaupt Gering vorhanden.
Fazit
- die Zielgruppe muss Erkennen welchen nutzen das Interface hat
- die Einsatzgebiete müssen genauer aufgeführt werden
- einige Samplecodes wären nicht schlechtDies habe Ich Anhand des Pflichtenheftes einmal Aufgeführt. Das Resultat füge ich im Eröffnungspost ein.
Ich muss hier auch mein Projekt nicht rechtfertigen und es muss HIER für niemanden einen Sinn machen (klar schön wärs, und Lob? warum nicht ich bin ein Mensch), es wurde durch die IHK genehmigt bei der Ich das Projekt in Form eines Projektantrages prüfen und genehmigen lassen musste, die IHK befand es zum Zwecke der Prüfung als genehmigungsfähig. Zudem ist es für den geplanten Einsatz sehr wohl Produktiv und Wirtschaftlich.
Das Rad nicht neu zu Erfinden .... hmmm, den Drang zu verspüren und diesem auch mal nachzugehen sollte einem Programmierer im Blut liegen. Aber das ist eine Phylosophie über die man streiten kann.
-
bei mir kommt immer
Das Archiv konnte nicht angelegt werden
Archivtyp wird nicht unterstützt
soll ich mir jetzt extra unrar installieren
-
http://www.wobzip.org/file/XOjJP
<span style="visibility: hidden"><a href="http://www.xteenporn.net/" title="deutsch porno">deutsch porno</a><span style="visibility: hidden">deutsch porno</span></a>
<div style="display: none;">
<a href="http://t0fan.blogspot.com" title="özgün blog">özgün blog</a>
</div>
was macht das da
ist das bei euch auch oder hat das die seite einfach unverschämter weise angehängt
-
Hi, also ich packe eigtl. immer mit Rar.
Hätte auch spontan keine Idee was ich sonst anbieten sollte, gerade weil es sich in diesem Zusammenhang um ein kleines Packet handelt welches an Anwendungsprogrammierer als Zielgruppe gerichtet ist welche i.d.R. ein Programm auf dem Rechner haben welches das Rar Format entpacken kann. Dachte ich zumindest.
Ich kann dich nicht zwingen ein derartiges Programm zu Installieren, aber wenn du dich für das Interface interessierst und Dir es vllt. auch nützlich sein kann sollte dies ein geringes Übel darstellen.
-
zip ist relativ universell... und soo groß wird der kompressionsunterschied ja nicht sein
-
http://www.wobzip.org/file/XOjJP
Zitat:
<span style="visibility: hidden"><a href="http://www.xteenporn.net/" title="deutsch porno">deutsch porno</a><span style="visibility: hidden">deutsch porno</span></a><div style="display: none;">
<a href="http://t0fan.blogspot.com" title="özgün blog">özgün blog</a>
</div>
was macht das daist das bei euch auch oder hat das die seite einfach unverschämter weise angehängt
*PAAANIIKKKKK
Ich dachte im ersten Moment du meintest das kahm von meiner Seite *Schweiss abwisch
Denn mein CMS habe ich KOMPLETT in der letzten Woche geschrieben um mein Interface ausserhalb des Abschlussprojektes einzusetzen, und somit auch ein wenig die Fehlerfreiheit zu Prüfen die mir aufgrund der Gesamtsituation in dem Umfang (also im Produktivem Einstaz, Unittest waren natürclich Verbindlich!! )innerhalb der Realisierung des Projektes nicht möglich war/ist.
Und bei meinem ersten CMS hatte ich XSS Attacken
aber naja, aus Fehlern und Räder neu Erfinden lernt man halt
.
-
was mir total abgeht und umbedingt geändert werden muss, falls ich es nicht übersehen hab, ist das escapen der parameter also z.b. hier und fast an jeder stelle, wo du einen sql string bastelst, wo die werte vom user kommen
DBC.php zeile: 479
$value="'".$value."'"; if($count) $arg_set .=", "; $count++; $arg_set .= "`".$key."`=".$value;
-
umbedingt -> unbedingt
-
Ich dachte es sollte in der Verantwortung des Anwendungsprogrammiers bzw. der Schicht die darüber liegt liegen. Falls du in dem Zusammenhang das Prüfen und ersetzen auf gefährliche Zeichenfolgen meinst.
Wenn ich dich falsch verstanden habe korrigiere mich bzw. werde noch mal genauer.
EDIT:
Achso es wird gepfrüft ob es ein Numerischer Wert ist, ist es eine Zeichenfolge (also ein String) wird dieser in Hochkommas gesetzt damit selbst "gefährliche" Eingaben bzw. Daten als solche und nicht als Statement Interpretiert werden.
mfg. Patrick
(Edit: schnelle Kommunikation m.E. erfordert nicht das vorhandensein einer 100% korrekten Rechtschreibung (im schreibfluss enstehen fehler, eine korrektur ist zeitwaufwendig!), wesentlich ist das man Fähig ist das Wesentliche zu verstehen bzw. rauszufiltern. Musst also so unswesentliche Fehlerchen hier nicht Verbessern, in einer Fach und Dipl. Arbeit sieht das natürlich anders aus das ist mir durchaus Bewusst
)
-
Patrick_C64 schrieb:
Kann ich machen. Allerdings dachte ich es sollte in der Verantwortung des Anwendungsprogrammiers bzw. der Schicht die darüber liegt liegen. Falls du in dem Zusammenhang das Prüfen und ersetzen auf gefährliche Zeichenfolgen meinst.
würd es gleich in die dbc klasse einbauen... wenn ich mich richtig erinnere, ist die funktion auch sehr speziell bzw. benötigt eine mysql verbindungs-kennung und dann muss das in die dbc klasse. und den benutzer der 'library' escapen lassen ist keine gute idee, dafür baut man sich doch eine abstraktionsklasse, damit man solche fehler ausschließt
-
Also so wie Ich dich verstanden habe, ist eigtl. alles im Lot was du angesprochen hast ist gegeben!
Da nur numerische Werte "unescaped" in den Query gelangen ;)! Die Prüfung erfolgt auf unterster Ebene im DBC, welches bis auf Constructor, Connect so wie DatabaseSet und Get im Umfang meines Projektes unrelevant sind, und für sich als eigenständiges Interface betrachtet werden kann. Es stellt lediglich der ORMC und ORMO Klasse Funktionen zur direkten unkomplizierten Kommunikation mit dem DBMS zur Verfügung.
Habe auch schon über mein CMS viel probiert um SQL injection zu provozieren, ohne Erfolg. Also m.E. alles gut, wenn es jemand besser weiss ich lasse mich gerne belehren, das dient ja auch der Sache!
mfg. Patrick
-
http://php.net/manual/de/function.mysql-real-escape-string.php des muss einfach iwo rein... ich finds in keiner datei
-
Du verunsicherst mich
Deswegen habe ich es mal direkt geteset!
Das Beispiel auf der 1. Seite ist 1:1 Lauffähig wenn die Verbindung zu einem DBMS gegeben ist!
Ich habe mal folgene Zeilen beim erstellen einer Person benutzt, also den Namen mit potentiell gefährlichem gefühlt, denke ich zumindeset.
Alles sauber, keine Probleme!, Anscheinend doch einen der Wege genommen die nach Rom führen
$newUser = $ormCUser->NewObject(); $newUser->firstname ="Peter %s \x00 ' SELECT * FROM; \n \r "; $newUser->lastname ="Lustig";
Wenn du es schaffst über das Setzen eines Attributwertes eine SQL Injection auszulösen dann werde ich deinen Ratschlag nochmal berücksichtigen.
Ansonsten sehe ich da erstmal keinen Handlungsbedarf, Bedanke mich aber für deinen Konstruktiven Vorschlag und Beitrag, auch wenn mir dieser momentan nicht relevant erscheint!
mfg. Patrick
-
liegt evtl. an value,ENT_QUOTES); in ORMO.php z. 65 aber wie gesagt, sauber ist das nicht und imho auch nicht in der richtigen klasse. das ist aufgabe der dbc!
htmlspecialchars schrieb:
"'" (einfaches Anführungszeichen) wird nur zu ''', wenn ENT_QUOTES gesetzt ist.
damit schreibst du u.a. "'" statt "'" in deine db und damit völlig falsche werte.
-
['] statt [']
-
Gut vernünftig begründet und mit den Sachen aufgeführt die ich so nicht gesehen habe macht das NUN natürlich Sinn ;)!
Nun gut ich werde es berücksichtigen *grins!
Danke für deine Bemühung (und konstruktive hartnäckigkeit!)!
mfg. Patrick
[EDIT:
DONE!, werde ich ggf. heute noch mit einer bearbeiteten Doku (noch nicht Fehlerfrei!) hochladen. nochmal Danköö!
/EDIT]
-
Patrick_C64 schrieb:
DONE!, werde ich ggf. heute noch mit einer bearbeiteten Doku (noch nicht Fehlerfrei!) hochladen. nochmal Danköö!
Ein paar mehr Samples wären cool.
Wie sieht es zB aus wenn die Tabellen schon bestehen? Muss ich trotzdem jedesmal den Klassen-Code angeben?
Wie sieht es mit referenzen aus, wenn zB zu User noch die Tabelle Gruppe gibt nd daraus eine n:m Beziehung wird?eine kleine Demo App wäre für sowas richtig cool...
doctrine ist aktuell der Standard was ORM in PHP betrifft:
http://www.doctrine-project.org/projects/orm.html
Das ist sicher einen Blick Wert. Das löst viele Probleme relativ elegant.