[Script] PHP und Arrays

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

  • [Script] PHP und Arrays

    Hallo und sonnige Gruesse,

    isch häd da mal folgendes Problem...

    Ich will Werte, die ich in ein Textfeld eintrage in eine Auswahlliste übertragen. Ich habe es mit Arrays versucht. *grübl*

    Thanx Lena

  • #2
    dann zeige doch mal, was du hast, und beschreibe dein problem mal etwas genauer. so können wir damit nix anfangen.
    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
      Hallo ,

      sorry, hier ist mal der Code, den ich bis jetzt habe...ist für die meisten hier wahrscheinlich unverständlich, wie man sowas nicht hinkriegen kann...naja:

      PHP-Code:
      <?php
      $test 
      = array($land1);
      for (
      $i=0;$i<=2;$i++){
      var_dump ($test);
      }

      $stack = array ("land1");
      array_push($stack$land1);

      echo 
      "<form method='get'>";
      echo 
      "<input type='text' name='land1[]'>";
      echo 
      "<input type='submit'>";
      echo 
      "</form>";
      ?>
      Und nochmal zur Erklärung:
      Schreibe in ein Textfeld eine Stadt, klicke auf den Submit-Button, schreibe darauf die Stadt in eine Auswahlliste, schreibe nun wieder eine andere Stadt in das Textfeld und schreibe bei Klick auf den Button diese Satdt unter die bereits vorhandene in die Auswahlliste (Listbox).
      Mein Problem ist, dass ich zwar einen Ansatz habe, ich aber nicht weiter weiß, wie ich php sage, das es die Variable nicht überschreiben soll.
      Ich hab das mit der Listbox hier jetzt weggelassen.

      Lena

      Kommentar


      • #4
        hier mal ein ansatz. da muckt es zwar noch, aber vielleicht hat ein anderer grad mehr zeit...
        PHP-Code:
        <?php

            $data 
        = array();

            if (isset(
        $_POST['landdata']))
                
        $data unserialize($_POST['landdata']);

            if (isset(
        $_POST['land']) && trim($_POST['land'])!='')
                
        $data[] = $_POST['land'];

            
        print_r($_POST);
            echo 
        '<br>';
            
        print_r($data);
            echo 
        '<br>';

            echo 
        '<form action="'.$_SERVER['PHP_SELF'].'" method="post">';
            echo 
        '<input type="hidden" name="landdata" value="'.serialize($data).'">';
            echo 
        '<input type="text" name="land" value="">';
            echo 
        '<input type="submit" name="" value="add">';
            echo 
        '</form>';

            echo 
        '<hr>';

            for (
        $i=0;$i<count($data);$i++)
                echo 
        $data[$i] . '<br />';

            echo 
        '<hr>';

        ?>
        ausserdem verschiebe ich dich mal nach PHP.

        *VERSCHIEB*
        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


        • #5
          korrigier mal diesen Fehler:

          von
          if (isset($_POST['landdata']))

          $data = unserialize($_POST['landdata']);

          zu



          if (isset($_POST['landdata']))

          $data[] = unserialize($_POST['landdata']);

          Kommentar


          • #6
            geht aber auch nciht. habs grad mal getestet...
            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


            • #7
              Hallo!

              Hab`s also auch mal getestet, es funktioniert auch soweit, wenn man vor das unserialize bei :

              $data = unserialize($_POST['landdata']);

              ein @ setzt. Dann gibt es keine Fehlermeldung mehr. Allerdings ersetzt das Programm weiterhin die Variable und speichert die einzelnen Werte nicht jeden für sich in das Array...???

              Vielen Dank für Eure Hilfe!

              Lena

              Kommentar


              • #8
                Original geschrieben von s_schaf
                Allerdings ersetzt das Programm weiterhin die Variable und speichert die einzelnen Werte nicht jeden für sich in das Array...???
                das meinte ich ja... es wird immer nur das letzte genommen. ein @ zu verwenden ist übrigens niemals gut, nur um eine fehlerausgabe zu unterdrücken, weil sie stört. i.d.r sollte man immer versuchen den fehler zu beheben...
                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
                  warum machst du das ganze nicht einfach mit javascript. oder hab ich jetzt was falsch verstanden?
                  Jochen Heizmann, Intermediaware
                  www.intermediaware.de
                  --------------------------------------
                  netArtist - Online HTML Editor
                  Websiten online pflegen - Einbindung & Installation per Mausklick!
                  www.intermediaware.de/netArtist

                  Kommentar


                  • #10
                    Hallo!

                    Kann das nicht mit JavaScript machen, da es eine Übung für Schüler sein und rein auf PHP basierten soll

                    Gruss
                    Lena

                    Kommentar


                    • #11
                      ok, versuchs mal hiermit:

                      Code:
                      <?php
                      
                      	echo "<form method='get'>";
                      
                      	if(isset($land))
                      	{
                      		$array[] = $land;
                      		echo "Variable hinzugefügt...<br><br>";
                      
                      		while ($tarr=each($array) )
                      		{
                      			echo "<input type=hidden name=array[".$tarr[0]."] value=".$tarr[1].">";
                      			echo $tarr[1]."<br>";
                      		}
                      	}
                      	
                      	echo "<input type='text' name='land'>";
                      	echo "<input type='submit'>";
                      	echo "</form>";
                      
                      ?>
                      Jochen Heizmann, Intermediaware
                      www.intermediaware.de
                      --------------------------------------
                      netArtist - Online HTML Editor
                      Websiten online pflegen - Einbindung & Installation per Mausklick!
                      www.intermediaware.de/netArtist

                      Kommentar


                      • #12
                        JAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA!!!!
                        ES FUNKTIONIERT !!!

                        Tausend Dank!!!!

                        Hiermit wurde ein PHP-User wieder einmal glücklich gemacht

                        Gruesse
                        Lena

                        Kommentar


                        • #13
                          ...und da bin ich wieder...
                          also das funktioniert wirklich prima, das Programm, aber das mit der Auswahlliste ist gar nicht so einfach, wie ich dachte.
                          Ich kann ja <select><option></option></select> nicht einfach normal in den Code einbinden.
                          Bin mit meinem Latein vorerst am Ende...jemand eine Idee?


                          Lena

                          Kommentar


                          • #14
                            Original geschrieben von s_schaf
                            Ich kann ja <select><option></option></select> nicht einfach normal in den Code einbinden.
                            wieso nicht?

                            schon mal mit echo gearbeitet?
                            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


                            • #15
                              wieso? das versteh ich jetzt nicht? hab mal den code erweitert. funktioniert doch, oder?
                              Code:
                              <?php
                              
                              	echo "<form method='get'>";
                              
                              	$auswahl_liste="<select name=liste>";
                              
                              	if(isset($land))
                              	{
                              		$array[] = $land;
                              		echo "Variable hinzugefügt...<br><br>";
                              		
                              
                              		while ($tarr=each($array) )
                              		{
                              			echo "<input type=hidden name=array[".$tarr[0]."] value=".$tarr[1].">";
                              			$auswahl_liste.="<option value=\"$tarr[1]\">$tarr[1]</option>";
                              			echo $tarr[1]."<br>";
                              		}
                              		
                              	}
                              	$auswahl_liste.="</select>";
                              	
                              	echo $auswahl_liste."<br>";
                              	echo "<input type='text' name='land'>";
                              
                              	echo "<input type='submit'>";
                              	echo "</form>";
                              
                              ?>
                              Jochen Heizmann, Intermediaware
                              www.intermediaware.de
                              --------------------------------------
                              netArtist - Online HTML Editor
                              Websiten online pflegen - Einbindung & Installation per Mausklick!
                              www.intermediaware.de/netArtist

                              Kommentar

                              Lädt...
                              X