Notice: Undefined offset: 0 - Fehler abfangen

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

  • #16
    ich habs jetzt so...und es funt nicht:

    PHP-Code:
    preg_match_all('|'.preg_quote($pin).'(.*)'.preg_quote($endstring3).'|isU'$newfile3$match20);
    if (
    print_r($match20) == "Array ( [0] => Array ( ) [1] => Array ( )" ){
    $wert "0";
    }else{
    $wert20 $match20[1][0];

    könnte mir das jemand verbessern ? wäre echt nett.... danke

    Kommentar


    • #17
      Wie bist du denn auf diese super Idee gekommen?

      Was ist denn jetzt mit isset ?? Mittlerweile mal nachgeguckt?
      ich glaube

      Kommentar


      • #18
        Original geschrieben von firemike
        ich habs jetzt so...und es funt nicht:
        Von sinnvollem Einsatz von isset immer noch weit und breit nichts zu erkennen ...
        PHP-Code:
        if (print_r($match20) == "Array ( [0] => Array ( ) [1] => Array ( )" )} 
        - dafür aber dieses mehr als blödsinnige Konstrukt.

        Wenn du auf die Tipps, die du hier bekommst, nicht eingehst, und stattdessen lieber selber Nonsense-"Lösungen" zusammenfrickelst - dann solltest du auch nicht mehr allzu viel Hilfe erwarten.
        I don't believe in rebirth. Actually, I never did in my whole lives.

        Kommentar


        • #19
          mit isset hab ichs auch versucht so:

          PHP-Code:
          preg_match_all('|'.preg_quote($pin).'(.*)'.preg_quote($endstring3).'|isU'$newfile3$match20);
          if (isset(
          $match20)) {
          $wert20 $match20[1][0];
          }else{
          $wert "0";

          Ausgabe:

          Notice: Undefined offset: 0 in /Applications/xampp/htdocs/hd_intranet/parser7.php on line 145

          ?????

          grüsse mike
          P.s. Danke für die Geduld

          Kommentar


          • #20
            Mit isset prüfst du, ob eine Variable gesetzt ist.

            $match20 ist aber an der Stelle immer gesetzt. Überprüfen willst du stattdessen.... ?
            ich glaube

            Kommentar


            • #21
              also $newfile3 enthält die htmlseite als string

              nun will ich prüfen ob $pin in $newfile3 überhaupt vorkommt.

              wenn nicht dann $wert20 = 0 ansonsten

              $wert20 = $match20[1][0];


              grüsse mike

              Kommentar


              • #22
                nun will ich prüfen ob $pin in $newfile3 überhaupt vorkommt.
                Und wie machst du das am besten?

                Bzw. andersrum.

                Was genau bedeutet diese Fehlermeldung:

                Notice: Undefined offset: 0 in /Applications/xampp/htdocs/hd_intranet/parser7.php on line 145

                ? Also ist was zu überprüfen?
                ich glaube

                Kommentar


                • #23
                  ich prüfe mit preg_match ob $pin in $newfile3 vorkommt ??????

                  Kommentar


                  • #24
                    Was bedeutet die Fehlermeldung?

                    (Jedenfalls ist es keine Beschwerde darüber, dass "$match20" nicht exisitiert, was du mit deiner isset-Zeile unnötig abgefragt hast.)
                    ich glaube

                    Kommentar


                    • #25
                      Die Fhelermeldung "Undefined offset" deutet darauf hin, dass sich einen nicht existierenden Feldelement bezogen wird.

                      Aber das ist ja grade emin problem das das Feld element $pid nicht existiert oder es sein kann das es nicht exsistiert.

                      und ich hab im moment üb erhaupt keine idee wie ich das machen soll.


                      grüsse mike

                      Kommentar


                      • #26
                        @topicstarter
                        Verwende emtpy() und nicht isset(). Das Array ist in jedem Fall gesetzt, nur sind die Elemente bei Misserfolg des preg_match leer --> und genau das fängt man mittels empty() ab

                        Gruss

                        tobi
                        Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

                        [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
                        Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

                        Kommentar


                        • #27
                          Ich schreib deutsch, und du übersetzt nach PHP:

                          Code:
                          Wenn es $match20[1][0] gibt, dann
                               $wert20 = $match20[1][0];
                          
                          ansonsten
                               $wert20 = 0;
                          ich glaube

                          Kommentar


                          • #28
                            Kleine Korrektur, weil Array immer gesetzt ist
                            Code:
                            Wenn $match20[1][0] nicht leer ist, dann
                                 $wert20 = $match20[1][0];
                            ansonsten
                                 $wert20 = 0;
                            Gruss

                            tobi
                            Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

                            [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
                            Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

                            Kommentar


                            • #29
                              Das Array ist gesetzt, aber dieses Element ja dann nicht immer. (sonst gäbe es ja auch nicht den undefined index-Fehler... oder wie oder was.)
                              ich glaube

                              Kommentar


                              • #30
                                so funzt das jetzt:

                                PHP-Code:
                                preg_match_all('|'.preg_quote($pin).'(.*)'.preg_quote($endstring3).'|isU'$newfile3$match20);
                                if(empty(
                                $match20[0])) {
                                $wert20 "0";
                                }else{
                                $wert20 $match20[1][0];

                                danke euch allen für eure hilfe

                                grüsse mike

                                Kommentar

                                Lädt...
                                X