Formular daten in Mysql Speichern

ryserstephan

Mitglied
Hallo erstmal
Cch habe ein kleines Problem mit der Übergabe der Daten in die Daten-Bank habe hier paar sachen nach gelessen zu dem Tema aber mein Problem konnte ich dadurch nicht beheben.
Ich poste mal meinen php code :
[ Habe ich jetzt raus genommen das der >Button php nicht geht bei mir]
(alter server)

Die Verbindung zu der Datenbank habe ich absichtlich so geschrieben.
Ich hoffe jemand sieht den fehler, ich habe viele sachen ausprobiert und nix brachte was.
das seltsame ist ja habe den code schon für 2 andere formulare benuzt(natürlich
angepasst) und es hat immer super geklappt.
Gr33z :)
 
Zuletzt bearbeitet:
Bau Dir doch eine Fehlerausgabe mit ein.

PHP:
<?php
$result = mysql_query('INSERT...');
if (!$result) {
    die('Ungültige Abfrage: ' . mysql_error());
}
?>
 
Dank dir für deine schnelle Antwort die fehler meldung ist :
" Ungültige Abfrage: Column count doesn't match value count at row 1"
das habe ich aber auch schon geprüft, an dem liegt leider nicht.
Gespeichert soll werden ( name,id,C2-C53,datum) und genau das habe ich auch in der Tabelle.
Gr33z
 
Zuletzt bearbeitet:
Zunächst einmal:

Bitte editiere Deinen Beitrag, und verwende das Tag "\[PHP\]" und "\[/PHP\]" (Ohne Backslashes und Anführungszeichen) und füge dazwischen Deinen Code ein - das ganze ist a) nicht lesbar und b) hab ich keine Lust, die Ganze Seite nach rechts zu scrollen

Zu Deinem Problem:
Ich verstehe nicht ganz, was Dein Problem ist - Du machst einen Mega-Insert, und dann brauchst Du plötzlich doch nur ein Paar Felder *kopfkratz*
 
1. Hättest du die Güte, den Code in die entsprechenden Code-Tags zu packen? So kann man das schlecht lesen.

2. Die Fehlermeldung gibt nicht aus, das die Spalten in der Tabelle nicht mit den Query übereinstimmen, sondern das du innerhalb des Queries eine unterschiedliche Anzahl an Spalten gegenüber den Werten angegeben hast.

Das beste wird sein, du baust den Query nochmal von vorne auf, und brichst einfach nach jeder Spalte bzw. jedem Wert eine Zeile um. Dann fällt die Fehlersuche leichter:

PHP:
mysql_query( "INSERT INTO tabelle (
  Spalte1,
  Spalte2,
  ...
)
VALUES (
  '$wert1',
  '$wert2',
  ...
)"
) or die(mysql_error());


Grüße

PS: Aus diesem Grund immer Prepared Statements http://www.tutorials.de/forum/php-t...enbankzugriffe-durch-prepared-statements.html verwenden
 
Zuletzt bearbeitet:
Mein Problem ist das es meine Formular angaben nicht speichert in der DB,
der Fehler heisst ja das ich zuwenig spalten habe in der Mysql und somit ^nicht speichert dann habe ich einfach 1 und danach 2 splaten mehr erstellt und der fehler ist immer noch gleich. Allso liegts doch nciht an dem weil er speichert gar nichts nicht mal den namen.
gr33z
Ps: Danke das ihr mir versucht zu helfen werde mich irgend wie sicher erkentlich zeigen können:)
 
Okey jetzt gehts ich danke euch viel mal und werde mich beim gleich beim
Lösungs geber melden.
Mein Fehler und der ist mir echt Peinlich ich hatte den doppel wert C20 drinen somit hats nicht geklappt.
Ich merke gerade muss noch viel lernen.
Gr33z
 
PHP:
<?php
//Verbindung zur Datenbank
// So kannst Du es auch machen. Ist halt übersichtlicher und sauberer!

