[HTML] formular vs. insert

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

  • [HTML] formular vs. insert

    hallo,
    ich füge über ein formular
    Code:
    echo "<form action=\"$PHP_SELF\" method=\"post\">\n";
    
    echo "
          Name: <input type=\"text\" name=\"APreal_name\" \" size=\"50\" 
    maxlength=\"50\">
          Kurzname: <input type=\"text\" name=\"APfile_name\"  size=\"10\" 
    maxlength=\"10\">
          <input type=checkbox name=\"VIP\" value=\"APvip\"> VIP?<br><br>
    
          Adressdaten (nur von der Zentrale):<br><br>
    
          Str. u. HausNr.: <input type=\"text\" name=\"ADstreet\" size=\"25\" 
    maxlength=\"50\">      
          PLZ: <input type=\"text\" name=\"ADpostal_code\" size=\"5\" 
    maxlength=\"5\">       
          Ort: <input type=\"text\" name=\"ADcity\" size=\"25\" maxlength=\"50\">            
     <br>
          Land: <input type=\"text\" name=\"ADcountry\" value=\"Deutschland\" 
    size=\"25\" maxlength=\"50\"> <br>
          TelNr. <font size=1>(nicht bei Durchwahlnummern)</font>: <input 
    type=\"text\" name=\"ADphone\" size=\"10\" maxlength=\"10\">             
          TelNr. o. DW: <input type=\"text\" name=\"ADphone_without_extension\" 
    value=\"\" size=\"9\" maxlength=\"9\">             
          DW: <input type=\"text\" name=\"ADphone_extension\" size=\"4\" 
    maxlength=\"5\">             <br>
          FAX Nr.: <input type=\"text\" name=\"ADfax\" size=\"10\" maxlength=\"10\">            
     
          FAX DW: <input type=\"text\" name=\"ADfax_extension\" size=\"4\" 
    maxlength=\"5\">             <br>
          E-Mail: <input type=\"text\" name=\"ADemail\" size=\"25\" maxlength=\"50\">            
     
          Website: <input type=\"text\" name=\"ADurl\" size=\"25\" maxlength=\"50\">            
     
          Handelsregisternummer: <input type=\"text\" 
    name=\"ADregister_of_companies\" size=\"6\" maxlength=\"6\">     <br>
          Ortsvorwahl: <input type=\"text\" name=\"ADphone_preselect_city\" 
    size=\"4\" maxlength=\"6\">             
          Landesvorwahl: <input type=\"text\" name=\"ADphone_preselect_country\" 
    value=\"49\" size=\"2\" maxlength=\"4\">  <br>
          <br>
          Postfachadresse:<br>
    
          Postfach: <input type=\"text\" name=\"ADpostbox\" size=\"9\" 
    maxlength=\"9\">
          PLZ: <input type=\"text\" name=\"ADpostbox_postal_code\" size=\"5\" 
    maxlength=\"5\">
          ORT: <input type=\"text\" name=\"ADpostbox_city\" size=\"25\" 
    maxlength=\"50\"><br>
          <textarea name=\"puffer\" rows=20 cols=50>
    
    
    </textarea>
          \n";
    
    
    
    echo "<br><br><input type=\"submit\" value=\"SPEICHERN\">\n";
    echo "</form></td>\n";
    daten in eine mysql datenbank ein

    Code:
    $sql = "insert into adress_dataAD 
    (DID, ADprivate, ADstreet, ADpostal_code,
     ADcity, ADcountry, ADphone, ADphone_without_extension,
     ADphone_extension, ADfax, ADfax_extension, ADemail, ADurl, ADregister_of_companies, 
    
    ADphone_preselect_city, ADphone_preselect_country, 
    ADpostbox, ADpostbox_city, ADpostbox_postal_code) 
    values('$DID[0]', '0', '$ADstreet', '$ADpostal_code', 
    
    '$ADcity', '$ADcountry', '$ADphone', '$ADphone_without_extension', 
    
    '$ADphone_extension', '$ADfax', '$ADfax_extension', '$ADemail', '$ADurl', 
    
    '$ADregister_of_companies', '$ADphone_preselect_city', 
    
    '$ADphone_preselect_country', '$ADpostbox', '$ADpostbox_city', 
    
    '$ADpostbox_postal_code')";
    klappt auch!

    mein problem:
    bei den spalten der datenbank die 'int' sind, wird, wenn das formular leer gelassen wird, eine 0 eingefügt. die felder sollen dann aber leer sein. das geht auch, wenn ich über ein anderes frontend (openoffice) die daten einpflege. gibt es eine möglichkeit, dass auch mittels html-formular hinzubekommen?
    danke
    Zuletzt geändert von kvogelsa; 10.01.2005, 14:35.
    www.e-kv.de

  • #2
    da gibt es zwei möglichkeiten. erstens du lebst mit der 0 und machst bei der ausgabe eine abfrage z.b.
    PHP-Code:
    if ($rows['name_des_feldes_mit_int_wert']) 
    oder du überprüfst vor der eingabe mit
    PHP-Code:
    if($_POST['name_des_feldes_mit_int_wert']) 
    und paßt dein sql-query entsprechend an.

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

    Kommentar


    • #3
      danke soweit, ich probiere es aus.
      das geht dann aber nicht über insert sondern über update, nicht?

      noch eine frage:
      wie wäre es, aus den zahlenfeldern varchar felder zu machen? wäre das eine starke geschwindigkeitseinbuße?
      www.e-kv.de

      Kommentar


      • #4
        so, ich habe nun ein paar zeilen eingefügt, die mir aus der 0 ein nix machen:

        Code:
        function forint($var0){
                                 if ($var0){
                                            $var1 = $var0;
                                            $var1 = str_replace(" ","",$var1);
                                                  $var1 ="'$var1'";
                                            
                                           }
                                 else{
                                     $var1 = "null";
                                     }
                                 return $var1;
                                 
                                 }
        
        
        
        
        
        
        $ADpostal_code = forint($ADpostal_code);
        $ADphone = forint($ADphone);
        $ADphone_without_extension = forint($ADphone_without_extension); 
        $ADphone_extension = forint($ADphone_extension);
        $ADfax = forint($ADfax);
        $ADfax_extension = forint($ADfax_extension);
        $ADphone_preselect_city = forint($ADphone_preselect_city);
        $ADphone_preselect_country = forint($ADphone_preselect_country);
        $ADpostbox = forint($ADpostbox);
        $ADpostbox_postal_code = forint($ADpostbox_postal_code);
        problem: wenn ich in das formularfeld eine 0 eingeb, soll ja in die datenbank auch eine 0 eingefügt werden. wird aber nicht.
        die bedingung
        Code:
        if ($var0)
        gibt wohl false zurück, wenn der wert 0 ist?

        gibt es da eine lösung?
        www.e-kv.de

        Kommentar


        • #5
          gibt es da eine lösung?
          ja, die gibt es. umbrich bitte deinen beitrag, so daß horizontales scrollen nicht nötig ist, dann verrate ich sie dir.
          Die Zeit hat ihre Kinder längst gefressen

          Kommentar


          • #6
            tschuldigung,
            normalerweise geht das automatisch...
            www.e-kv.de

            Kommentar


            • #7
              mit
              PHP-Code:
              if ($a === $b
              PHP-Code:
              if ($a !== $b
              kannst du wert und typ überprüfen.
              Die Zeit hat ihre Kinder längst gefressen

              Kommentar


              • #8
                Original geschrieben von derHund
                mit
                PHP-Code:
                if ($a === $b
                PHP-Code:
                if ($a !== $b
                kannst du wert und typ überprüfen.
                danke, ich probiere es aus.
                www.e-kv.de

                Kommentar

                Lädt...
                X