Javascript - Problem

  • Hallo!

    Habe ein kleines Problem und ich hoffe mir kann Jemand von euch helfen...

    Ich habe eine javascript datei die wie folgt aussieht:


    m[mi++]="23.07.11 08:20:00|424;468;463;715" m[mi++]="23.07.11 08:15:00|341;381;429;717" m[mi++]="23.07.11 08:10:00|320;358;402;705" m[mi++]="23.07.11 08:05:00|399;440;375;713" m[mi++]="23.07.11 08:00:00|541;589;339;719" m[mi++]="23.07.11 07:55:00|547;598;292;718" m[mi++]="23.07.11 07:50:00|509;556;247;719" m[mi++]="23.07.11 07:45:00|369;410;207;718" m[mi++]="23.07.11 07:40:00|333;371;177;719" m[mi++]="23.07.11 07:35:00|244;273;151;715" m[mi++]="23.07.11 07:30:00|173;197;132;703" m[mi++]="23.07.11 07:25:00|141;163;118;690"

    ...nun währe super, wenn mir jemand sagen könnte, wie ich die 1. Zeile in dieser Datei so aufsplitten kann, das ich die einzelnen Daten wie Datum oder Uhrzeit als normale Variablen weiterverarbeiten kann.

  • zum einen haben wir hier einen bereich der speziell für javascript ist..
    so ne forenbezeichnung kann man lesen.

    dann hab ich das gefühl, dass etwas fehlt, nämlich die definition dass m ein array ist und dazu noch wie der initial-wert von mi ist

    du musst dir den zu bearbeitenden wert rausholen.
    zB: m[0] für den ersten wert im array m (die 0 is da der entsprechende wert zu mi, mi wird bei jedem eintrag mit mi++ um 1 inkrementiert)

    das ergebnis is dann zb der string hier: "23.07.11 08:20:00|424;468;463;715"
    mit nem string-split (wie die genaue function heisst musste mal bei selfhtml gucken) auf die pipe kannste die werte links und rechts vom | auslesen
    dann haste auch wieder nen array auf platz "[0]" in diesem array haste datum und uhrzeit und auf "[1]" haste dann die vier mit semikolon getrennten zahlen

  • Danke mal für die rasche Antwort.

    Nein, bei der Datei fehlt nichts.... die wird von einem Datenlogger erzeugt und so auf meinem Webserver gespeichert.

    Ich habe schon versuch die Arrays anzusprechen, aber leider ohne Erfolg.
    Wie muss ich da konkret vorgehen??

    Einmal editiert, zuletzt von fd9990 (23. Juli 2011 um 14:26)

  • es wäre interessant wie die file erstellt wird und auch wie verarbeitet...

    ansonsten wenn du keineinitialisierung hast wirste an keine werte kommen ;)

    mach das mal so, dass du vor deiner ausgabe oben das hier schreibst:

    Code
    <script type="text/javascript">
    m = new Array();
    mi = 0;
    //hier kommt deine ausgabe von oben komplett reinkopiert
    
    
    //und hier machste die oben erwähnte verarbeitung rein wo du whatever mit deinen Daten anstellst
    </script>
  • ... danke, es funktioniert soweit... zumindest teilweise.

    ich habe noch probleme das externe file so einzubinden, dass ich es dann auch verwenden kann.
    wenn ich den Inhalt vom file per hand reinkopiere funktionierts super!!

    kanst du mir vll dazu noch einen tipp geben???

  • geht mit ner serverseitigen sprache auf jeden fall...
    ich weiß net, obs auch mit ajax ginge...
    hab sowas noch nich probiert..
    binde jquery ein...!
    mach nen leeres script-tag gib dem die id "log"

    is nur nen test ob das mit ajax geht... sag bitte bescheid wenn, der schnipsel is ungetestet

    Code
    <script type="text/javascript" src="jquery.js"></script>
    <script type="text/javascript"> m = new Array(); mi = 0; </script>
    <script type="text/javascript" id="log">  </script>
    <script type="text/javascript">  
    $(document).ready(function(){
        $('#log').load('pfad zu deiner logfile.log');
    });
    </script>
  • habe das jetzt so probiert... aber leider ohne erfolg.

    mein code sieht momentan so aus:

    HTML
    <html> <head> <title>Test</title> 
    <script language="JavaScript" src="[URL='http://www.forum-hilfe.de/view-source:http://sune-solution.com/pv_monitoring/mayerl/min_cur.js?nocache']min_cur.js?nocache[/URL]"></script> 
    </head> <body>  <script type="text/javascript" src="[URL='http://www.forum-hilfe.de/view-source:http://sune-solution.com/pv_monitoring/mayerl/jquery.js']jquery.js[/URL]"></script>
    <script type="text/javascript"> m = new Array(); mi = 0; </script>
    <script type="text/javascript" id="log"> document.write(m[0]);  </script> 
    <script type="text/javascript">   $(document).ready(function(){     $('#log').load('min_day.js'); }); </script>  
    </body> </html>


    http://sune-solution.com/pv_monitoring/mayerl/handy.html

    2 Mal editiert, zuletzt von fd9990 (25. Juli 2011 um 17:16)

  • Das hab ich ja soweit auch gemacht, nur wo kann ich jetzt die daten verarbeiten? wenn ich zb. einmal m0 ausgeben könnte, währe ich schon zufrieden.

  • naja eben genau so, wie anfangs besprochen.. du hast die entsprechenden zählparameter initialisiert, das laden der logfile via ajax geht und is hinter der init...
    also sollteste jetzt ganz normal auf deine werte zugreifen können.

    mach ma

    Code
    alert(m[0]);
  • klassisches OSI-layer-8-problem.. :mrgreen:


    edit:
    nee doch net^^

    also die datei wird geladen, aber nicht so ausgeführt, selbst wenn man des so macht:

    sind m und mi = 0

    was eigentlich net sein dürfte..


    haste die möglichkeit php zu nutzen??

    Einmal editiert, zuletzt von synaptic (29. Juli 2011 um 20:01)

  • naja du müsstest halt die datei einfach auslesen und direkt das javascript schreiben lassen, ich denk so wirds fruchten, kann mal schauen dass ich dir das script schreibe.. is ja kein akt

  • here u are :O)