Wo ist der Fehler

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

  • Wo ist der Fehler

    Hallo Leute,
    ich komme einfach nicht weiter. In einem anderen thread hat man mir den Rat gegeben mein Script so wie unten beschrieben umzustellen, damit eine Datei vor dem upload geprüft werden kann. Das Problem ist nur, dass jetzt auch bei "nichtupload" die Meldung (Es wir nur JPG und GIF akzeptiert)angezeigt wird und das Script nicht weiter ausgeführt wird.
    PHP-Code:
    <?php
    include('var.inc.php');
    include(
    'dbconnect.inc.php'); 
    $origname $HTTP_POST_FILES['userfile']['name'];
    $filearray explode(".",$origname);
    $fileext $filearray[count($filearray) - 1];
    if (!
    preg_match("/(JPG|JPEG|GIF|JPE|)$/i",$fileext)) {
    echo 
    "Es wir nur JPG und GIF akzeptiert!<br>\n";
    $ergebnis false;
    }
    else
    {
    if (
    $userfile!='none')
    {
    copy ($userfile"../support/data/".$userfile_name);
    $ergebnis mysql_query"INSERT INTO tabelle (userfile,userfile_name,userfile_size,userfile_type)
    values ('
    $userfile','$userfile_name','$userfile_size','$userfile_type')" ); 
    }
    }
    if(!
    $ergebnis){
    print 
    "Ihre Daten konnten nicht übermittelt werden. Bitte senden Sie eine Mail an [email]info@domain.de[/email]";
    }
    else{
    print 
    "Danke die Daten" ; } ?>
    Nun habe ich versucht das Script weiter zu editieren mit dem Erfolg, dass jetzt bei nicht vorhandener uploaddatei das script ausgeführt wird. Und die Prüfung der Datei funzt auch. Will ich aber eine erlaubte Datei mit abschicken wir im Browser nichts angegeben (Leeres Browserfenster kein echo kein parse Fehler einfach nichts) und in die Datenbank wird auch nichts geschrieben. Ich werd noch irre. Kann jemand helfen? Oder ist ein anderer Weg vielleicht besser.
    PHP-Code:
    <?php
    if ($userfile!='none')
    {

    include(
    'var.inc.php');
    include(
    'dbconnect.inc.php'); 
    $origname $HTTP_POST_FILES['userfile']['name'];
    $filearray explode(".",$origname);
    $fileext $filearray[count($filearray) - 1];
    if (!
    preg_match("/(JPG|JPEG|GIF|JPE|)$/i",$fileext)) {
    echo 
    "Es wir nur JPG und GIF akzeptiert!<br>\n";
    $ergebnis false;
    }
    }
    else
    {
    if (
    $userfile!='none')
    {
    copy ($userfile"../support/data/".$userfile_name);
    $ergebnis mysql_query"INSERT INTO tabelle (userfile,userfile_name,userfile_size,userfile_type)
    values ('
    $userfile','$userfile_name','$userfile_size','$userfile_type')" ); 
    }
    }
    if(!
    $ergebnis){
    print 
    "Ihre Daten konnten nicht übermittelt werden. Bitte senden Sie eine Mail an [email]info@domain.de[/email]";
    }
    else{
    print 
    "Danke die Daten" ; } ?>
    Heavy Metal Is The Law |

  • #2
    Irgendwie ist der Server heute so gurkig langsam ... da hab' ichs ausversehen 2mal geschickt ... @Moderators: bitte einmal löschen!
    Zuletzt geändert von goth; 21.05.2002, 13:54.
    carpe noctem

    [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
    [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

    Kommentar


    • #3
      Vielleicht mal sowas in der Art:
      PHP-Code:
      <?php
      if ( $userfile!='none' ) {
          include(
      'var.inc.php');
          include(
      'dbconnect.inc.php'); 
          
          if (!
      preg_match("/(JPG|JPEG|GIF|JPE|)$/i",$HTTP_POST_FILES["userfile"]["name"])) {
              echo 
      "Es wir nur JPG und GIF akzeptiert!<br>\n";
              
      $ergebnis=FALSE;
          } else {
              
      copy ($HTTP_POST_FILES['userfile']['tmp_name'], "../support/data/".$HTTP_POST_FILES['userfile']['tmp_name']);
              
      $ergebnis mysql_query"INSERT INTO tabelle (userfile,userfile_name,userfile_size,userfile_type)
              values ('"
      .$HTTP_POST_FILES['userfile']['tmp_name']."','".$HTTP_POST_FILES['userfile']['name']."','".$HTTP_POST_FILES['userfile']['size']."','".$HTTP_POST_FILES['userfile']['type']."')" ); 
          }
      } else 
      $ergebnis=TRUE;

      if( !
      $ergebnis ) {
          print 
      "Ihre Daten konnten nicht übermittelt werden. Bitte senden Sie eine Mail an [email]info@domain.de[/email]";
      } else print 
      "Danke die Daten" ;
      ?>
      Wobei das Speichern von $HTTP_POST_FILES["userfile"]["tmp_name"] eigentlich nix bringen dürfte, da nach Abarbeitung des Scripts die Temporären Dateien gelöscht werden!
      carpe noctem

      [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
      [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

      Kommentar


      • #4
        @goth
        Danke Dir... geht aber nicht so richtig. Der Test läuft, upload auch. Wenn ich ich allerdings ein Datensatz ohne upload sende, wird mir zwar ein "Danke die Daten" angezeigt aber leider nichts in die Datenbank geschrieben.
        Heavy Metal Is The Law |

        Kommentar


        • #5
          Original geschrieben von lemmy
          @goth
          Danke Dir... geht aber nicht so richtig. Der Test läuft, upload auch. Wenn ich ich allerdings ein Datensatz ohne upload sende, wird mir zwar ein "Danke die Daten" angezeigt aber leider nichts in die Datenbank geschrieben.
          Was soll er denn in die Datenbank schreiben ...

          Das INSERT-Statement bezieht sich doch nur auf die Upload-Daten ... und da ist doch nix zu schreiben?

          Jetzt bin ich verwirrt
          carpe noctem

          [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
          [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

          Kommentar


          • #6
            Sorry....... im Original werden noch diverse andere sachen wie Datum und Thema usw in die Datenbank geschrieben. Hiellt ich nicht für notwendig das mit zu posten
            Heavy Metal Is The Law |

            Kommentar


            • #7
              Original geschrieben von lemmy
              Sorry....... im Original werden noch diverse andere sachen wie Datum und Thema usw in die Datenbank geschrieben. Hiellt ich nicht für notwendig das mit zu posten
              Na dann kann ich das auch schlecht berücksichtigen ... !

              PHP-Code:
              <?php
              if ( $userfile!='none' ) {
                  include(
              'var.inc.php');
                  include(
              'dbconnect.inc.php'); 
                  
                  if (!
              preg_match("/(JPG|JPEG|GIF|JPE|)$/i",$HTTP_POST_FILES["userfile"]["name"])) {
                      echo 
              "Es wir nur JPG und GIF akzeptiert!<br>\n";
                      
              $ergebnis=FALSE;
                  } else {
                      
              copy ($HTTP_POST_FILES['userfile']['tmp_name'], "../support/data/".$HTTP_POST_FILES['userfile']['tmp_name']);
                      
              $ergebnis mysql_query"INSERT INTO tabelle (userfile,userfile_name,userfile_size,userfile_type)
                      values ('"
              .$HTTP_POST_FILES['userfile']['tmp_name']."','".$HTTP_POST_FILES['userfile']['name']."','".$HTTP_POST_FILES['userfile']['size']."','".$HTTP_POST_FILES['userfile']['type']."')" ); 
                  }
              } else 
              $ergebnis=TRUE;

              if( !
              $ergebnis ) {
                  print 
              "Ihre Daten konnten nicht übermittelt werden. Bitte senden Sie eine Mail an [email]info@domain.de[/email]";
              } else {
                  
              /*

                     Hier würde ich die anderen Daten speichern!
               
                  */
                  
              print "Danke die Daten" ;
              }
              ?>
              carpe noctem

              [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
              [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

              Kommentar


              • #8
                Nööö...er sagt nett Danke die Daten aber schreiben tut er sie nicht. Shit ich werd echt noch zum Elch. Hast noch nen Tip?
                Heavy Metal Is The Law |

                Kommentar


                • #9
                  Original geschrieben von lemmy
                  Nööö...er sagt nett Danke die Daten aber schreiben tut er sie nicht. Shit ich werd echt noch zum Elch. Hast noch nen Tip?
                  So erstmal nicht ... aber wie sieht denn denn das Statement für's speichern der Daten aus ... bzw. gibt's irgendeine MySQL - Fehlermeldung ... ??
                  carpe noctem

                  [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
                  [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

                  Kommentar

                  Lädt...
                  X