Bilderupload klappt nicht!?

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Bilderupload klappt nicht!?

    So nun habe ich eins von den unzählingen Scripten aus dem Internet gefunden, doch leider geht es nicht. Es wird zwar angezeigt, dass alles hochgeladen ist doch es passiert nichts!
    Recht sind gesetzt.

    PHP Code:
    <?php
        $deindomain 
    "http://www.meineurl.de"
        
    $path "/upload/img/"
    ?>
    <html> 
    <head> 
    <title>Upload</title> 
    </head> 
    <body>
    <? 
    if($action){ 
        $filename = ""; 
        $time=time(); 
        if ($HTTP_POST_FILES['userfile']['tmp_name']<> 'none'){    
            $file = $HTTP_POST_FILES['userfile']['name']; 
            $temp = $HTTP_POST_FILES['userfile']['tmp_name']; 
            $path_parts = pathinfo($file); 
            $filename = "test_" . $time . "." . $path_parts["extension"]; 
            $dest = $path.$filename; 
            copy($temp, $dest); 
            echo 'Datei ist auf den Server!'; 
            echo 'Url der Datei: '.$deindomain.$path.$filename; 
        } 
    } else { 
    ?> 
        <form method="post" enctype="multipart/form-data" action="<?php echo $PHP_SELF ?>"> 
        <input type="hidden" name="MAX_FILE_SIZE" value="400000"> 
        <br><strong>File Upload</strong><br><br> 
        <input name="userfile" type="file" size=40><br><br> 
        <input type="submit" name="action" value="Speichern"> 
        </form>
    <? } ?>
    </body> 
    </html>
    Vielleicht noch eine zusätzliche Frage:
    Möchte gerne das die Bilder später, in der Userdatenbank gespeichert werden.
    So klappt es nicht :-( oder?
    PHP Code:
    <?php if($_POST['bild'] != "") { echo ' value="'.$_POST['.$deindomain.$path.$filename'].'"'; } ?>

  • #2
    Wo wird $temp ein Wert zugewiesen?
    it's not a bug,
    it's a feature!

    Comment


    • #3
      PHP Code:
      if($action){ 
      Sicher, dass du register_globals auf on hast ? (ein phpinfo() kann hier weiterhelfen)
      Ich habe meine Zweifel das dies funzt...
      PHP Code:
      //ergibt nur den Dateinamen
      $file $HTTP_POST_FILES['userfile']['name'];
      //pathinfo() erwartet imho einen ganzen Pfad
      $path_parts pathinfo($file);
      [...]
      //copy gibt einen Rückgabewert über den Erfolg des Kopiervorgangs
      //also prüfe auch darauf
      if(!copy($temp$dest)) {
          
      'temp: '.$temp.'<br />dest: '.$dest;
          die(
      'Fehler beim Kopieren');

      Und knall auch noch ein error_reporting(E_ALL) an den Anfang deiner Datei.

      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)

      Comment


      • #4
        Es gibt keinen Fehler!

        Seite wird ausgeben, nur es findet sich keine Bil auf dem Server?!
        PHP Code:
        echo 'Datei ist auf den Server!'
        echo 
        'Url der Datei: '.$deindomain.$path.$filename

        Comment


        • #5
          Original geschrieben von jahlives
          Sicher, dass du register_globals auf on hast ?


          Ausserdem ist $HTTP_POST_FILES auch veraltet, $_FILES ist aktuell.
          I don't believe in rebirth. Actually, I never did in my whole lives.

          Comment


          • #6
            Und der Rückgabewert von copy() ist 100% sicher true ?
            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)

            Comment

            Working...
            X