array an function übergeben

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

  • array an function übergeben

    1.
    Ich habe ein array mit verschiedenen daten. Ich zeige hier nur mal ein kleines Beispiel:
    PHP-Code:
    $array['vorname'] = "der Vorname";
    $array['nachname'] = "der Nachname"
    Ich übergebe das Array an eine Function.
    Jetzt möchte ich aber nicht in der function bei jedem Wert prüfen, ob er vorhanden ist oder nicht.
    PHP-Code:
    if (isset($array['vorname']) && $array['vorname'] != ""
    würde ich am liebsten vermeiden.
    Gibt es da irgend eine Möglichkeit?
    Bei einfachen Variablen geht es ja so:

    PHP-Code:
    function ($vorname ""$nachname "")
    {
    echo 
    $vorname....usw

    ?
    2. Warum steht bei einer Seite solche Url:
    "https://domain.de/mod/WebObjects/dbpbc.woa/415/wo/V50qQ5HySTqvPttcYsZAC0/0.0.Login.0.27.20.1"

    "V50qQ5HySTqvPttcYsZAC0" Heißt der ordner wirklich so, oder wie kommt das zu Stande?
    Gut geraten ist halb gewußt.

  • #2
    zu 1
    erstelle dir ein array mit den pflichtfeldern.
    das kannst du dann in einer schleife durchgehen und prüfen ob der index im übergebenen array vorhanden ist.

    zu 2
    das wird so ne art session id sein.
    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
      zu 1.
      Dachte, das es irgendie sowas wie in der art gibt:
      PHP-Code:
      function test($daten = array('vorname'=>"",'nachname'=>"")
      {
      echo 
      $daten['vorname'];...usw

      Aber das geht nicht.
      Schleife werd ich wohl lieber bleiben lassen.
      Denn muß ich wohl doch alles mit isset() prüfen.

      zu 2.
      Nach "V50qQ5HySTqvPttcYsZAC0" steht doch noch "0.0.Login.0.27.20.1"
      Erstellen die jedesmal ein neues verzeichnis, oder wie funktioniert das?
      Ich zerbreche mir jedes mal den Kopf wenn ich das sehe.
      Gut geraten ist halb gewußt.

      Kommentar


      • #4
        Original geschrieben von martinm79
        Nach "V50qQ5HySTqvPttcYsZAC0" steht doch noch "0.0.Login.0.27.20.1"
        Erstellen die jedesmal ein neues verzeichnis, oder wie funktioniert das?
        mod_rewrite o.ä.
        I don't believe in rebirth. Actually, I never did in my whole lives.

        Kommentar


        • #5
          Original geschrieben von martinm79
          Aber das geht nicht.
          Schleife werd ich wohl lieber bleiben lassen.
          Denn muß ich wohl doch alles mit isset() prüfen.
          natürlich geht das auch nicht so .....

          aber überlege doch mal selber .... wenn du nun alles mit isset() einzeln prüfst ... was machst du da? genau. alles nach dem gleichen schema.
          da spricht schon einiges für eine schleife!
          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


          • #6
            Ja, das es nicht so geht weiß ich, ich habe ja selbst bisschen probiert...
            Habe mich jetzt dazu entschieden, alle daten im array vor dem aufrufen der function zu definieren, auch wenn ich sie nicht brauche. Denn muß ich ebend:
            PHP-Code:
            $daten['vorname'] = ""
            machen.
            Aber danke.
            Gut geraten ist halb gewußt.

            Kommentar


            • #7
              komm. so schwer ist das nun auch wieder nicht.

              hier hast du es hingeklatscht ....
              PHP-Code:
              // eine tolle funktion
              function myescape($_string)
              {
                  
              // hier kann man auch noch nach
                  // get_magic_quote_gpc() prüfen, usw ....
                  // und dann erst das ganze zurückgeben
                  
              return trim($_string);
              }

              // dein array wo alle felder drin sind,
              // welche vorhanden sein müssen/sollen
              $check_array = array('vorname''nachname''strasse''usw');
              // und in der SCHLEIFE wird der rotz geprüft.
              foreach ( $check_array as $val )
                  
              $_POST[$val] = isset($_POST[$val]) ? myescape($_POST[$val]) : ''
              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


              • #8
                Nein nein, es ging nicht um schwer. Ich habe functionen, die eine verschiedene Anzahl von Parameter benötigen und ich wollte die Benutzung nur bisschen vereinfachen.
                Habe es aber schon fertig.
                Aber trotzdem Danke für deine Mühe.
                Zuletzt geändert von martinm79; 09.10.2005, 14:48.
                Gut geraten ist halb gewußt.

                Kommentar

                Lädt...
                X