Problem beim Übertragen von Datensätze in DB mittels Formular

Shiro-san

Erfahrenes Mitglied
Wenn ich alle Felder ausfüllen will und übertragen will bekomm ich das:
"Column count doesn't match value count at row 1"

was mach ich falsch?
 
Shiro-san hat gesagt.:
Wenn ich alle Felder ausfüllen will und übertragen will bekomm ich das:
"Column count doesn't match value count at row 1"

was mach ich falsch?

sagt er dir doch:
Anzahl der Datenfelder entspricht nicht der Anzahl der Daten
sprich es fehlt entweder ein Feldname oder ein Wert
 
Ich kenn mich mit dem Ganze ja nicht aus.
In der DB sind 9 Zeilen. Ich hab alle Felder nur das für das Bild und die ID machen mir halt probleme, da ich nicht weiß wie ich die fortlaufende ID integrieren soll.
 
Zeilen? Column sind Spalten, nicht Zeilen.
Poste deine Query hier, sonst kann dir schwerlich geholfen werden, wenn du kein Englisch verstehst.
 
Jörg Rißmann hat gesagt.:
Zeilen? Column sind Spalten, nicht Zeilen.
Poste deine Query hier, sonst kann dir schwerlich geholfen werden, wenn du kein Englisch verstehst.
Eventuell meint er ja auch die Zeilen und nicht die Spalten, ich komm da auch immer mit durcheinander. Außerdem kamm in der Fehlermeldung auch das Wort 'row' vor, was ja 'Zeile' bedeutet und nicht Spalte...;)
 
so also hier die codes. Und ja ich kann Englisch.

Code:
<?php
// $_POST beinhaltet alle eingegebenen Werte des abgeschickten Formulars 
$text = $_POST['name'];
$text = $_POST['vorname'];
$text = $_POST['strasse'];
$text = $_POST['hnr'];
$text = $_POST['plz'];
$text = $_POST['ort'];
$text = $_POST['email'];

// Verbindung zur DB aufbauen 
$verbinde=mysql_connect("localhost", "root");
mysql_select_db("datenbank");


// Query an DB schicken 
mysql_query("INSERT INTO kontakte (name, vorname, strasse, hnr, plz, ort, email) VALUES('$text')") or die(mysql_error()); 
?>

und hier nun das formular:
Code:
form method="post"action="script.php">

<table>
	<tr>
	 <td>Name:</td>
	 <td><input type=text name="name"></td>
	<tr>
	<tr>
	 <td>Vorname:</td>
	 <td><input type=text name="vorname"></td>
	<tr>
	<tr>
	 <td>Strasse:</td>
	 <td><input type=text name="strasse"></td>
	<tr>
	tr>
	 <td>Hausnummer:</td>
	 <td><input type=text name="hnr"></td>
	<tr>
	tr>
	 <td>PLZ:</td>
	 <td><input type=text name="plz"></td>
	<tr>
	tr>
	 <td>Ort:</td>
	 <td><input type=text name="ort"></td>
	<tr>
	tr>
	 <td>E-Mail</td>
	 <td><input type=text name="email"></td>
	<tr>
</table>
<input type="submit" value="Speichern">
 
du hast eine Variable "text" die du jedes mal überschreibst...

versuch mal mit
PHP:
$text1 = $_POST['name'];
$text2 = $_POST['vorname'];
$text3 = $_POST['strasse'];
$text4 = $_POST['hnr'];
$text5 = $_POST['plz'];
$text6 = $_POST['ort'];
$text7 = $_POST['email'];

dann:
PHP:
mysql_query("INSERT INTO kontakte (name, vorname, strasse, hnr, plz, ort, email) VALUES('$text1','$text2',.......'$text7')") or die(mysql_error()); 
?>
 
svennson hat gesagt.:
Eventuell meint er ja auch die Zeilen und nicht die Spalten, ich komm da auch immer mit durcheinander. Außerdem kamm in der Fehlermeldung auch das Wort 'row' vor, was ja 'Zeile' bedeutet und nicht Spalte...;)
Es könnte ja nämlich beides sein. Danke.
 
sbkbros hat gesagt.:
du hast eine Variable "text" die du jedes mal überschreibst...

versuch mal mit
PHP:
$text1 = $_POST['name'];
$text2 = $_POST['vorname'];
$text3 = $_POST['strasse'];
$text4 = $_POST['hnr'];
$text5 = $_POST['plz'];
$text6 = $_POST['ort'];
$text7 = $_POST['email'];

dann:
PHP:
mysql_query("INSERT INTO kontakte (name, vorname, strasse, hnr, plz, ort, email) VALUES('$text1','$text2',.......'$text7')") or die(mysql_error()); 
?>


Danke funktioniert jetzt 1A! ^^
 
Zurück