Websiten-Aktualisierer

  • Ich mal wieder^^

    Ich hatte ja Relaunch von meiner Homepage, und daraus entstand folgendes Programm:

    Spoiler anzeigen
    [autoit]


    #include <GuiListBox.au3>
    #include <File.au3>
    #include <GUIConstantsEx.au3>
    #include <String.au3>

    [/autoit] [autoit][/autoit] [autoit]

    $anfang = IniRead("data.ini", "Main", "anfang", "")
    $ende = IniRead("data.ini", "Main", "ende", "")
    $combo = IniRead("data.ini", "Main", "combo", "Zeitformat")
    $pfad = IniRead("data.ini", "Main", "pfad", "")

    [/autoit] [autoit][/autoit] [autoit]

    $Form1 = GUICreate("HP-Aktualizer by Padmak", 625, 396, 193, 125)
    $Input3 = GUICtrlCreateInput($pfad, 8, 32, 241, 21)
    $Label1 = GUICtrlCreateLabel("Anfangs-HTML:", 8, 192, 79, 17)
    $Label2 = GUICtrlCreateLabel("End-HTML:", 8, 248, 59, 17)
    $Input1 = GUICtrlCreateInput($anfang, 8, 216, 601, 21)
    $Input2 = GUICtrlCreateInput($ende, 8, 272, 601, 21)
    $Progress1 = GUICtrlCreateProgress(8, 360, 598, 25)
    $Label3 = GUICtrlCreateLabel("Aktuelle Datei: ", 8, 336, 76, 17)
    $Label4 = GUICtrlCreateLabel("", 88, 336, 353, 17)
    $Button1 = GUICtrlCreateButton("Aktualisieren", 160, 304, 75, 25, 0)
    $Combo1 = GUICtrlCreateCombo($combo, 8, 304, 145, 25)
    GUICtrlSetData(-1, "TT.MM.JJJJ|TT.MM.JJJJ HH:MM|HH:MM TT.MM.JJJJ")
    $Label5 = GUICtrlCreateLabel("Ordner wählen:", 8, 8, 76, 17)
    $Button2 = GUICtrlCreateButton("...", 256, 32, 27, 21, 0)
    $List1 = GUICtrlCreateList("", 8, 88, 361, 97)
    $Label6 = GUICtrlCreateLabel("HTML-Dateien im Ordner:", 8, 64, 125, 17)
    If $pfad <> "" Then
    $file = _FileListToArray($pfad, "*.html")
    If $file[0] < 1 Then
    Else
    GUICtrlSetData($Input3, $pfad)
    For $i = 1 To $file[0]
    _GUICtrlListBox_AddString($List1, $file[$i])
    Next
    EndIf
    EndIf
    GUISetState()

    [/autoit] [autoit][/autoit] [autoit]

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $Button1
    $anfang = GUICtrlRead($Input1)
    $ende = GUICtrlRead($Input2)
    If $anfang = "" Then
    GUICtrlSetData($Input1, "Bitte etwas eintragen")
    ContinueLoop
    ElseIf $ende = "" Then
    GUICtrlSetData($Input2, "Bitte etwas eintragen")
    ContinueLoop
    EndIf
    _VorRefresh()
    Case $Button2
    _Search()
    EndSwitch
    WEnd

    [/autoit] [autoit][/autoit] [autoit]

    Func _VorRefresh()
    $read = GUICtrlRead($Combo1)
    $anfang = GUICtrlRead($Input1)
    $ende = GUICtrlRead($Input2)
    $pfad = GUICtrlRead($Input3)
    If $read = "Zeitformat" Then Return MsgBox(0, "Fehler", "Bitte Zeitformat wählen")
    IniWrite("data.ini", "Main", "anfang", $anfang)
    IniWrite("data.ini", "Main", "ende", $ende)
    IniWrite("data.ini", "Main", "combo", $read)
    IniWrite("data.ini", "Main", "pfad", $pfad)
    Switch $read
    Case "TT.MM.JJJJ"
    $format = @MDAY & "." & @MON & "." & @YEAR
    _Refresh($format, GUICtrlRead($Input1), GUICtrlRead($Input2))
    Case "TT.MM.JJJJ HH:MM"
    $format = " am " & @MDAY & "." & @MON & "." & @YEAR & " um " & @HOUR & ":" & @MIN & " "
    _Refresh($format, GUICtrlRead($Input1), GUICtrlRead($Input2))
    Case "MM:HH TT.MM.JJJJ"
    $format = " um " & @HOUR & ":" & @MIN & " am " & @MDAY & "." & @MON & "." & @YEAR
    _Refresh($format, GUICtrlRead($Input1), GUICtrlRead($Input2))
    EndSwitch
    EndFunc ;==>_VorRefresh

    [/autoit] [autoit][/autoit] [autoit]

    Func _Search()
    GUICtrlSetData($List1, "")
    $ordner = FileSelectFolder("Ordner wählen", "")
    If $ordner = "" Then Return
    Global $file = _FileListToArray($ordner, "*.html")
    If $file[0] < 1 Then
    MsgBox(0, "Fehler", "Keine HTML-Dateien vorhanden. Bitte ein Verzeichnis mit HTML-Dateien wählen.")
    Return
    EndIf
    GUICtrlSetData($Input3, $ordner)
    For $i = 1 To $file[0]
    _GUICtrlListBox_AddString($List1, $file[$i])
    Next
    EndFunc ;==>_Search

    [/autoit] [autoit][/autoit] [autoit]

    Func _Refresh($sFormat, $sReplaceStart, $sReplaceEnd)
    $string = ""
    $pfad = GUICtrlRead($Input3)
    If $pfad = "" Then Return
    For $i = 1 To $file[0]
    GUICtrlSetData($Label4, $file[$i])
    $datei = FileOpen($pfad & "\" & $file[$i], 0)
    $inhalt = FileRead($datei)
    $between = _StringBetween($inhalt, $sReplaceStart, $sReplaceEnd)
    $progress = 100 * ($i / $file[0])
    GUICtrlSetData($Progress1, $progress)
    Sleep(100)
    If $between <> 0 Then
    $string = StringReplace($inhalt, $sReplaceStart & $between[0], $sReplaceStart & $sFormat)
    Else
    $string = StringReplace($inhalt, $sReplaceStart, $sReplaceStart & $sFormat)
    EndIf
    FileClose($datei)
    $datei = FileOpen($pfad & "\" & $file[$i], 2)
    FileWrite($datei, $string)
    FileClose($datei)
    Next
    AdlibEnable("_delete", 1000)
    EndFunc ;==>_Refresh

    [/autoit] [autoit][/autoit] [autoit]

    Func _delete()
    GUICtrlSetData($Progress1, 0)
    GUICtrlSetData($Label4, "Erfolgreich")
    AdlibDisable()
    EndFunc ;==>_delete

    [/autoit]


    Nehmen wir einmal an, man hat (lokal) seine Homepage in einem Ordner.
    Und man möchte, jedes mal vorm Upload, das letzte Änderungsdatum hinzufügen.
    Dafür ist dann mein Programm zuständig.
    Man wählt den Ordner mit den .html-Dateien aus den man haben will.
    Dann tauchen alle .html-Dateien in der ListBox auf.
    Nun nur noch unten in die beiden Inputs den Start-Quellcode bzw den End-Quellcode eintragen
    wenn z.B. die Zeile so ausschaut:
    <td style="text-align: center;"><span style="font-family: Arial;">Last edited: am 26.02.2009 um 15:40 Uhr</span></td>
    In diesem Fall wäre es so wie hier:
    autoit.de/wcf/attachment/4013/
    Viel Spaß und ein wenig Feedback bitte :D
    [schleichwerbung]
    Natürlich könnt ihr das Ergebnis auch online anschaun *hust*
    [/schleichwerbung]

    Padmak

    Ps: Hoffentlich interessiert DIESES Programm mal irgendwen :D

    Einmal editiert, zuletzt von Padmak (26. Februar 2009 um 15:57)

  • Arbeite erstmal an der Homepage weiter anstatt an dem programm, bzw die beste Lösung wär mit PHP, wo dann das Datum aus einer txt datei ausgelesen wird welche man per AutoIt/PHPAdminPanel verändern kann.

  • aber wenn man kein PHP hat, ist das Programm schon sinnvoll ;) und die Oberfläche ist schön übersichtlich.


    Dankeschön^^
    PHP kann ich gar nich...
    Des muss ich extra als Script hochladen und dann ausführen oder wie ?(?(
    Ich bleib lieber bei HTML (NVU :D) des is einfacher :D
    Ich bin eh grad mim Grafik-Design beschäftigt, deshalb hab ich halt des Prog geschrieben^^

    Padmak

  • Dann wirst du niemals eine auch nur halb vernünftige Internet Seite erstellen können, aber das ist deine Entscheidung.


    Sag mal was ist denn dein Problem?
    Wenn dich des Programm net interessiert dann hau ab und mach deine "vernünftigen" Internetseiten
    Brauchst net mich so niedermachen

    Padmak

  • Zitat

    Sag mal was ist denn dein Problem?

    Hab auf den Link zu deiner Website geklickt...


    Zitat

    Wenn dich des Programm net interessiert dann hau ab und mach deine "vernünftigen" Internetseiten

    Hab ich schon, und was jetzt?

    Wenn man nur html kann, fehlt einem fast alles, es ist eher so, das PHP die Sprache ist und html das GUI....

  • Weißt du was du mich mal kannst?
    Wenn du so schlau bist dann sag mir doch wo ich des lernen kann
    1. Bin ich html-Anfänger
    2. Gibts meine HP seit 22 Stunden 25 Minuten
    3. Bin ich kein Internetshop o.Ä. und brauch keine "Ultra-Mega"-Homepage
    4. Erwarte ich in keinem Fall so etwas wie du grad ablieferst wenn ich nur ein Script vorstellen will das MEINEN Alltag erleichert

    So und jez zeig mal deine "Ach-so-tollen-vernünftigen" Seiten

    Padmak

  • aha
    und was genau ist jez daran so toll

    Anmerkung am Rande:
    Zufallsbild schreibt man zusammen
    Umlaute werden als ? dargestellt

    Und was genau ist daran bitte PHP?
    Die Seite besteht auch aus Tabellen
    Genauso wie meine
    Nur meine ist net mal nen Tag alt und schon wieder komplett im Umbau
    Wenn sie fertig ist dann kannst dich nomma melden

    Padmak

  • Naja, PHP erzeugt den html code der dann an deinen Browser gesendet wird, das heißt du kannst den PHP code nicht sehen.
    Ein gutes Feature ist z.b. der Admin Panel, indem ich z.B. ganz einfach news schreiben oder bearbeiten kann.
    Habe ich mir sie mühe gemacht, das man sich die Seite auch auf englisch anschauen kann.

    Außerdem muss ich den Rechtschreibfehler nur in einer Datei verbessern und er ist auf allen Seiten gefixt.

  • nette Diskusion habt ihr da.

    @Padmak

    php brauchst du sobald du deine Homepage dynamisch machen willst. Wenn du ein Zähler einbinden willst oder was auch immer

    @Oger-Lord

    also wenn man wirklich eine Professionelle Seite entwickeln will dann sollte man sich mit CMS Sytemen auseinandersetzen, und wenn man sich schon die Mühe macht dann mit Typo3
    Bei den Datenmengen bringt dir reines php auch nichts mehr...

    ... soweit meine Bescheidene Meinung dazu

  • Zitat

    also wenn man wirklich eine Professionelle Seite entwickeln will dann
    sollte man sich mit CMS Sytemen auseinandersetzen, und wenn man sich
    schon die Mühe macht dann mit Typo3

    Bei den Datenmengen bringt dir reines php auch nichts mehr...

    Ein sehr komischer ratschlag, warum sollte ich aufeinmal ein Baukasten System für webseiten benutzten, wenn ich mir doch welche so erstellen kann?
    Jeder der sich etwas mit Internetseiten auskennt merkt sofort, das dort Jemand nichts selbst gemacht hat.
    Wendern hatte ich überlegt selbst mit einem anderen zusammen ein CMS zu entwickeln.

    • Offizieller Beitrag

    Um mal auf die ursprüngliche Frage zurückzukommen. Ich würde das Aktualisierungsdatum einfach per Javascript anzeigen lassen:

    Spoiler anzeigen
  • Ein sehr komischer ratschlag, warum sollte ich aufeinmal ein Baukasten System für webseiten benutzten, wenn ich mir doch welche so erstellen kann?
    Jeder der sich etwas mit Internetseiten auskennt merkt sofort, das dort Jemand nichts selbst gemacht hat.
    Wendern hatte ich überlegt selbst mit einem anderen zusammen ein CMS zu entwickeln.

    weil ein CMS soll ein Grundgerüst für die Verwaltung sein...nicht für das Design. Wenn man es gut macht, sieht man eh nicht mehr obs ein CMS ist oder nicht