$insert ='INSERT 
                 INTO 
                       "'.$tabellenname.'"
                  SET
                       ´name´ = "'.mysql_real_escape_string($_POST['name']).'",
                       ´id´ = "'.mysql_real_escape_string($_POST['id']).'",
                       ´C2´ = "'.mysql_real_escape_string($_POST['C2']).'",
                       ´C3´ = "'.mysql_real_escape_string($_POST['C3']).'",
                       ´C4´ = "'.mysql_real_escape_string($_POST['C4']).'",
                       ´C5´ = "'.mysql_real_escape_string($_POST['C5']).'",
                       ´C6´ = "'.mysql_real_escape_string($_POST['C6']).'",
                       ´C7´ = "'.mysql_real_escape_string($_POST['C7']).'",
                       ´C8´ = "'.mysql_real_escape_string($_POST['C8']).'",
                       ´C9´ = "'.mysql_real_escape_string($_POST['C9']).'",
                       ´C10´ = "'.mysql_real_escape_string($_POST['C10']).'",
                       ´C11´ = "'.mysql_real_escape_string($_POST['C11']).'",
                       ´C12´ = "'.mysql_real_escape_string($_POST['C12']).'",
                       ´C13´ = "'.mysql_real_escape_string($_POST['C13']).'",
                       ´C14´ = "'.mysql_real_escape_string($_POST['C14']).'",
                       ´C15´ = "'.mysql_real_escape_string($_POST['C15']).'",
                       ´C16´ = "'.mysql_real_escape_string($_POST['C16']).'",
                       ´C17´ = "'.mysql_real_escape_string($_POST['C17']).'",
                       ´C18´ = "'.mysql_real_escape_string($_POST['C18']).'",
                       ´C19´ = "'.mysql_real_escape_string($_POST['C19']).'",
                       ´C20´ = "'.mysql_real_escape_string($_POST['C20']).'",
                       ´C21´ = "'.mysql_real_escape_string($_POST['C21']).'",
                       ´C22´ = "'.mysql_real_escape_string($_POST['C22']).'",
                       ´C23´ = "'.mysql_real_escape_string($_POST['C23']).'",
                       ´C24´ = "'.mysql_real_escape_string($_POST['C24']).'",
                       ´C25´ = "'.mysql_real_escape_string($_POST['C25']).'",
                       ´C26´ = "'.mysql_real_escape_string($_POST['C26']).'",
                       ´C27´ = "'.mysql_real_escape_string($_POST['C27']).'",
                       ´C28´ = "'.mysql_real_escape_string($_POST['C28']).'",
                       ´C29´ = "'.mysql_real_escape_string($_POST['C29']).'",
                       ´C30´ = "'.mysql_real_escape_string($_POST['C30']).'",
                       ´C31´ = "'.mysql_real_escape_string($_POST['C31']).'",
                       ´C32´ = "'.mysql_real_escape_string($_POST['C32']).'",
                       ´C33´ = "'.mysql_real_escape_string($_POST['C33']).'",
                       ´C34´ = "'.mysql_real_escape_string($_POST['C34']).'",
                       ´C35´ = "'.mysql_real_escape_string($_POST['C35']).'",
                       ´C36´ = "'.mysql_real_escape_string($_POST['C36']).'",
                       ´C37´ = "'.mysql_real_escape_string($_POST['C37']).'",
                       ´C38´ = "'.mysql_real_escape_string($_POST['C38']).'",
                       ´C39´ = "'.mysql_real_escape_string($_POST['C39']).'",
                       ´C40´ = "'.mysql_real_escape_string($_POST['C40']).'",
                       ´C41´ = "'.mysql_real_escape_string($_POST['C41']).'",
                       ´C42´ = "'.mysql_real_escape_string($_POST['C42']).'",
                       ´C43´ = "'.mysql_real_escape_string($_POST['C43']).'",
                       ´C44´ = "'.mysql_real_escape_string($_POST['C44']).'",
                       ´C45´ = "'.mysql_real_escape_string($_POST['C45']).'",
                       ´C46´ = "'.mysql_real_escape_string($_POST['C46']).'",
                       ´C47´ = "'.mysql_real_escape_string($_POST['C47']).'",
                       ´C48´ = "'.mysql_real_escape_string($_POST['C48']).'",
                       ´C49´ = "'.mysql_real_escape_string($_POST['C49']).'",
                       ´C50´ = "'.mysql_real_escape_string($_POST['C50']).'",
                       ´C51´ = "'.mysql_real_escape_string($_POST['C51']).'",
                       ´C52´ = "'.mysql_real_escape_string($_POST['C52']).'",
                       ´C53´ = "'.mysql_real_escape_string($_POST['C53']).'",
                       ´datum´ = "'.mysql_real_escape_string($datum).'"
         ';

if(!$result = mysql_query($insert))
{
    or die(mysql_error());
}
else
{
    $num_rows = mysql_num_rows($result);
    echo 'Es wurden "'.$num_rows.'" Daten eingetragen!';
}

?>
 
Zurück