Fehler bei Fromularübergabe

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

  • Fehler bei Fromularübergabe

    Hallo Leute,

    wer kann mir weiterhelfen?

    nach dem Abschicken der Daten über mein Formular erhalte ich folgende Fehlermeldung.

    Konnte Datensatz nicht hinzufügen: Column count doesn't match value count at row 1

    Habe die DB mir phpmyadmin manuell angelegt weil es automatisch nicht funktioniert hat, fehlt evtl. der Befehl TYPE=MyISAM ??? wie kann ich diesen ggf. nacheditieren?

    Für Eure Hilfe wäre ich Euch sehr dankbar.

    Martin

  • #2
    Poste mal dein SQL-Dump (das was jetzt in der SB ist, also das was du von Hand angelegt hast) und die SQL-Query!

    Kommentar


    • #3
      Hier die Struktur:

      Habe auch festgestellt, dass wenn ich phpmyadmin starte die Meldung kommt DAtenbank anlegen Keine rechte.

      # phpMyAdmin MySQL-Dump
      # version 2.4.0-rc1
      # http://www.phpmyadmin.net/ (download page)
      #
      # Host: rdbms.strato.de
      # Erstellungszeit: 16. Februar 2003 um 19:49
      # Server Version: 3.22.32
      # PHP-Version: 4.1.2
      # Datenbank:
      # --------------------------------------------------------

      #
      # Tabellenstruktur für Tabelle anzeigen
      #

      CREATE TABLE anzeigen (
      anz_id int(11) DEFAULT '0' NOT NULL auto_increment,
      anz_datum datetime DEFAULT '0000-00-00 00:00:00' NOT NULL,
      anz_name varchar(50) NOT NULL,
      anz_inhaber varchar(50) NOT NULL,
      anz_strasse varchar(50) NOT NULL,
      anz_plz varchar(5) NOT NULL,
      anz_ort varchar(50) NOT NULL,
      anz_land varchar(50) NOT NULL,
      anz_staat varchar(20) NOT NULL,
      anz_email varchar(50) NOT NULL,
      anz_page varchar(50) NOT NULL,
      anz_link varchar(20) NOT NULL,
      anz_tel varchar(20) NOT NULL,
      anz_fax varchar(20) NOT NULL,
      anz_kategorie varchar(30) NOT NULL,
      anz_offen varchar(50) NOT NULL,
      anz_preiskat varchar(20) NOT NULL,
      anz_livemusik varchar(20) NOT NULL,
      anz_stil varchar(30) NOT NULL,
      anz_kredkarte varchar(30) NOT NULL,
      anz_lieferservice varchar(20) NOT NULL,
      anz_kueche varchar(50) NOT NULL,
      anz_spezial varchar(50) NOT NULL,
      anz_rubrik varchar(50) NOT NULL,
      anz_freizeit varchar(50) NOT NULL,
      anz_text varchar(250) NOT NULL,
      anz_chiff int(11) DEFAULT '0' NOT NULL,
      PRIMARY KEY (anz_id),
      KEY anz_id (anz_id)
      );



      Programmierung db_insert.php

      PHP-Code:
      <?
      // Copyright by M.Heizmann
      // Hier keine Veränderungen vornehmen
      // Prüfen der Daten

      include("config.php3");

      $datum=date("d.m.Y - H:i");
      $anzdatum=date("Y.m.d - H:i:s");

      mt_srand((double)microtime()*1000000);
      $chiffre=mt_rand();

      $anz="250";
      $anz_text=strlen($text);

      $fehler="<b><center>Schade, Ihre Eingaben sind nicht vollständig oder unkorrekt !


      Bitte gehen Sie zurück und füllen das Formular vollständig aus !</center></b>

      ";

      $mailerror="<b><center>Schade, die eMail-Schreibweise ist nicht korrekt !</center></b>

      "; 

      $button="<center><b><input type=button value=zurück onClick=history.back()></center></b>

      ";

      $fehler_text="<center><b>Sie haben <font color=red>$anz_text Zeichen </font>eingegeben.
      Die Datenbank speichert nur $anz Zeichen im Anzeigentext.

      Bitte gehen Sie zurück und ändern Ihren Text.</b></center>

      "; 

      // Prüfen der Eingaben auf Richtigkeit

      if (!(ereg ("^.+@.+\\..+$", $email))) {
      echo "$mailerror";
      echo "$button";
      exit;
      }


      include("db_connect.php3");

      // Prüfen auf doppelte Einträge

      // if ($double != "0") {
      // $proofA="SELECT * FROM adress WHERE anz_email='$email' ";
      // $resA=mysql_query($proofA);
      // $rowA=mysql_fetch_array($resA);
      // $testA=$rowA["anz_email"];

      // $proofB="SELECT * FROM adress WHERE anz_page='$page' ";
      // $resB=mysql_query($proofB);
      // $rowB=mysql_fetch_array($resB);
      // $testB=$rowB["anz_page"];

      // }

      // ENDE der Prüfung

      $eintragen="INSERT INTO anzeigen (anz_datum,anz_name,anz_inhaber,anz_strasse,anz_plz,anz_ort,anz_land,anz_staat,anz_email,anz_page,anz_link,anz_tel,anz_fax,anz_partner,anz_kategorie,anz_offen,anz_preiskat,anz_livemusik,anz_stil,anz_kredkarte,anz_lieferservice,anz_kueche,anz_spezial,anz_rubrik,anz_freizeit,anz_text,anz_chiff)
      values('$anzdatum','$name','$inhaber','$strasse','$plz','$ort','$land','$staat','$email','$page','$link','$tel','$fax','$partner','$kategorie','$offen','$preiskat','$livemusik','$stil','$kredkarte','$lieferservice','$biere','$kueche','$spezial','$rubrik','$freizeit','$text','$chiffre')";

      if (!$testA && !$testB) {
      mysql_query($eintragen,$link) or die ( "Konnte Datensatz nicht hinzufügen: ".mysql_error() ); 

      echo "<CENTER>";
      echo "<B>";
      echo "<p>Herzlichen Dank<font color=red> $name </font>für Deine Anzeige.<BR>";
      echo "<p>Die Daten werden an den Hotel & Gastronomieführer (martin.heizmann@web.de) weitergeleitet.<BR>";
      echo "<P>Sie bekommen auch eine Bestätigung per eMail mit Ihren Daten.<BR>";
      echo "<p>Mit freundlichen Grüßen<BR>";
      echo "$site_name<BR><BR>";
      echo "</CENTER>";
      echo "<center><input type=button value='Nächste Anzeige' onClick='location.href=\"neuanzeige.php3?chiffre=$chiffre&email=$email\";'></center>";




      }
      else
      {
      echo "<center><p><b>Diese eMail-Adresse oder Homepage ist schon vorhanden !<br><br>Kein Eintrag mehr möglich !</p></center><br><br>";
      echo "<center><b><input type=button value=zurück onClick=history.back()></center></b><br><br>";
      }

      if (!$testA && !$testB)
      {
      include("mail.php3");
      }
      mysql_close( $link );
      ?>

      gruss Martin
      EDIT:
      Edit by Tobi: Musste mich kurz einmischen! PHP Tags

      Kommentar


      • #4
        kann es sein, dass die Umbrüche n bisschen stören? wenn die in deinem script genauso sind, kann nicht laufen.

        Kommentar


        • #5
          Umbrüche

          Umbrüche sind eigentlich ok muss an was anderem liegen

          Kommentar


          • #6
            dann hau die doch mal raus, bzw mach die richtig. ich bin nämlich anderer meinung.

            Kommentar


            • #7
              Re: Fehler bei Fromularübergabe

              Konnte Datensatz nicht hinzufügen: Column count doesn't match value count at row 1
              auf deutsch: die anzahl spalten die du beim insert angegeben hast und die anzahl der values passen nicht zusammen, sind nicht gleich.


              könnte das evtl. hier sein:

              insert: ...,anz_lieferservice,anz_kueche,...
              values: ...,'$lieferservice','$biere','$kueche',...

              ?
              I don't believe in rebirth. Actually, I never did in my whole lives.

              Kommentar


              • #8
                Vielen Dank

                danke an Euch, jetzt hats geklappt

                Gruss

                Martin

                Kommentar

                Lädt...
                X