var objekt aus html auslesen...

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • var objekt aus html auslesen...

    ne kleine frage, ich hab ne html datei die liegt auf unserem server, der inhalt sieht so aus:

    var MyIP = "80.133.194.86"; var LastUpdatet = "04/25/2003 15:11:55";

    Das ist alles was drinne steht. Wie kann ich nun die IP da rauslesen per php um damit weiter arbeiten zu können? Mir fehlt im moment jede idee, zumal ich noch nie was mit dateien gemacht habe.... Hat jemand nen Tip für mich?

    Gruß & Thx Manfred

  • #2
    regex
    INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


    Kommentar


    • #3
      wenn das format immer identisch ist. also vor und hinter dem = bei MyIP ein leerzeichen ist, kannst du das so machen.

      du musst nur die datei einlesen und in die variable $str schreiben.
      PHP-Code:
      <?php

        $str 
      "var MyIP = \"80.133.194.86\"; var LastUpdatet = \"04/25/2003 15:11:55\";";

        
      preg_match ("!MyIP \= \"(.*?)\"!is"$str$matching);
        
      $newstr $matching[1];

        echo 
      "|".$newstr."|";

      ?>
      und für verschluckte \ also code ....
      Code:
      <?php
      
        $str = "var MyIP = \"80.133.194.86\"; var LastUpdatet = \"04/25/2003 15:11:55\";";
      
        preg_match ("!MyIP \= \"(.*?)\"!is", $str, $matching);
        $newstr = $matching[1];
      
        echo "|".$newstr."|";
      
      ?>
      INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


      Kommentar


      • #4
        PHP-Code:

        $var 
        "var MyIP = \"80.133.194.86\"; var LastUpdatet = \"04/25/2003 15:11:55\"";

        $ip ereg_replace("(.*)\"([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})\"(.*)""\\2.\\3.\\4.\\5"$var);

        echo 
        $ip

        grml ich hasse das \ verschlucke

        Code:
        <?php
        
        $var = "var MyIP = \"80.133.194.86\"; var LastUpdatet = \"04/25/2003 15:11:55\"";
        
        $ip = ereg_replace("(.*)\"([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})\"(.*)", "\\2.\\3.\\4.\\5", $var);
        
        echo $ip;
        
        ?>
        kann aber verbessert werden
        Zuletzt geändert von Moqui; 25.04.2003, 15:56.
        tata
        moqui

        [COLOR=red]Ich will keine unaufgeforderten Mails über PHP Fragen. Es gibt ein Forum hier! Und ich bin nicht Scripter für jeden, der mir ne Mail schreibt![/COLOR]

        Kommentar


        • #5
          OffTopic:
          War schon wieder zu langsam
          tata
          moqui

          [COLOR=red]Ich will keine unaufgeforderten Mails über PHP Fragen. Es gibt ein Forum hier! Und ich bin nicht Scripter für jeden, der mir ne Mail schreibt![/COLOR]

          Kommentar


          • #6
            Habt vielen Dank, aber ich habe gerade gesehen das ich das format des Files selber bestimmen kann was da immer auf dem ftp abgelegt wird. Somit brauch ich doch kein PHP mehr
            Dank euch trotzdem für eure mühen!

            Gruß Manfred

            Kommentar


            • #7
              muuuhhh
              tata
              moqui

              [COLOR=red]Ich will keine unaufgeforderten Mails über PHP Fragen. Es gibt ein Forum hier! Und ich bin nicht Scripter für jeden, der mir ne Mail schreibt![/COLOR]

              Kommentar


              • #8
                Original geschrieben von BlackPixel
                Habt vielen Dank, aber ich habe gerade gesehen das ich das format des Files selber bestimmen kann was da immer auf dem ftp abgelegt wird. Somit brauch ich doch kein PHP mehr
                Dank euch trotzdem für eure mühen!

                Gruß Manfred
                grrrrr. da schaut man vorher nach!!!
                INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                Kommentar


                • #9
                  Original geschrieben von Abraxax
                  grrrrr. da schaut man vorher nach!!!
                  *duck* *aus dem weg geh* Werds mir fürs nächste mal merken

                  Cu Manfred

                  Kommentar


                  • #10
                    Ok, ist doch noch nicht ganz gegessen.

                    Folgende Problemstellung:

                    ich hab ne datei, die öffne ich wie folgt:

                    PHP-Code:
                    <?php
                    $filename 
                    'test.rtf';
                    $fp fopen($filename"r+");
                    $contents fread($fpfilesize($filename));
                    fclose($fp);
                    ?>
                    jetzt hab ich ne dicke rtf in meinem $contents string. Und da möchte ich nun nach eurem schema vorhande Platzhalter durch vorher von mir definierte vriablen ersetzen. Die Platzhalter liegen in dem format <#m:feld1#> vor... wie schaut da die kombination aus?!?


                    @ Abraxxax, hab schon mal en bischchen gesucht, aber nix gefunden wie ich den content aus ne Vraiable änder *trotzdem duck*

                    Gruß Manfred

                    Kommentar


                    • #11
                      du willst also suchen/ersetzen.

                      die einfachste möglichkeit ist str_replace() zu verwenden.

                      nun stellt sich aber die frage nach der regex, die viele viele sachen, die gleich/ähnlich sind, besser austauscht.

                      checke mal ab, ob str_replace() die lösung deines problems ist. wenn nicht, gib mal ein paar infos zu deiner sache. -> was soll zu was werden?

                      ps. duck dich schon mal gat tief nach unten. in der hocke treffe ich dich noch mit'm basi.
                      INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                      Kommentar


                      • #12
                        Ok, richtig, str_replace ist mein ding!

                        Nun siehst Du das obere angegebene kleine Script. das öffnet mir ne rtf auf der platte und holt sich den inhalt in den string namens $content. Darin ist nun folgender inhalt:

                        PHP-Code:
                         {\rtf1\ansi\ansicpg1252\uc1\deff0\stshfdbch0\stshfloch0\stshfhich0

                        \stshfbi0\deflang1031\deflangfe1031{\fonttbl{\f0\froman\fcharset0\fprq2

                        {\*\panose 02020603050405020304}Times New Roman;}{\f36

                        \froman\fcharset238\fprq2 Times New Roman CE;} {\f37

                        \froman\fcharset204\fprq2 Times New Roman Cyr;}{\f39

                        \froman\fcharset161\fprq2 Times New Roman Greek;}{\f40

                        \froman\fcharset162\fprq2 Times New Roman Tur;}{\f41

                        \froman\fcharset177\fprq2 Times New Roman (Hebrew);} {\f42

                        \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\f43

                        \froman\fcharset186\fprq2 Times New Roman Baltic;}{\f44

                        \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}}

                        {\
                        colortbl;\red0\green0\blue0;\red0\green0\blue255;\red0\green255

                        \blue255; \red0\green255\blue0;\red255\green0\blue255;\red255\green0

                        \blue0;\red255\green255\blue0;\red255\green255\blue255;\red0\green0
                        \blue128;\red0\green128\blue128;\red0\green128\blue0;\red128\green0
                        \blue128;\red128\green0\blue0;\red128\green128\blue0; \red128
                        \green128\blue128;\red192\green192\blue192;}{\stylesheet{\ql \li0\ri0 
                        RTF sollte DIr ja was sagen, oder?

                        in diesem code ist nun auch folgendes versteckt: <#m:feld1#>
                        Das ist mein Platzhalter. diesen möchte ich nun ersetzen mit dem inhalt von meine variable $feld1, deren Inhalt zB. Hans Müller ist. Danach sollte dieser modifizierte String in einer neuen rtf namens test2.rtf abgespeichert werden.

                        Mein Problem ist nun, wie gehe ich mit str_replace oder ereg_replace vor wenn mein Inhalt in einer Vraiable steckt?!?

                        *schonmal im eck versteck* *g*

                        Gruß Manfred
                        Zuletzt geändert von BlackPixel; 26.04.2003, 09:48.

                        Kommentar


                        • #13
                          so?

                          PHP-Code:
                          $deinstring str_replace("<#m:feld1#>"$feld1$deinstring); 
                          und dann eben $deinstring in eine datei schreiben.

                          oder meinst du das anders?
                          INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                          Kommentar


                          • #14
                            Ja, so macht das Sinn. Das funktioniert hier soweit auch ganz gut...

                            PHP-Code:
                            <?php
                            # Namen der gewählten Vorlage Feststellen
                            $vorlage 'test.rtf';

                            # Gewählte Vorlage öffnen und Inhalt auslesen, Datei wieder schliessen
                            $fp fopen($vorlage"r+");
                            $contents fread($fpfilesize($vorlage));
                            fclose($fp);

                            # Ert aus der 1. Variable festlegen
                            $feld1 "Hallo ich bin ein Text";

                            # Der Quelltext wird nun aus der Vorlage Durch unsere Festgelegten Variablen ersetzt
                            $org_string str_replace("<#m:feld1#>"$feld1$contents);

                            # Festlegen der Temporären Datei mit dem neuen Inhalt
                            $temp="test1.rtf";

                            #Prüfen ob die Vorhandene datei schon existiert, wenn nicht wird Sie angelegt
                            if (!file_exists($temp)) { $datei=fopen($temp,"w"); fclose($datei); }

                            #Nun wird die angelegte Datei geöffnet
                            $fp fopen($temp"a");

                            # Der neue Inhalt wird in das neue File geschrieben und das File wird geschlossen
                            $write fputs($fp$org_string);
                            fclose($fp);

                            shell_exec('G:\wampp2c\htdocs\csoft\test1.rtf');
                            So sieht das script im Moment aus. Gibt es eine mölichkeit das fertige rtf mit der Applikation zu starten mit dem der mimetype verknüpft ist?
                            Sonst bringt mir das ganze irgendwie nicht wirklich was...

                            das verknüpfte Programm muss nicht vom server aus gestartet werden, sinnvoller wäre es zu guggn ob der mime auf der lokalen maschiene verknüpft ist....

                            Gruß Manfred

                            PS: Und noch ein kleines Problem, jedesmal wenn ich das script aufrufe verdoppelt sich die Dateigrösse des angelegten files?!?!?

                            Kommentar


                            • #15
                              PS: Und noch ein kleines Problem, jedesmal wenn ich das script aufrufe verdoppelt sich die Dateigrösse des angelegten files?!?!?
                              wahrscheinlich, weil du die datei immer neu speicherst unter dem gleichen namen. und wenn dein marker da ist und der wird immer neu ersetzt ...... naja. so stelle ich mir das vor. ist aber nur eine idee.


                              Gibt es eine mölichkeit das fertige rtf mit der Applikation zu starten mit dem der mimetype verknüpft ist?
                              sicher. denn im endeffekt macht du das als download. du sendest einen entsprechenden header() und gibst dann die daten aus. der browser macht den rest.
                              INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                              Kommentar

                              Lädt...
                              X