Fehler bei Dateiupload für mehrere files in einem Uploadscript

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

  • Fehler bei Dateiupload für mehrere files in einem Uploadscript

    Hallo PHP Gemeinde
    brauche mal Hilfe für mein Script. Weiss nicht wo der Fehler steckt.

    EDIT:
    Sorry, aber viel zu viel irrelevanter Code. TobiaZ


    Fehlermeldung:
    PHP-Code:
    Array ( [vorname] => Silvia [nname] => Lamon [picart] => gal 
    [form] => verti [pic1_form] => verti [pic2_form] => verti 
    [pic3_form] => verti [pic4_form] => verti [pic5_form] => verti [pic6_form] => hori [_show] => [upload] => Hochladen )

    Array ( [
    pic] => Array ( [name] => Array ( [0] => lisa_preview.jpg 
    [1] => lisa1.jpg [2] => lisa2.jpg [3] => lisa3.jpg [4] => lisa4.jpg 
    [5] => lisa5.jpg [6] => lisa6.jpg ) [type] => Array ( [0] => image/jpeg [1] => image/jpeg [2] => image/jpeg 
    [3] => image/jpeg [4] => image/jpeg [5] => image/jpeg [6] => image/jpeg )
    [
    tmp_name] => Array ( [0] => /srv/www/htdocs/tmp/phpYQ2lCK [1] => /srv/www/htdocs/tmp/phpdm4SAv [2] => /srv/www/htdocs/tmp/phpSGdiAg
    [3] => /srv/www/htdocs/tmp/phpUhgFA1 [4] => /srv/www/htdocs/tmp/phplcEhCM
     
    [5] => /srv/www/htdocs/tmp/phpqg3JEx 
    [6] => /srv/www/htdocs/tmp/phpFsF4Hi 
    [
    error] => Array ( [0] => [1] => [2] => [3] => [4] => 
    [5] => [6] => 
    [
    size] => Array ( [0] => 8108 [1] => 29237 [2] => 37302
     
    [3] => 47076 [4] => 31775 [5] => 31869 [6] => 30433 ) ) )

    MySQL1136 Column count doesn't match value count at row 1 
    Hat da jemand ne Idee??

    Gruss
    Matze
    Zuletzt geändert von TobiaZ; 11.08.2007, 23:00.

  • #2
    Matze,

    die Fehlermeldung
    MySQL: 1136 - Column count doesn't match value count at row 1
    Ist doch eindeutig.

    Bitte poste mal die entsprechende Query, wie sie an die DB gesendet wird.

    Oder überprüfe selbst mal, wie viele spalten du ansprichst und wie viele Werte du übergibst.

    *move* nach SQL

    Kommentar


    • #3
      Hier das QUERY

      PHP-Code:
      $dbhandle opendb();
          
      //echo $dbhandle;
          
      $query "INSERT INTO ".DB****************SPIC.
      (vorname, nname, pic, form, size, type, picart, _show ) 
      VALUES 
      ('"
      .$_POST['vorname']."', '".$_POST['nname']."',
       '"
      .$_FILES['pic']['name'][$i]."', '".$_POST['form']."', 
      '"
      .$_FILES['pic']['size'][$i]."', '".$_POST['picart']."', 
      '"
      .$_POST['_show']."')";
          
      //echo $query;
          
      mysql_db_query(DBNAME,$query);
          
      $my_error =  mysql_error();
      echo 
      "<strong>MySQL: " mysql_errno() . " - " mysql_error() . "</strong><br />"
      Da ich ja über eine Schleife die mehreren Bilder verarbeite, weiss ich nicht genau, wie es mit dem DB Eintrag hin haut. Zudem hab ich das Problem, da es ein Previewbild und Galeriebilder, möchte ich auch über die SChleife, gerne das Trennen, was Preview oder was Galeriebild ist.

      PHP-Code:
      Array ( [vorname] => Silvia 
      [nname] => Lamon 
      [picart] => gal [B]<<<< Hier sollte das Script auch für alle Bilder die Art mit übernehmen.[/B]
      [
      form] => verti [B]Warum macht er hier ein einzelne Anweisung??[/B]
      [
      pic1_form] => verti [pic2_form] => verti 
      [pic3_form] => verti [pic4_form] => verti 
      [pic5_form] => verti [pic6_form] => hori 
      [_show] => 
      [upload] => Hochladen 
      Kann mir da einer ne besser Lösung empfehlem?

      Danke
      Matze
      Zuletzt geändert von fredolin; 12.08.2007, 09:24.

      Kommentar


      • #4
        nicht, wie du die query zusammensetzst.
        tobiaz hat sich doch klar ausgedrückt.

        Kommentar


        • #5
          Original geschrieben von TobiaZ
          Bitte poste mal die entsprechende Query, [so] wie sie an die DB gesendet wird.

          Kommentar


          • #6
            wie die Daten gesendet wurden

            PHP-Code:
            Array ( [vorname] => Silvia [nname] => Lamon 
            [pic_form_] => Array ( [0] => verti [1] => verti [2] => verti 
            [3] => verti [4] => verti [5] => verti [6] => hori )
             [
            picart_pic_] => Array ( [0] => pic_gal_[] [1] => pic_gal_[] [2] => 
            pic_gal_[] [3] => pic_gal_[] [4] => pic_gal_[] )
             [
            _show] => [upload] => Hochladen )

            Array ( [
            pic] => Array ( [name] => 
            Array ( [
            0] => lisa_preview.jpg [1] => lisa4.jpg [2] => lisa1.jpg 
            [3] => lisa3.jpg [4] => lisa5.jpg [5] => lisa6.jpg 
            [
            type] => Array ( [0] => image/jpeg [1] => image/jpeg [2] => image/jpeg 
            [3] => image/jpeg [4] => image/jpeg [5] => image/jpeg 

            [
            tmp_name] => Array ( 
            [
            0] => /srv/www/htdocs/tmp/phpOCWcya [1] => /srv/www/htdocs/tmp/phpeodpkB 
            [2] => /srv/www/htdocs/tmp/phpWgjr71 
            [3] => /srv/www/htdocs/tmp/phpwsciVs 
            [4] => /srv/www/htdocs/tmp/phpnk0zAk
             
            [5] => /srv/www/htdocs/tmp/phpg4CDrL )

            [
            error] => Array ( [0] => [1] => [2] => 
            [3] => [4] => [5] => 

            [
            size] => Array ( [0] => 8108 [1] => 31775 [2] => 29237 
            [3] => 47076 [4] => 31869 [5] => 30433 ) ) 

            [
            pic_] => Array ( [name] => Array ( [0] => lisa2.jpg ) [type] => Array ( [0] => image/jpeg 

            [
            tmp_name] => Array ( [0] => /srv/www/htdocs/tmp/phprpqqKT 

            [
            error] => Array ( [0] => 
            [
            size] => Array ( [0] => 37302 ) ) )


            NoticeUndefined indexform in /srv/www/htdocs/www.erotischeweb.de/
            admin/scripts/php/picupload.php on line 78

            Notice
            Undefined indexpicart in /srv/www/htdocs/www.erotischeweb.de/
            admin/scripts/php/picupload.php on line 78
            MySQL
            -

            Daten wurden in die Datentabelle ****************spic eingetragen 

            Kommentar


            • #7
              zwei dateien

              hier habe ich eine zip datein rangehängt wo der code aus den zwei dateien kommt mal mit ran gehängt.

              der aufruf, um das bildupload zustarten findet ihr in dieser Zeile:

              if($_GET['load'] == ****************spic){


              vielleicht kann mir da einer einen optimierteren und funktionierten code geben.

              bedanke mich schon mal in vorraus

              danke
              matze

              Kommentar


              • #8
                beantwortet nicht die frage. aber dein herumraten ist amüsant.

                Kommentar


                • #9
                  Quellcode

                  under meinen neuen Eintrag " Datein gezippt " hier im Forum findet ihr den Quellcode.

                  Hoffe das damit ihr was anfangen könnt..

                  Bedanke mich schon mal im Vorraus

                  Danke und LG
                  Matthias

                  Kommentar


                  • #10
                    Nein. Alles vergessen und nur die Frage beantworten:

                    Was bedeutet diese Zeile?
                    MySQL: 1136 - Column count doesn't match value count at row 1
                    ich glaube

                    Kommentar


                    • #11
                      PHP-Code:
                      if($_GET['load'] == ****************spic){ 
                      ein solcher Vergleich wird in die Hose gehen.
                      Original von TobiaZ
                      Oder überprüfe selbst mal, wie viele spalten du ansprichst und wie viele Werte du übergibst.
                      Tipp für Topicstarter 8 Spalten mit 7 Werten
                      Noch ein Tipp: Mach dich über SQL Injections schlau, sonst kann deine DB schnell eingestampft werden.

                      Gruss

                      tobi
                      Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

                      [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
                      Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

                      Kommentar


                      • #12
                        Hallo jahlives

                        mit dieser

                        PHP-Code:
                        if($_GET['load'] == ****************spic){ 
                        Zeile streuere ich die einzelnen Funktionen per Link an.
                        Das ist kein Vergleich..

                        So kann mir nun jemand sagen was bei meinem Script nicht funktioniert??

                        hier noch mal die Dateien...
                        Angehängte Dateien

                        Kommentar


                        • #13
                          Mit verlaub, wie merkbefreit bist du??

                          Würdest du jetzt auf die tausend Hinweise in Richtung angesprochene Tabellenspalten reagieren.

                          *move* to Projekthilfe, weil hier keine Eigeninitiative zu erkennen ist, von KnowHow ganz zu schweigen.

                          Kommentar


                          • #14
                            Tabellenspalten

                            Lieber TobiaZ,

                            ich habe mir schon die Tabellenfelder merhmals angeschaut und auch durch gezählt, ob die Menge der übertragenden Felder stimmer. Aber da über eine Schleife die Bilder gezählt werden, weiss ich nicht wie ich die Felder in der DB benennen soll..

                            habe schon mit sämtlichen Variationen rum gespielt..
                            Darum noch mal.. Wer kann mir da helfen.. denn der Uplaod der Bilder funktioniert. Es werden alle Bilder in die vorgegebenen Ordner kopiert..


                            Das Problem was ich hab, ist die Benennung der Felder für
                            PHP-Code:
                            $_FILES['pic']['name'][$i];
                            $_FILES['pic']['size'][$i];
                            $_FILES['pic']['type'][$i];
                            $_POST['picart_pic][$i];
                            $_POST['
                            pic_form][$i]; 
                            WIe kann ich diese namen in die DB eintragen bzw. wie könnte der das Layout einer DB aussehen??

                            Kommentar


                            • #15
                              PHP-Code:
                              $query "INSERT INTO ".DB****************SPIC.
                              (vorname, nname, pic, form, size, type, picart, _show ) 
                              VALUES 
                              ('"
                              .$_POST['vorname']."', '".$_POST['nname']."',
                               '"
                              .$_FILES['pic']['name'][$i]."', '".$_POST['form']."', 
                              '"
                              .$_FILES['pic']['size'][$i]."', '".$_POST['picart']."', 
                              '"
                              .$_POST['_show']."')"
                              Durchzählen bitte...
                              ich glaube

                              Kommentar

                              Lädt...
                              X