Neuer eintrag durch aktualisierung

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

  • Neuer eintrag durch aktualisierung

    Also mein Problme ist das ich ein Formular mit Dropdown menü habe das einen PHP File Included
    hier die zu includende datei

    PHP-Code:
          $benutzer ="root";
          
    $pw "";
          
    $db "Versender";

          
    $link mysql_connect("localhost",$benutzer,$pw);
          
    mysql_select_db("Versender");

          
    $query "Select * from versender";
          
    mysql_query($query$link);

          
    $ergebnis mysql_db_query($db,$query,$link);

          echo 
    "<select name='Empfaenger' size='1' value='$empfaenger'>";
          For(
    $i 0;$i<mysql_num_rows($ergebnis);$i++){
                 
    $str1 mysql_result($ergebnis,$i,"Versender.Empfaenger");

                 echo 
    "<option select>" $str1 "</option>";
          }
          
    mysql_close($link); 
    jedoch jedesmal wenn cih das Formular aufrufe kommt ein neuer leerer eintrag in dem Dropdownmenü statt den einträgen die in einer MySQL datenbank stehen.Ich will aber das eben nur die Datein die in der Datenbank stehen im Dropdownmenü sind und nicht leere Einträge.

    Was muss ich tun um das zu verhindern?

  • #2
    Was muss ich tun um das zu verhindern?
    php lernen -> mysql_select_db -> mysql_fetch_array

    und ggf. die mysql_error();

    peter
    Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
    Meine Seite

    Kommentar


    • #3
      OffTopic:
      ... genau

      Kommentar


      • #4
        Beispiel:


        PHP-Code:
        <?php

        $l 
        mysql_connect("host""user""pass") OR die(mysql_error());
        mysql_select_db("db_2_select"$l) OR die(mysql_error());

        $res mysql_query("SELECT `ID`,`name` FROM `user`"$l);

        echo 
        "<select name=\"userID\">";
        while(
        $row mysql_fetch_assoc($res$l))
        {
            echo 
        "<option value=\"".$row['ID']."\">".$row['name']."</option>";
        }
        echo 
        "</select>";
        Im Option-Tag sollte immer eine value-Property vorhanden sein, ansonsten lässt sich damit nichts Anfangen, außer anzeigen und ein wenig rumklicken.
        The right way is wrong oder auch right != right

        Kommentar


        • #5
          @MrJonez

          Ok danke für dein hilfe war jedoch umsonst habe gestern dann ncoh lange rumgespielt und habe eine ähnliche lösung gefunden wobei cih das mit

          mysql_error von dir übernommen habe

          hier nochmal mein code:
          PHP-Code:
          <?php
                $benutzer 
          ="root";
                
          $pw "";
                
          $db "Versender";

          $link mysql_connect("localhost""$benutzer""$pw") OR die(mysql_error());
          mysql_select_db("Versender"$link) OR die(mysql_error());

          $query "Select Empfaenger from versender";
          $res mysql_query($query,$link);

          $erg mysql_db_query($db,$query,$link);

          echo 
          "<select name=\"Empfaenger\">";
          while(
          $row mysql_fetch_assoc($erg))
          {
              
          $str1 mysql_result($erg,"Versender.Empfaenger");
              echo 
          "<option select>" $str1 "</option>";
          }
          echo 
          "</select>";
          ?>
          Also trotzdem danke für deine hilfe^^

          Kommentar


          • #6
            Hi,

            hier ist noch ein kleiner Fehler:

            echo "<option select>" . $str1 . "</option>";
            1. Es heisst "selected" und nicht "select".

            2. Da Du Dich in einer While-Schleife befindest, weist Du jeder Option zu, dass sie ausgewählt (selected) ist...

            Gruß,
            Dennis

            Kommentar


            • #7
              ah jo ok danke nur jetzt ist ein weiteres Problem aufgetreten und zwar wenn ich den ersten Eintrag in mein Spalte Empfaenger mache ist noch alles normal aber sobald ich einen 2ten EIntrag mache gibt er in dem Dropdownmenü den Ersten Eintrag unendlich mal aus und den 2ten garnicht.

              Da sich der erste Eintrag aber unendlcih lange dazukommt im dropdownlmenü hägt sich die seite auf.

              Was kann cih tun um die unendlcihe ausgabe zu verhindern?

              MFG MonsterFox

              Kommentar


              • #8
                Hi,

                da müsste ich jetzt raten. Klingt fast so, als würde die Abbruchbedingung einer Schleife nicht erfüllt.

                Ich weiß nicht, was Deine Seite überhaupt bezwecken soll, und vielleicht könntest Du auch mal das ganze Script posten, sonst kann ich Dir nicht weiterhelfen.

                Gruß,
                Dennis

                Kommentar


                • #9
                  ok hier der teil wo es in das Dropdown kommt:
                  PHP-Code:
                  <?php
                        $benutzer 
                  ="root";
                        
                  $pw "";
                        
                  $db "Versender";

                        
                  $link mysql_connect("localhost""$benutzer""$pw") OR die(mysql_error());
                        
                  mysql_select_db("Versender"$link) OR die(mysql_error());

                        
                  $query "Select Empfaenger from versender";
                        
                  $res mysql_query($query,$link);

                        
                  $erg mysql_db_query($db,$query,$link);

                        echo 
                  "<select name=\"Empfaenger\">";
                             while(
                  $row mysql_fetch_assoc($erg))
                                        {
                                        
                  $str1 mysql_result($erg,"Versender.Empfaenger");
                                        echo 
                  "<option value>" $str1 "</option>";
                                        }
                        echo 
                  "</select>";
                  ?>
                  hier der SQl teil:

                  Code:
                  drop database if exists Versender;
                  create Database Versender;
                  use Versender;
                  
                  create table versender (
                     Datum Date,
                     Tpenr LONG,
                     Anrede Varchar(5),
                     Empfaenger text,
                     Panr INTEGER(6),
                     Land VARCHAR(2),
                     Gewicht INTEGER(3),
                     VersPreis DOUBLE(255,2));
                  
                  SELECT * from Versender;
                  und hier wo das Dropdownmenü hinkommt(nur ein ausschnitt):
                  empfaenger.php ist der teil oben von dem post hier

                  PHP-Code:
                  echo "<tr>";
                  echo 
                  "<td>";
                  echo 
                  "Empfaenger:";
                  echo 
                  "</td>";
                  echo 
                  "<td>";
                  include (
                  'empfaenger.php');
                  echo 
                  "</td>";
                  echo 
                  "</tr>"
                  hoffe das reicht alles sonst stell ich alles on aber das ist zuviel code

                  MFG
                  MonsterFox

                  Kommentar


                  • #10
                    PHP-Code:
                    $res mysql_query($query,$link);
                    $erg mysql_db_query($db,$query,$link); 
                    da ist eine abfrage überflüssig

                    gruß
                    peter
                    Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
                    Meine Seite

                    Kommentar


                    • #11
                      Hi,
                      PHP-Code:
                      while($row mysql_fetch_assoc($erg)) {
                         
                      $str1 mysql_result($erg,"Versender.Empfaenger");
                         echo 
                      "<option value>" $str1 "</option>";

                      Warum benutzt Du noch mysql_result, wenn Du den Datensatz schon mit mysql_fetch_assoc aus dem Ergebnis gelesen hast? Lass die Zeile weg und mach stattdessen ein:
                      PHP-Code:
                      echo '<option value="Wert">' $row["Empfaenger"] . "</option>"
                      LG

                      Kommentar


                      • #12
                        ok ejtzt funzt das zwar aber wenn ich einen datensatz in Empfaenger eingebe und in ein anderes feld nicht eingebe ist ncoh alles ncormal
                        aber wenn cih jetzt einen neuen datensatz in einer anderen Spalte eingebe dann kommt im Dropdownmenü der erste Datensatz von Empfänger und ein Feld wo einfach nix drinn steht.

                        Kann ich das irgendwie so machen das ich zb.

                        IF(null)
                        kein Eintrag in Dropdown


                        Was soll cih machen bekomm das einfach nciht weg
                        Zuletzt geändert von MonsterFox; 23.11.2006, 12:31.

                        Kommentar


                        • #13
                          Hi,

                          na gut, dass Du den Beitrag nochmal editiert hast, hatte kein Wort verstanden.
                          Wähle mittels WHERE-Klausel in der Datenbankabfrage nur Datensätze aus, in denen "Empfaenger" nicht leer ist.

                          LG

                          Kommentar


                          • #14
                            aslo in der SQL Datei dann

                            Code:
                            drop database if exists Versender;
                            create Database Versender;
                            use Versender;
                            
                            create table versender (
                               Datum Date,
                               Tpenr LONG,
                               Anrede Varchar(5),
                               Empfaenger text,
                               Panr INTEGER(6),
                               Land VARCHAR(2),
                               Gewicht INTEGER(3),
                               VersPreis DOUBLE(255,2));
                            
                            SELECT * from Versender;
                            heir WHERE 'Empfaenger' NOT NULL?

                            Kommentar


                            • #15
                              Hi,

                              was soll eigentlich ein SELECT * FROM ... direkt nach dem Erstellen der Tabelle? Da steht doch noch gar nichts drin? Und wo in Deinem Script verarbeitest Du überhaupt diese ominöse SQL-Datei?

                              Die WHERE-Klausel musst Du natürlich da einbauen, wo Du die Datensätze für Dein <SELECT> abfragst. Wie die WHERE-Klausel aussehen muss, schlägst Du bitte nach. Ich glaube, da wäre erstmal ein Tutorial angebracht, z.B. das von Peter Kropff.

                              LG

                              Kommentar

                              Lädt...
                              X