1. Dashboard
  2. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team
    4. Mitgliedersuche
  3. Forenregeln
  4. Forum
    1. Unerledigte Themen
  • Anmelden
  • Registrieren
  • Suche
Alles
  • Alles
  • Artikel
  • Seiten
  • Forum
  • Erweiterte Suche
  1. AutoIt.de - Das deutschsprachige Forum.
  2. Mitglieder
  3. Magnus

Beiträge von Magnus

  • OnEventMode - Event kann nicht registriert werden

    • Magnus
    • 11. September 2011 um 10:27
    Zitat von DevFly

    Du fragst ob ein GUISetOnEvent nicht vorhanden ist falls ja gib error aus das macht er auch weil suche mal nach GUISetOnEvent ich finde es 2 mal und das auch nur in der IF NOT abfrage setz ein GUISetOnEvent obweder oben in deiner GUI oder bei der abfrage wo du den GUI switch machst!


    Ich verstehe nicht, was du meinst.

  • OnEventMode - Event kann nicht registriert werden

    • Magnus
    • 10. September 2011 um 23:32

    Hallo,
    wenn ich das nachfolgende Script ausführe erhalte ich folgendes in die Console:

    Spoiler anzeigen
    Zitat

    >"*****\AutoIt3Wrapper.exe" /run /prod /ErrorStdOut /in "*******.au3" /autoit3dir "***\AutoIt3" /UserParams
    +>23:27:34 Starting AutoIt3Wrapper v.2.0.1.24 Environment(Language:0407 Keyboard:00000407 OS:WIN_7/Service Pack 1 CPU:X64 OS:X86)
    >Running AU3Check (1.54.19.0) from:*****\AutoIt3
    +>23:27:34 AU3Check ended.rc:0
    >Running:(3.3.6.1)****\autoit3.exe "*****.au3"

    >Backend loaded
    >Frontend Loaded
    +>Backend starting...
    +>Frontend starting...
    +>Registering Events...
    !>Event 2 Error
    >Events registered
    >Frontend started
    >Backend started

    +>23:27:37 AutoIT3.exe ended.rc:0
    >Exit code: 0 Time: 4.814

    Alles anzeigen


    Somit kann das Event: GUISetOnEvent($GUI_Main_ReadEnd, "_FrontendEvent_MainGUI_ReadingEnd", $GUI_Main); nicht registriert werden. Kann mir jemand helfen?

    "Script"
    [autoit]

    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <Misc.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>

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

    #Region --- GUI: MainGUI ---
    Global $GUI_Main = GUICreate("SGM", @DesktopWidth, @DesktopHeight, 0, 0, $WS_POPUP)
    GUISetBkColor(0x0066CC)

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

    Global $GUI_Main_InfoStart = GUICtrlCreateLabel("Bitte Scannen sie ihren Ausweis", 0, @DesktopHeight / 5 * 2 - 25, @DesktopWidth, 50, BitOR($SS_CENTER, $SS_CENTERIMAGE))
    GUICtrlSetFont(-1, 40, 400, 0, 'Arial')
    Global $GUI_Main_InfoPass = GUICtrlCreateLabel("Bitte geben sie ihr Kennwort ein, oder klicken sie auf Abbrechen", 0, @DesktopHeight / 5 * 1 - 25, @DesktopWidth, 50, BitOR($SS_CENTER, $SS_CENTERIMAGE))
    GUICtrlSetFont(-1, 30, 400, 0, 'Arial')
    GUICtrlSetState(-1, $GUI_HIDE)

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

    Global $GUI_Main_ReadInput = GUICtrlCreateInput("", @DesktopWidth / 6, @DesktopHeight * 0.8 - 10, @DesktopWidth / 3 * 2, 20, $ES_CENTER)
    Global $GUI_Main_ReadEnd = GUICtrlCreateButton("Test", 0, 100, 100, 100)
    GUICtrlSetState(-1, $GUI_DEFBUTTON)

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

    Global $GUI_Main_PassInputButton[10]
    For $x = 1 To 3
    For $y = 1 To 3
    $GUI_Main_PassInputButton[$x + 3 * ($y - 1)] = GUICtrlCreateButton($x + 3 * $y - 3, (@DesktopWidth - 620) / 2 - 310 + 155 * $x, 0.3 * @DesktopHeight + 155 * $y - 155, 150, 150)
    GUICtrlSetFont(-1, 30, 400, 0, 'Arial')
    GUICtrlSetState(-1, $GUI_HIDE)
    Next
    Next
    $GUI_Main_PassInputButton[0] = GUICtrlCreateButton(0, (@DesktopWidth - 620) / 2, 0.3 * @DesktopHeight + 155 * $y - 155, 150, 150)
    GUICtrlSetFont(-1, 30, 400, 0, 'Arial')
    GUICtrlSetState(-1, $GUI_HIDE)
    Global $GUI_Main_PassOK = GUICtrlCreateButton('OK', (@DesktopWidth - 465) / 2 + 387.5, 0.3 * @DesktopHeight, 300, 150)
    GUICtrlSetFont(-1, 35, 400, 0, 'Arial')
    GUICtrlSetState(-1, $GUI_HIDE)
    Global $GUI_Main_PassCancel = GUICtrlCreateButton('Abbruch', (@DesktopWidth - 465) / 2 + 387.5, 0.3 * @DesktopHeight + 310, 300, 150)
    GUICtrlSetFont(-1, 30, 400, 0, 'Arial')
    GUICtrlSetState(-1, $GUI_HIDE)

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

    GUISetState(@SW_HIDE, $GUI_Main)
    #EndRegion --- GUI: MainGUI ---
    #Region --- GUI: UserAction ---
    Global $GUI_UserAction = GUICreate("SGM", @DesktopWidth, @DesktopHeight, 0, 0, $WS_POPUP)
    GUISetBkColor(0x0066CC)

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

    GUICtrlCreateGroup("Aktueller User (Du)", 40, 40, (@DesktopWidth - 100) / 4, @DesktopHeight / 2.25)
    GUICtrlSetFont(-1, 16, 400, 0, "Arial")
    Global $GUI_UserAction_UserInfoPreName = GUICtrlCreateLabel("Vorname: -----", 80, 100, (@DesktopWidth - 320) / 4, 50)
    GUICtrlSetFont(-1, 20, 400, 0, "Arial")
    Global $GUI_UserAction_UserInfoName = GUICtrlCreateLabel("Nachname: -----", 80, 170, (@DesktopWidth - 320) / 4, 50)
    GUICtrlSetFont(-1, 20, 400, 0, "Arial")
    Global $GUI_UserAction_UserInfoMoney = GUICtrlCreateLabel("Guthaben: -----", 80, 240, (@DesktopWidth - 320) / 4, 50)
    GUICtrlSetFont(-1, 20, 400, 0, "Arial")
    GUICtrlCreateGroup("", -99, -99, 1, 1)

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

    GUICtrlCreateGroup("Gekaufte Essen", 60 + (@DesktopWidth - 100) / 4, 40, (@DesktopWidth - 100) / 4*3, @DesktopHeight / 2.25)
    GUICtrlSetFont(-1, 16, 400, 0, "Arial")
    Global $GUI_UserAction_UserMeelTodayState = GUICtrlCreatePic(@ScriptDir & "\images\AmpelOK.jpg", 80 + (@DesktopWidth - 100) / 4, 100, 50, 50)
    GUICtrlCreateGroup("", -99, -99, 1, 1)

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

    GUICtrlCreateGroup("Aktionen", 40, @DesktopHeight / 2, @DesktopWidth - 80, @DesktopHeight / 2.25)
    GUICtrlSetFont(-1, 16, 400, 0, "Arial")
    Global $GUI_UserAction_BuyFood = GUICtrlCreateButton("Kaufen", 80, @DesktopHeight / 2 + 40, (@DesktopWidth - 200) / 3, @DesktopHeight / 2.25 - 80)
    GUICtrlSetFont(-1, 50, 400, 0, "Arial")
    Global $GUI_UserAction_CancelFood = GUICtrlCreateButton("Storno", 100 + (@DesktopWidth - 200) / 3, @DesktopHeight / 2 + 40, (@DesktopWidth - 200) / 3, @DesktopHeight / 2.25 - 80)
    GUICtrlSetFont(-1, 50, 400, 0, "Arial")
    Global $GUI_UserAction_PayIn = GUICtrlCreateButton("Geld einzahlen", 120 + (@DesktopWidth - 200) / 3 * 2, @DesktopHeight / 2 + 40, (@DesktopWidth - 200) / 3, @DesktopHeight / 2.25 - 80)
    GUICtrlSetFont(-1, 42, 400, 0, "Arial")
    GUICtrlCreateGroup("", -99, -99, 1, 1)
    GUISetState(@SW_HIDE, $GUI_UserAction)
    #EndRegion --- GUI: UserAction ---

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

    ConsoleWrite(">Frontend Loaded" & @CRLF)

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

    Opt("GUIOnEventMode", 1)
    #Region --- Init ---
    Func _Frontend_StartUp()
    ConsoleWrite("+>Frontend starting..." & @CRLF)
    GUISetState(@SW_SHOW, $GUI_Main)
    ConsoleWrite("+>Registering Events..." & @CRLF)
    __Frontend_RegisterEvents()
    ConsoleWrite(">Events registered" & @CRLF)
    ConsoleWrite(">Frontend started" & @CRLF)
    EndFunc ;==>_Frontend_StartUp
    Func __Frontend_RegisterEvents()
    GUISwitch($GUI_Main)
    If Not GUISetOnEvent($GUI_EVENT_CLOSE, "_FrontendEvent_CloseMainGUI") Then ConsoleWrite("!>Event 1 Error" & @CRLF)
    If Not GUISetOnEvent($GUI_Main_ReadEnd, "_FrontendEvent_MainGUI_ReadingEnd", $GUI_Main) Then ConsoleWrite("!>Event 2 Error" & @CRLF)
    EndFunc ;==>__Frontend_RegisterEvents
    #EndRegion --- Init ---
    #Region --- Main GUI ---
    Func _FrontendEvent_CloseMainGUI()
    GUISetState(@SW_HIDE)
    _BackendAPI_Exit()
    EndFunc ;==>_FrontendEvent_CloseMainGUI
    Func _FrontendEvent_MainGUI_ReadingEnd()
    MsgBox(0, "", "")
    Local $iUserCardNummber = GUICtrlRead($GUI_Main_ReadInput)
    If Not _BackendAPI_CheckUserCardNummber($iUserCardNummber) Then
    Return False
    EndIf
    EndFunc ;==>_FrontendEvent_MainGUI_ReadingEnd
    #EndRegion --- Main GUI ---

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

    Func _Frontend_Shutdown()
    GUIDelete($GUI_Main)
    GUIDelete($GUI_UserAction)
    EndFunc ;==>_Frontend_Shutdown

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

    ConsoleWrite(@CRLF & ">Backend loaded" & @CRLF)
    ConsoleWrite("+>Backend starting..." & @CRLF)
    _Frontend_StartUp()
    ConsoleWrite(">Backend started" & @CRLF)
    While True
    Sleep(100)
    WEnd

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

    #Region --- BackendAPI ---
    Func _BackendAPI_Exit()
    _Frontend_Shutdown()
    ConsoleWrite(@CRLF)
    Exit
    EndFunc ;==>_BackendAPI_Exit
    Func _BackendAPI_CheckUserCardNummber($iUserCardNummber)
    Return False
    EndFunc ;==>_BackendAPI_CheckUserCardNummber
    #EndRegion --- BackendAPI ---

    [/autoit]

    Viele Grüße,
    Magnus

  • Problem mit While

    • Magnus
    • 24. Mai 2011 um 17:52

    Aus der Hilfe zu While: "Wenn der Ausdruck wahr ist, werden die Codezeilen bis WEnd ausgeführt. Die Schleife wird fortgesetzt, bis der Ausdruck unwahr ist."
    Wenn die Bedingung nicht mehr wahr ist, geht der Interpretent bei Schleifenende im Quellentext weiter.

    [autoit]


    Local $a = 1
    While $a = 1
    $a = 0
    Wend
    Exit

    [/autoit]


    Das Beispiel würde folgendes Bewirken: Deklarierung der Variable -> Schleifenbeginn -> $a = 0 -> Schleifenende -> Exit

    Magnus

  • Glasshouse - Alpha (Browsergame von mir)

    • Magnus
    • 15. Mai 2011 um 15:09
    Zitat von AntiSpeed

    Lass dein Skript mal mit http://validator.w3.org/check durchsuchen, "9 Errors, 5 warning(s)". So kannst du dein Skript verbessern. Normalerweise dürfte höchstens ein paar warnings kommen


    Hab ihn schon da rüberer Informiert. Siehe https://autoit.de/index.php?page…9453#post219453

  • Glasshouse - Alpha (Browsergame von mir)

    • Magnus
    • 11. Mai 2011 um 17:13

    Hallo,
    sicher ist was anderes. Zur Demonstration habe ich deinen Charakter mal auf 45/-15 gestellt.

    Um das ganz sicher zu machen, musst du Sessions anlegen. Eine Session besteht aus einer SessionID, einer Zeit, an der die letzte Aktivität war, und am besten noch einem Security-Token. Alles außer dem Security-Token und der SessionID muss auf dem Server bleiben!
    Der Ablauf sieht dann so aus:

    • Der User betritt die Seite. Eine Session wird generiert. Der Security-Token und dass SessionID werden z.B. als Cookie mit einer kurzen Laufzeit an den User gesendet.
    • Der User ruft eine Seite auf. Dabei übermittelt der Browser das Cookie. Die Webseite sucht nach einer Session mit der entsprechenden ID und vergleich den Security-Token. (=> Validierung/Escapen)
      Richtig => Alle weiteren Daten der Session (nach)laden. (z.B. Username, UserID, ...)
      Falsch => Neue Session nach 1. erstellen.
    • Der User loggt sich aus, oder eine z.B. 30 Minuten nach der letzten Aktivität des Users: Das Session wird aus dem Server entfernt (Cookie auch).


    Gib mir Bescheid, wenn/falls du es geändert hast. Vielleicht gibt es ja dann noch ein paar andere Schwachstellen.

    Viele Grüße
    Magnus

  • Glasshouse - Alpha (Browsergame von mir)

    • Magnus
    • 11. Mai 2011 um 14:05
    Zitat von Marsi

    java


    Java hat hier (derzeit) nichts zu suchen.

    Zitat von thiefbug

    Leben, Mana, EP auf AJAX umstellen...
    Ich bin froh, dass es sich schonmal so halb aktualisiert...
    werd ich wohl erst später machen.


    Bräuchtest du Hilfe mit dem JavaScript-Teil? Wenn ja, kannst du mir ja mal ne PN senden.

    Zitat von thiefbug

    wie gesagt: hab da einiges vor.


    Stell doch eine Liste mit zukünftigen Features auf.

    Magnus

    PS: vielleicht währe es auch sinnvoll, wenn du das Konzept mal mit jmd. anderem durchgehst.

  • Glasshouse - Alpha (Browsergame von mir)

    • Magnus
    • 11. Mai 2011 um 08:46

    Hallo,
    das mit der Ladegeschwindigkeit muss ich zurückziehen. Heute lauft das recht schnell. Pagespeed gab dir in Chrome bei 2. Anlauf 95 von 100 Punkten.

    Zitat von thiefbug

    Was CSS und JavaScript angeht verfolge ich momentan mein Prinzip: Erstmal muss alles laufen.


    JavaScript => OK aber CSS solltest du wenigstens Teils schon umsetzten.

    Zitat von thiefbug

    Wenn es läuft wie ich es möchte und ich es als ziemlich fertig bezeichnen kann, DANN setze ich mich wirklich an das Design.


    Das ist nicht immer einfach so möglich! Du bindest Bilder derzeit mit dem IMG-Tag ein. Diese und viele andere müssten dann raus.
    Du solltest aber schon einmal die Ausgabe des HTML-Quellentextes überarbeiten. Eine gute Webseite brauch ein gutes HTML-Gerüst.

    Zitat von thiefbug

    absolut Benutzer-unfreundlich


    Zum laufen würde ich eher Pfeile benutzen. Derzeit ist es scheinbar so, dass wenn ich auf eine der Figuren oder auf ein Haus (Wie heißen die?) klicke in diese richtig laufe.
    Schwachsinn meiner Meinung nach.

    Zitat von thiefbug

    Und ich habe noch ziemlich viel vor...


    Wenn das so ist, würde ich es erst bis zu einem Lauffähigen Punkt entwickeln, und es dann optimieren und designen

    Zitat von thiefbug

    Meine Codes sind katastrophal,


    Bei mir ist es so: Ich habe vor einem Jahr damit angefangen, eine Webseite und eine API für ein Projekt zu schreiben. Mit der Entwickelung lernte ich erst PHP, MySQL, HTML, CSS & Co.. In der API baute ich dann die erste Klasse ein. Wenn ich mir das jetzt anschauen wurde, währe das eine Katastrophe. Und vor allem die Datenbank!
    Daher habe ich vor einiger Zeit eine neue Datenbank designt, und bin gerade bei der Neuentwicklung von der API. (Natürlich reines OOP!)
    Das geht alles viel schneller als bei ersten mal. Daher würde ich dir empfehlen (siehe oben) es bis zu einem lauffähigen Punkte zu entwickeln, und es dann eventuell sogar ganz neu zu schreiben. (Es würde viel, viel schneller gehen!)

    Viele Grüße
    Magnus

  • Glasshouse - Alpha (Browsergame von mir)

    • Magnus
    • 10. Mai 2011 um 20:57
    Zitat von thiefbug

    finde es übrigens richtig nice, dass ich hier schon positives Feedback bekommen habe


    Dann sollte einer jetzt mal mit dem Negativen anfangen: (Nimm´s mir nicht übel, aber einer muss es sagen)

    • HTML:
      • Woher hast du HTML gelernt? Wo ist der HTML-Tag? Wo ist der HEAD-Tag? Dein Quellentext müsste z.B. so aussehen:
        Spoiler anzeigen
        HTML
        <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
        <html>
        	<head>
        		<title>TITEL hier einfügen!</title>
        	</head>
        	<body background="/bg/grafiken/bg_inv.JPG"> 
        		<b><font size="12"> 
        			<br><br>
        			<table>
        				<tr>
        					<td></td>
        					<td>
        						<a href='inv.php'><img src='/bg/grafiken/Inventar.png' border='0'></a>
        					</td>
        					<td></td>
        					<td>
        						<img src='/bg/grafiken/silber.png'>
        						<font size='12'>100</font>
        					</td>
        					<td></td>
        				</tr> 
        				<tr>
        					<td>
        						<font size='12'><b>
        							<img src='/bg/grafiken/live.png' border='0'>
        							<iframe src='/bg/HP.php' height='75' width='125' frameborder='0' ></iframe>
        							&nbsp;
        						</b></font>
        					</td>
        					<td>
        						<img src='/bg/grafiken/Mana.png' border='0'>
        						<font size='12'><b>
        							<iframe src='/bg/SP.php' height='75' width='125' frameborder='0' ></iframe>
        							&nbsp;
        						</b></font>
        					</td
        					<td>
        						<img src='/bg/grafiken/Level.png' border='0'>
        						<font size='12'><b>
        							1 &nbsp;
        						</b></font>
        					</td>
        					<td>
        						<img src='/bg/grafiken/exp.png' border='0'>
        						<font size='12'><b>
        							0 % &nbsp
        						</b></font>
        					</td>
        				</tr>
        			</table>
        		</b></font>
        		<br><br><br>
        		<iframe src="/bg/chat.php" width="250" height="500"></iframe>
        		&nbsp &nbsp &nbsp
        		<iframe src="/bg/kampf.php" width="50%" height="500"></iframe>
        		&nbsp &nbsp &nbsp
        		<iframe src="/bg/changelog.html" width="400" height="500"></iframe>
        		<br>
        		<b><center>
        			<a href='logout.php'>Logout</a>
        		</center></b>
        		<br>
        		<center><font size='6'>
        			1 Spieler ist gerade online
        		</font></center>
        		<br>
        		<center><b>
        			<a href='impressum.html'>Impressum</a>   <a href='/bg/Tutorial.html'>Hilfe</a>
        		</b></center>
        	</body>
        </html>
        Alles anzeigen

        Außerdem benötigt jedes Bild noch ein ALT-Attribut und alle A HREF-Tags sollten noch einen Inhalt haben. (Einen Validator gibt es hier)

      • Wozu verwendest du Frames? Frames sind veraltet. (Es gibt doch JavaScript und CSS!)
      • Zu designen gibt es CSS.
    • Ladezeit:
      • Der Ladevorgang bedarf noch der Optimierung. (z.B. weniger Bilder, ...)
      • Das aktualisieren des Chats würde ich auf AJAX umstellen (siehe die Shoutbox des Forums)
    • Sonstiges:
      • Warum willst du uns die rechte Maustaste blockieren? Dass bringt doch sowieso nichts und wird von den meisten Browsern geblockt.
      • Eine Weiterleitung im META-Tag ist auch nicht zu empfehlen.
      • Ich fände es schön, wenn du die Seite etwas deutlicher Gliedern würdest. Ansätze sind ja schon da: Navigation, Infoleitste
      • Wozu muss man immer die News sehen? Denk daran, dass es auch Personen mit kleineren Bildschirmen gibt.

    Ich würde dir empfelen:

    • Zuerst richtig HTML und CSS lernen.
    • Eventuell noch OOP (Objekt Orientierte Programmierung) für PHP lernen. (Außer du kannst das schon)
    • Und anschließend (evt. in Kooperation mit einem Designer) zumindest die Ausgabe der Seite zu überarbeiten.

    Viele Grüße
    Magnus

  • [Tutorial] Login + Registrierung über eine MySql-DB [+ Hilfedateien]

    • Magnus
    • 9. Mai 2011 um 16:29
    Zitat von BadBunny

    Im Notfall könnte man schnell eine Php Seite machen die den MD5 Wert zurückgibt, das ist schnell gemacht.


    Das ist unsicher, da die Daten in KLARTEXT an die Webseite gesendet werden.
    Besser währe es, wenn der MD5-Hash online generiert werden soll, das Kennwort Client-Seiting zu verschlüsseln und in der PHP-Datei entschlüsseln und dann zu hashen.

    Zitat von Jautois

    Komplettes Tutorial habe ich angepasst.


    Du weißt, dass du "$HTTP_GET_VARS" verwendest, und dass veraltet ist?
    (Außerdem habe ich gehört, dass die "mysql_real_escape_string"-Funktion nicht immer zuverlässig Funktioniert. Ich würde daher die MySQLi-Klasse vorziehen. Aber das ist für ein einfaches Tutorial wohl zu viel ;) ) Edit: Beispiel im Post danach.

  • _ListView_HTMLprint

    • Magnus
    • 3. Mai 2011 um 20:40

    Hallo,
    der generierte HTML-Quellentext ist nicht vollständig korrekt:

    • PHP
      </head><h3>_ListView_HTMLprint</h3><body>

      Der H3-Tag muss in den Body.

    • PHP
      <head>...</head><body>...</body>

      Alles muss in einen HTML-Tag.

    Magnus

  • Funktion aus Inputbox starten

    • Magnus
    • 27. April 2011 um 20:43
    [autoit]

    Case $Button9
    Call (guictrlread($Input1))

    [/autoit]
  • schnellste Möglichkeit gesucht, Daten in ein Array einzulesen

    • Magnus
    • 27. April 2011 um 19:33
    Zitat von MrB

    1. Der Wert 16-133 ist als String anzusehen und sollte als ganzes eingetragen werden. Klar könnte ich den splitten, würde nur gern wissen, ob es einfach ein Mißverständnis zwischen uns beiden ist oder ob da ein tieferer Sinn hinter steckt.


    Aus Performance-Gründen sollte man immer einen Index haben. Als Index würde ich kein Textfeld verwenden.

    Zitat von MrB

    kennst ne Seite, wo ich was zum Thema SQL lesen kann. Mit nichts was erreichen ist irgendwie frustrierend


    Tut mir leid: Nein.

    Zitat von MrB

    wie funktioniert die Abfrage genau bzw. wie bekomme ich den Wert in eine Variable. So gehts ja nicht.


    Alle Werte immer in '' setzten. Beispiel s.o..

    Magnus

  • schnellste Möglichkeit gesucht, Daten in ein Array einzulesen

    • Magnus
    • 27. April 2011 um 10:30
    Zitat von MrB

    Wie gesagt SQL und Ich kennen uns noch nicht lange.

    Schon verständlich. SQL bietet sehr viele Möglichkeiten.

    Zitat von MrB

    Sehen alle ca. so aus : 16-133=333.
    Diese Einträge muss ich immer wieder bearbeiten. Habs bis jetzt mit Iniread gelöst, da der erste Teil (16-133) immer bekannt ist.


    Wenn ich´s richtig verstanden habe willst du die Daten "333" aus dem Datensatz "16-133"="333". Dafür würde ich eine Tabelle mir 3 Spalten anlegen:

    SQL
    CREATE TABLE  `test` (
    `ID1` INT( 2 ) NOT NULL ,
    `ID2` INT( 3 ) NOT NULL ,
    `Value` INT( 3 ) NULL DEFAULT NULL ,
    PRIMARY KEY (  `ID1` ,  `ID2` )
    ) ENGINE = INNODB CHARACTER SET utf8 COLLATE utf8_unicode_ci;
    • Spalte: Der Teil "16"; INT Länge 2
    • Saplte: Der Teil "133"; INT Länge 3
    • Spalte: Der Teil: 333; INT Länge 3

    (ggf. anpassen)

    Zum Laden des Datensatzes mit ID1 = 16 und ID2 = 133 folgenden Befehl verwenden:

    SQL
    SELECT `Value` FROM `test` WHERE `ID1` LIKE '16' AND `ID2` LIKE '133'


    Als Rückgabe erhälste du dann nur denn Wert 333.

    Viele Grüße
    Magnus

    PS1: Du kannst mit der oben verwendeten Tabelle nur einen Eintrag haben, der bei ID1 16 und bei ID2 133 ist. (d.h. 16 und 134 geht; 17 und 133 geht)
    PS2: Die SQL Befehle hab ich nur in nem MySQL-Server getestet, sollten aber auch unter SQLite laufen.

  • schnellste Möglichkeit gesucht, Daten in ein Array einzulesen

    • Magnus
    • 27. April 2011 um 07:51
    Zitat von MrB

    Frage: Ist das so richtig?


    Wenn ich das richtig verstanden habe, wolltest du doch bestimmte Einträge nach einem festgelegtem Anfang finden. Richtig? Wenn ja, solltest du diese Überprüfung vielleicht in SQL auslagern (= In den ausgeführten SQL-Befehl), da dies vermutlich schneller geht, als wenn du mit AutoIt jeden Datensatz vergleichst.

    Magnus

  • AAV (Autoit Anti Virus)

    • Magnus
    • 26. April 2011 um 17:53
    Zitat von sl4y3r

    Die MD5 Dll is von Deepred


    In dem Beitrag steht folgendes:

    Zitat von peethebee

    Inzwischen nutzt man dafür die eingebauten und schnellen Funktionen _Crypt*** von AutoIt direkt :).

    Johannes


    Da ja das Scannen schnell laufen soll, solltest du diesen Tipp vielleicht umsetzten. (Solange er stimmt)

    Viele Grüße
    Magnus

  • AAV (Autoit Anti Virus)

    • Magnus
    • 26. April 2011 um 15:10
    Zitat von sl4y3r

    Da zurzeit kein AV-Programm .au3 Dateien erkennt, bastel ich mir selbst eines.


    Das stimmt nicht. Mein G-Data fängt immer mal wieder ein AutoIt-Script ab.

    Ansonsten finde ich sieht die Oberfläche noch etwas sehr unübersichtlich aus.

    Viele Grüße,
    Magnus

    PS: Wo hast du die MD5Hash.dll-Datei her?

  • Lizenzsystem [Version 2.0]

    • Magnus
    • 25. April 2011 um 12:08
    Zitat von 946ben

    Edit: es gibt auch md5-decoder, also wäre das auch nicht viel sicherer.


    Falsch.

    • Es gibt zwar Programme/Webseiten die behaupten MD5-Decoder zu sein, aber sie verwenden nur Rainbow Tables. Das sind Tabellen (in Datenbanken), die sehr viele im Voraus berechnete MD5-Hashes enthalten. Anhand von diesen wird der MD5-Hash "zurückverwandelt".
    • Aus diesem Grund werden Hashes auch noch gesalzen: Der Salt (=> kann z.B. eine zufällige Zeichenkette sein) wird dann irgendwo angehängt. Der gesalzende Hash und der Salt müssen dann abgespeichert werden.
    • Außerdem ist MD5 Veraltet. Lieber SHA1-256 verwenden.
    Zitat von 946ben

    das mit mysql zu machen, wäre also keine gute variante?
    also am besten wäre ja irgendwas, dass auch offline funktioniert.


    An sich ist eine Datenbank schon eine gute Lösung, auch wenn dann eine Internet-Verbindung benötigt wird. Die Datenüberprüfung müsste allerdings Serverseitig geschehen. (=> Durch z.B. ein PHP-Script) (Alle Daten die in die Datenbank kommen müssen escaped werden!)

    Magnus

  • Lizenzsystem [Version 2.0]

    • Magnus
    • 24. April 2011 um 08:24
    Zitat von letsgo

    Gut, nur noch mit Crypt.au3 verschlüsseln und/oder im Internet speichern lassen

    Solche Daten könnte man prinzipiell auch Hashen.

    Zitat von Sortoc

    Dazu kann mann auch ein 5 Zeiliges Php script auf den Server packen.

    Für solche Zwecke könnte man dann eine Datenbank verwenden. (Aber bitte die Daten Escapen.)

  • Console-UDF - lesen und schreiben in einer Konsole

    • Magnus
    • 27. März 2011 um 09:06

    Hallo,
    auch wenn dieses Thema schon etwas älter ist, habe ich eine Frage:
    Kann man irgendwie das schließen der Konsole mit dem "X" verhindern, oder kann man irgendwie eine Funktion definieren, die dann (= Beim Schließen der Konsole über das "X") aufgerufen wird?

    Viele Grüße
    Magnus

  • Taubus [Mein eigenes Browsergame halb fertig]

    • Magnus
    • 14. März 2011 um 16:24
    Zitat von chip

    Und was willst du nun damit sagen Darter? Nur weil eine drittklassiger Hersteller Frames nuzt heißt es nicht, dass es auch richtig ist ;). Du springst ja auch nicht von der Brücke weil dein Nachbar es macht.
    Frames machen ein Webseite schlicht unportabel egal in welche Richtung. Ganz davon zu schweigen von der nur schlecht umsetzbare Interaktivität zwischen diesen. Ein Webseite die auf Frames aufbaut ist Jahre hinter dem aktuellen Stand hinterher und braucht sich nicht wundern, wenn ein Erfolg ausbleibt. Gerade in Richtung Mobil-Internet sind Frames ein direktes KO-Kriterium.

    Ich stimm dem ganzen zwar zu (Frames = veraltet), aber Woltlab verwendet im WBB (diese Forensoftware) bei Installer/Updater ein IFrame. Man hätte es auch über Ajax lösen können, aber da ist er (meiner Meinung nach) sinvoll.

Spenden

Jeder Euro hilft uns, Euch zu helfen.

Download

AutoIt Tutorial
AutoIt Buch
Onlinehilfe
AutoIt Entwickler
  1. Datenschutzerklärung
  2. Impressum
  3. Shoutbox-Archiv
Community-Software: WoltLab Suite™