• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Column count doesn't match value count

Status
Für weitere Antworten geschlossen.

Teela

Mitglied
Column count doesn't match value count [erledigt]

Ich habe mich etwas mit PHP beschäftigt
und will nun ein Script zum Eintragen von Videos in eine Datenbank programmieren.

Allerdings kommt beim Ausführen immer die Meldung:

Fehler: Column count doesn't match value count at row 1

INSERT INTO hp_videos (cat_id, cat_vidlink, cat_name, cat_staffel, cat_epno)
VALUES ('23' 'http://www.myvideo.de/movie/997631', 'Episode 04 - Der Klang der Wellen', '1', '4')

Ich finde den Fehler einfach nicht,
es werden alle Werte richtig übergeben, trotzdem wird es nicht eingetragen!

Hier der Script-Code:
PHP:
<?php
	$dbms = 'mysql';
	$db_host = 'localhost';
	$db_name = 'db1038550-phpbb';
	$db_user = 'dbu1038550';
	$db_pass = 'xxx';
	$db_domain = 'localhost';
	$tabelle = 'hp_videos';

	$db = mysql_connect($db_host,$db_user,$db_pass) or die(mysql_error());
	mysql_select_db($db_name) or die(mysql_error());

    $cat_id = $_GET["ID"];
    $cat_vidlink = $_POST["cat_vidlink"];
    $cat_name    = $_POST["cat_name"];
    $cat_staffel = $_POST["cat_staffel"];
    $cat_epno    = $_POST["cat_epno"];

   $eintrag = "INSERT INTO $tabelle (cat_id, cat_vidlink, cat_name, cat_staffel, cat_epno)
              VALUES ('$cat_id' '$cat_vidlink', '$cat_name', '$cat_staffel', '$cat_epno')";
   $eintragen = mysql_query($eintrag);

   if (mysql_error()) echo "<p>Fehler: " . mysql_error() . "</p><p>" .  $eintrag;
   else 
   echo "<p>Das Video wurde eingetragen!</p><p>&raquo; <a href='index.php'>Zurück</a></p>";

   mysql_close($verbindung);
?>

Ich hoffe, mir kann hier jemand weiterhelfen

Teela

EDIT: Ich war mir jetzt nicht ganz sicher, ob das zu PHP oder MySQL gehört,
wenn es hier falsch ist, bitte verschieben ^^"

EDIT2: Problem gelöst ^^"
 
Zuletzt bearbeitet:
auto_increment im SQL wohl vergessen.

noch einer, der immernoch mit register_globals arbeitet...

Nils aka XraYSoLo
 
auto_increment im SQL wohl vergessen.

noch einer, der immernoch mit register_globals arbeitet...

Nils aka XraYSoLo

Also das ID-Feld in der Datenbank steht auf auto_increment...

Wenn ich die Videos direkt über PHPMyAdmin eintrage,
funktioniert es ja auch, nur mit dem Script nicht.
 
kanns auch nicht, weil das die eingabeaufforderung für auto_increment fehlt.

vor das erste feld, das eingetragen werden soll, muss noch ein '' hin, also:

PHP:
<?php
   $eintrag = "INSERT INTO $tabelle (cat_id, cat_vidlink, cat_name, cat_staffel, cat_epno)
              VALUES ('', '$cat_id' '$cat_vidlink', '$cat_name', '$cat_staffel', '$cat_epno')";
?>

Nils aka XraYSoLo
 
XraYSoLo schrieb:
vor das erste feld, das eingetragen werden soll, muss noch ein '' hin, also:

Setz doch einfach das fehlende Komma:
PHP:
<?php
   $eintrag = "INSERT INTO $tabelle (cat_id, cat_vidlink, cat_name, cat_staffel, cat_epno)
              VALUES ('$cat_id', '$cat_vidlink', '$cat_name', '$cat_staffel', '$cat_epno')";
?>
 
Setz doch einfach das fehlende Komma:
PHP:
<?php
   $eintrag = "INSERT INTO $tabelle (cat_id, cat_vidlink, cat_name, cat_staffel, cat_epno)
              VALUES ('$cat_id', '$cat_vidlink', '$cat_name', '$cat_staffel', '$cat_epno')";
?>

Ups, genau daran lag es ^^"
(Bin manchmal echt ein Blindfisch...)

Und @XraYSoLo:
Das, was automatisch erhöht wird, ist das Feld "ID", nicht cat_id ^^

Endlich funktioniert es, vielen Dank für die Hilfe

Teela
 
Status
Für weitere Antworten geschlossen.
Zurück
Oben