Hallo zusammen,
ich weiß das der Kickstarter KEIN Editor ist, aber wenn es darum geht "mal eben" nachträglich noch ein Datenbankfeld hinzuzufügen, dann habe ich das immer mit dem Kickstarter gemacht.
So lange das Projekt klein genug ist, ist das alles kein Problem, aber in meinem Fall arbeite ich mit IRRE und muss nach jedem Hinzufügen von Datenfeldern mit dem Kickstarter alle Änderungen bzgl. IRRE in der tca.php nachtragen.
Wie machen das die anderen Programmierer? Nutzen die den Kickstarter überhaupt noch oder machen die die Eintragungen ALLE komplett selber? Gibt's da irgendwo eine Doku zu?
froemken
Hallo,
ich hab da auch so meine Erfahrungen mit einer größeren Extension: 10 Tabellen, mind 10 irre-Felder usw.
Vorgensweise: kopie sichern und dann einfach mit winmerge oder ähnlichem programm die änderungen anzeigen lassen und nur das übernehmen was du neu brauchst, sind e meist nur 2 files (ext_tables, tca.php)
georg
Danke Dir...kannte die Software winmerge noch gar nicht. Ist auch schon installiert UND deutsch.
In diesem Zusammenhang will noch eine Frage los werden:
Der Kickstarter funktioniert immer nur auf dem Rechner auf dem ich die Extension entwickel. Wenn ich diese Extension dann auf den Server hochspiele und dann dort noch etwas verändern möchte, dann sind alle Daten für diese Extension nicht im Kickstarter enthalten. Heißt für mich der Kickstarter muss doch irgendwo auf meinem Entwicklungsrechner eine Datei haben, wo diese Daten hinterlegt sind.
Ich hab sie leider nicht gefunden. Ne Idee wo die ist?
wenn du alle files hochlädst sollte das eigentlich schon passen!
georg
Grundsätzlich nicht verkehrt...ich mach aber immer eine Extension daraus und importiere diese Extension dann wieder. Ich lade nicht die ganzen Dateien per FTP hoch.
Ich hab mir jetzt aber mal die Mühe gemacht und bin den Quellcode vom Kickstarter durchgegangen und hab eine Funktion gefunden, die die Datei [extkey]/doc/wizard_form.dat läd.
Und tatsächlich...dort steht auch noch meine alte Tabelle drin, die mit jedem Kickstarter-Update diese MD5-Fehlermeldungen bringen.
Die Datei sieht in etwa so aus:
a:4:{s:4:"save";a:3:{s:13:"extension_key";s:11:"sf_ebshaslo"...
und so weiter
Dabei habe ich herausgefunden, dass "a" für Array steht und die folgende Zahl für die Anzahl Elemente in diesem Array. "s" steht hierbei für string also text und die folgende Zahl dann für die Anzahl Zeichen des Textes. Die Werte innerhalb der Schleifenklammern geben dann die Werte des Arrays an. Wie man sieht gibt es auch Wertpaare ala extension_key="sf_ebshaslo" (siehe Beispiel oben).
Ich werd damit mal ein wenig "rumspielen", vielleich bekomm ich damit dann endlich diese Fehlermeldungen beim Kickstarterupdate weg.
froemken
Die Datei ist der Hammer...die ist ja noch schlimmer als die Registrierung von Windows. :-)
Macht man in dieser Datei auch nur einen Fehler, dann bricht das Script vom Kickstarter sofort ab und der Kickstarter sieht wieder aus, als würde man eine neue Extension programmieren wollen.
In meinem Falle habe ich nachträglich eine Tabelle umbenannt, aber es wurde nun für den alten Tabellennamen UND für den neuen Tabellennamen dieses GIF-Bildchen erzeugt. Zusätzlich kam nach der Speicherung die Meldung, dass der MD5-Hash-Wert nicht mehr stimmen würde. Die wollte ich nun weg bekommen und das geht tatsächlich mit dieser wizard_form.dat
Man braucht blos in dieser wizard_form.dat nach dem Dateinamen zu suchen, der nun überflüssig geworden ist und löscht das "s:[Zahl]:" davor, den Text selbst und das "s:Zahl:'[Wert]'" danach. Da dieser Wert in einem Array drinsteht muss natürlich auch die Anzahl dieses Arrays um 1 heruntergetzt werden. Also bewegt man den Cursor so weit nach vorne bis zum z.B. "a:21:{" und ändert diesen auf "a:20:{".
Jetzt die Datei speichern und beim nächsten Schreiben des Kickstarters ist der Fehler weg.
Bitte bitte bei solchen Aktionen immer eine Sicherung von dieser Datei machen, da wie schon gesagt, der Kickstarter die Verarbeitung bei einem Fehler sofort abbricht und nix mehr anzeigt.
froemken
Eventuell für die Zukunft:
http://www.php.net/serialize
http://www.php.net/unserialize
Ich weiß nicht, aber ich mach das immer alles in den Dateien selber, also über mein favorisierten Editor. Den Kickstarter benutze ich nur um das Grundgerüßt einmalig zu erstellen, der Rest passiert dann bei mir im Editor.
interessante Funktion...hmm...dachte bis gerade, da wäre wieder was selbstgestricktes von TYPO3 :o
Das mit in die Dateien reinschreiben habe ich versucht, aber irgendwie reicht da die tca.php anscheinend nicht alleine. Hab irgendwie das Gefühl, dass ich in 3-4 Dateien gleichzeitig was ändern muss, damit ich ein neues Datenbankfeld erhalte. Wenn ich da was vergesse, dann such ich mir bestimmt die Finger wund.
ich weiß das der Kickstarter KEIN Editor ist, aber wenn es darum geht "mal eben" nachträglich noch ein Datenbankfeld hinzuzufügen, dann habe ich das immer mit dem Kickstarter gemacht.
wie macht man das?
ich habe vor ein paar tagen mit dem kickstarter das grundgerüst einer extension gemacht und würde daran gerne ein paar änderungen vornehmen - wie mach ich das? kann ich die extension in den kickstarter irgendwie laden um die einstellungen abzuändern?
danke für eure hilfe schon im voraus.
grüsse aus den bergen.
roland
PS: hab an den dateien keine änderungen vorgenommen...
Dazu brauchst du nur in der Extensionliste auf deine installierte Extension klicken und dann oben rechts in diesem DropDown-Feld den Menüpunkt "Im Kickstarter bearbeiten" auswählen.
Wenn dieser Menüpunkt nicht da ist, dann ist der Kickstarter evtl. nicht installiert.
Wenn du denn Menüpunkt ausgewählt hast, aber der Kickstarter dir eine "leere Seite" ala "eine neue Extension anlegen" anzeigt, dann liegt das daran, das es kein Verzeichnis "doc" im Verzeichnis deiner Extension gibt bzw. dass die Dateien "wizard_form.dat" und "wizard_form.html" nicht vorhanden sind.
froemken
froemken schrieb
Die Datei ist der Hammer...die ist ja noch schlimmer als die Registrierung von Windows. :-)
da geb ich dir recht! 😉
vielen dank für die anleitung um sich in der wizard_form.dat zurechtzufinden! 😉