MyPic - Bilder Upload

  • Hey :D

    Ich möchte euch meinen Bilder Upload Clienten vorstellen:
    Ihr müsst eine eigene INI machen und die dann ins Internet stellen (Zeile 31). Die INI schaut so aus:

    Spoiler anzeigen
    Code
    [BENUTZERNAME]
    FTP_User=FTP BENUTZERNAME
    FTP_Server=FTP SERVER
    FTP_Path=BILDER PFAD
    FTP_Site=SEITE FÜR DEN LINK
    Spoiler anzeigen
    [autoit]

    #cs

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

    ==========================
    MyPic Client
    ==========================
    ©Stefan Blagojevic
    Version: 1.2

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

    #ce
    #include <ButtonConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>
    #Include <FTPEx.au3>
    #include <array.au3>
    #include <GUICtrlPic.au3>
    ; INITIALISING USER
    Global $FTP_User, $FTP_Server, $FTP_Pass, $FTP_Path
    $Settings_file = InetGet( "http://limesoft-solutions.com/MyPic/settings_accounts.ini", @TempDir & '/MyPic.seff',1)
    $user_name = InputBox( "MyPic", "Geben Sie Ihren Benutzernamen an")
    If IniRead(@TempDir & '/MyPic.seff', $user_name, "FTP_User", "error") = "error" Then
    MsgBox( 16, "ERROR", "Settingsfile corrupt our username wrong")
    Exit

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

    Else
    $FTP_User = IniRead(@TempDir & '/MyPic.seff', $user_name, "FTP_User", "ERROR")
    $FTP_Server = IniRead(@TempDir & '/MyPic.seff', $user_name, "FTP_Server", "ERROR")
    $FTP_Pass = InputBox( "MyPic", "Passwort bitte eingeben")
    ;~ $FTP_Pass = IniRead(@TempDir & '/MyPic.seff', $user_name, "FTP_Pass", "ERROR")
    $FTP_Path = IniRead(@TempDir & '/MyPic.seff', $user_name, "FTP_Path", "ERROR")
    $FTP_Site = IniRead(@TempDir & '/MyPic.seff', $user_name, "FTP_Site", "ERROR")
    FileDelete( @TempDir & '/MyPic.seff')
    EndIf
    ;IF YOU WANT: SHOWING INFORMATIONS

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

    ;MsgBox( 0, "", "Server: " & $FTP_Server & " ::User: " &$FTP_User &" ::Pass: "& $FTP_Pass)

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

    ; UPLOAD GUI
    _uploadgui()
    Func _uploadgui()
    Global $Pic, $FTP, $User, $Actual, $Files_List, $FTP_Conn
    #Region ### START Koda GUI section ### Form=D:\Administrator\Documents\StevenX Media\MyPic\Drag_drop_Gui.kxf
    $Form1 = GUICreate("MyPic 1.2", 697, 350, 192, 124,-1)
    $Label1 = GUICtrlCreateLabel("MyPic", 290, 80, 168, 50)
    GUICtrlSetFont(-1, 30, 500, 0, "Arial")
    $Select_Pic = GUICtrlCreateButton("Auswählen", 272, 192, 147, 33)
    GUISetOnEvent($GUI_EVENT_DROPPED, "_OnGuiDrop")
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###

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

    ; PING GOOGLE
    If Ping("google.com") = 0 Then
    MsgBox(16,"ERROR", "Could not ping Google. Program will now exit")
    Exit
    EndIf
    ProgressOn( "Connect", "Connecting to the Server", "Creating connection...")
    $FTP = _FTP_Open( "iPic_FTP")
    If $FTP = 0 Then
    MsgBox(16, "ERROR", "Could not connect to my FTP Server (1). Program will now exit.")
    Exit
    EndIf
    ProgressSet( 50, "Created connection. Will now connect...")
    $FTP_Conn = _FTP_Connect( $FTP, $FTP_Server, $FTP_User, $FTP_Pass)
    ProgressSet( 100, "Connected!")
    Sleep(1000)
    ProgressOff()
    If $FTP_Conn = 0 Then
    MsgBox(16, "ERROR", "Could not connect to my FTP Server (2). Program will now exit.")
    Exit
    EndIf
    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    $Ftpc = _FTP_Close($FTP)
    FileDelete(@TempDir & '/MyPic.seff')
    Exit
    Case $Select_Pic
    ;~ $Pic = FileOpenDialog( "Wähle aus", "", "Bilder(*.jpg;*.png;*.gif;*.bmp)")
    ;~ ShellExecute( "http://limesoft.square7.ch/ipic/user/upload-client.php?variable="&$Pic)
    _Upload()
    _Gui2()
    EndSwitch
    WEnd
    EndFunc
    Func _OnGuiDrop()
    $Pic = @GUI_DragFile
    _Upload()
    EndFunc

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

    ; NOW: UPLOAD
    Func _Upload()
    If $Pic <> "" Then
    $sFilename = StringRegExpReplace($Pic, '.+\\(.+)', '$1')
    $sFilename = _RandomText(11) & StringRight( $sFilename, 4)
    $Upload = _FTP_ProgressUpload( $FTP_Conn,$Pic, $FTP_Path & $sFilename)
    _Result($FTP_Site & $FTP_Path & $sFilename)
    EndIf
    EndFunc

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

    ; RANDOM TEXT FUNCTION
    Func _RandomText($N)
    ;$n is the lenght of string.
    If $N < 1 Then Return -1
    Local $COUNTER, $ALPHA, $RESULT

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

    For $COUNTER = 1 To $N
    If Random() < 0.5 Then
    $ALPHA = Chr(Random(Asc("A"), Asc("Z") + 1))
    Else
    $ALPHA = Chr(Random(Asc("a"), Asc("z") + 1))
    EndIf
    $RESULT = $RESULT & $ALPHA
    Next
    Return $RESULT
    EndFunc

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

    ; RESULT: SHOWING PICTURE AND LINKS / CODES
    Func _Result($Pic_URL)
    $Result_GUI = GUICreate("MyPic", 625, 380, 192, 124)
    $Pic1 = _GUICtrlPic_Create($Pic, 24, 24, 577, 265)
    $Ok = GUICtrlCreateButton( "OK", 24,335,30)
    $Paste = GUICtrlCreateButton( "In Zwischenablage kopieren", 64,335,300)
    $Code_Paste = GUICtrlCreateButton( "Für Forum in Zwischenablage kopieren", 374,335)
    $Input1 = GUICtrlCreateInput($Pic_URL, 24, 304, 577, 21)
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    GUISetState(@SW_HIDE)
    ExitLoop
    Case $Ok
    GUIDelete(@SW_HIDE)
    ExitLoop
    Case $Paste
    If ClipPut($Pic_URL) = 1 Then
    MsgBox(64, "MyPic", "In Zwischenablage kopiert: "&$Pic_URL)
    Else
    MsgBox(16, "MyPic", "Konnte nicht in Zwischenablage kopieren: "&$Pic_URL)
    EndIf
    Case $Code_Paste
    If ClipPut("") = 1 Then
    MsgBox(64, "MyPic", "In Zwischenablage kopiert: "&"")
    Else
    MsgBox(16, "MyPic", "Konnte nicht in Zwischenablage kopieren: "&"")
    EndIf
    EndSwitch
    WEnd
    EndFunc

    [/autoit]

    [Blockierte Grafik: http://stefan.blagojevic.at/loading.gif]

    Design, Modellbau, CAD <3
    AutoCAD, ArchiCAD, REVIT (ist ein Scheiss, habe aber das Zertifikat)

    Cinema 4D, RuckZuck Statik Programm

    Michael Bay als Architekt


    Da eine Glasfassade! Booom Sichtbeton! Laminiertes Bild auf Mosaiksteinchen! Granit! Granit! Granit! Sichtbetonwand mit 50° Neigung!
    Holzverkleidung erscheint da! Boooooom!

    Einmal editiert, zuletzt von Stevenx (4. März 2013 um 21:26)

  • Ihr müsst eine eigene INI machen und die dann ins Internet stellen (Zeile 31). Die INI schaut so aus:


    Öhm nicht dein Ernst oder? Findest du es wirklich sinnvoll FTP Daten im Klartext schutzlos ins Internet zu stellen, nur damit das eigene Programm sich diese Zugangsdaten wieder runterladen kann? Warum speicherst du die Daten dann nicht gleich lokal auf der Festplatte des Nutzers? Wozu der Umweg über einen Webspace, der von jedem ausgelesen werden kann?

  • Kannst du gerne machen :D Hab nix drauf außer das, da ich mir einen Webspace gekauft habe ;) Meine Daten gebe ich nirgends hin. Das mit FTP ist nur eine Übergangslösung, bis ich den Dreh mit FTP raus habe. Eine eigene online Uploadseite gibt es schon: limesoft.square7ch/ipic/user/upload.php

    Cheers

    [Blockierte Grafik: http://stefan.blagojevic.at/loading.gif]

    Design, Modellbau, CAD <3
    AutoCAD, ArchiCAD, REVIT (ist ein Scheiss, habe aber das Zertifikat)

    Cinema 4D, RuckZuck Statik Programm

    Michael Bay als Architekt


    Da eine Glasfassade! Booom Sichtbeton! Laminiertes Bild auf Mosaiksteinchen! Granit! Granit! Granit! Sichtbetonwand mit 50° Neigung!
    Holzverkleidung erscheint da! Boooooom!

  • Ach, danke das du mich erinnerst. Ich wollte eigentlich eine Passowort Abfrage einbauen, habe das aber nur vergessen (?)

    Cheers

    [Blockierte Grafik: http://stefan.blagojevic.at/loading.gif]

    Design, Modellbau, CAD <3
    AutoCAD, ArchiCAD, REVIT (ist ein Scheiss, habe aber das Zertifikat)

    Cinema 4D, RuckZuck Statik Programm

    Michael Bay als Architekt


    Da eine Glasfassade! Booom Sichtbeton! Laminiertes Bild auf Mosaiksteinchen! Granit! Granit! Granit! Sichtbetonwand mit 50° Neigung!
    Holzverkleidung erscheint da! Boooooom!

  • Noch einmal: es dient als Übergangslösung bis ich das mit PHP geschafft habe. Auf meinem FTP Account ist sowieso nichts oben.

    Cheers

    [Blockierte Grafik: http://stefan.blagojevic.at/loading.gif]

    Design, Modellbau, CAD <3
    AutoCAD, ArchiCAD, REVIT (ist ein Scheiss, habe aber das Zertifikat)

    Cinema 4D, RuckZuck Statik Programm

    Michael Bay als Architekt


    Da eine Glasfassade! Booom Sichtbeton! Laminiertes Bild auf Mosaiksteinchen! Granit! Granit! Granit! Sichtbetonwand mit 50° Neigung!
    Holzverkleidung erscheint da! Boooooom!

  • So, geändert. Passwort ist jetzt erforderlich.

    Cheers

    [Blockierte Grafik: http://stefan.blagojevic.at/loading.gif]

    Design, Modellbau, CAD <3
    AutoCAD, ArchiCAD, REVIT (ist ein Scheiss, habe aber das Zertifikat)

    Cinema 4D, RuckZuck Statik Programm

    Michael Bay als Architekt


    Da eine Glasfassade! Booom Sichtbeton! Laminiertes Bild auf Mosaiksteinchen! Granit! Granit! Granit! Sichtbetonwand mit 50° Neigung!
    Holzverkleidung erscheint da! Boooooom!

  • Hehe :D Ich hab eh nur MyPic oben ^^

    Cheers

    [Blockierte Grafik: http://stefan.blagojevic.at/loading.gif]

    Design, Modellbau, CAD <3
    AutoCAD, ArchiCAD, REVIT (ist ein Scheiss, habe aber das Zertifikat)

    Cinema 4D, RuckZuck Statik Programm

    Michael Bay als Architekt


    Da eine Glasfassade! Booom Sichtbeton! Laminiertes Bild auf Mosaiksteinchen! Granit! Granit! Granit! Sichtbetonwand mit 50° Neigung!
    Holzverkleidung erscheint da! Boooooom!