Ankündigung

Einklappen
Keine Ankündigung bisher.

unlink() funktioniert nicht

Einklappen

Neue Werbung 2019

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

  • unlink() funktioniert nicht

    Hallo.

    Vielleicht kann mir jemand helfen.

    Und zwar erzeugt folgender Code:

    Code:
    $ergebnis = "SELECT FILE_NAME FROM auktion_images WHERE ANGEBOT_ID = '{$id}'";
        $resultat = $pdo->query($ergebnis);
    foreach ($resultat as $reihe): ?>
                <?php unlink('image_uploads'/$reihe["FILE_NAME"]); 
                $statement = $pdo->prepare("delete from auktion_images WHERE ANGEBOT_ID = '{$id}'");
                $statement->execute(array());
                endforeach;
    folgende Fehlermeldung:

    Warning: A non-numeric value encountered in C:\xampp\htdocs\***.de\change.php on line 81

    Warning: Division by zero in C:\xampp\htdocs\***.de\change.php on line 81

    Warning: unlink(NAN): No such file or directory in C:\xampp\htdocs\***.de\change.php on line 81

    Der Ordner 'image_uploads' existiert...

    Weiß jemand Rat?

    Vielen Dank im Voraus.

  • #2
    PHP-Code:
      unlink('image_uploads'/$reihe["FILE_NAME"]); 
    Würdest du php-codetags (oder einen anständigen Editor) verwenden würdest du gleich sehen was hier falsch ist. Das ist dann doch eher bescheiden, dass du den Fehler hier nicht selbst siehst, die Fehlermeldungen sind doch klar.

    Kommentar


    • #3
      Dein Titel ist falsch gewählt, denn unlink() funktioniert.

      Was sagt dir das?
      No such file

      Schau in deine DB da ist wohl FILE_NAME irgendwo leer oder es steht was drin was nicht drin stehen soll.

      Lass die zudem ausgeben was in $reihe Zeile 81 drin steht und nicht funktioniert, dann siehst du es ja.
      Edit: da war jonas3344 schneller.

      Kommentar


      • #4
        O.K.
        Und welcher Editor würde mir das zeigen, und / oder kannst Du mir vielleicht sagen wo der Fehler liegt?

        Wie Du siehst bin ich blind...

        Kommentar


        • #5
          Vergleiche mal.

          unlink
          ('image_uploads'/$reihe["FILE_NAME"]);
          und

          unlink('image_uploads/' . $reihe["FILE_NAME"]);

          Kommentar


          • #6
            Absolute Grundlagen:

            http://php.net/manual/de/language.operators.string.php

            Kommentar


            • #7
              Danke

              Kommentar


              • #8
                PHP-Code:
                $selectStatement $pdo->prepare("
                    SELECT
                        FILE_NAME
                    FROM
                        auktion_images
                    WHERE
                        ANGEBOT_ID = :id;
                "
                );
                $selectStatement->execute([
                    
                'id' => $id
                ]);

                $deleteStatement $pdo->prepare("
                    DELETE FROM
                        auktion_images
                    WHERE
                        ANGEBOT_ID = :id;
                "
                );

                foreach(
                $selectStatement as $row) {
                    
                $pdo->beginTransaction();
                    try {
                        
                $deleteStatement->execute([
                            
                'id' => $row['id']
                        ]);
                        
                unlink('image_uploads/'.$row["FILE_NAME"]);
                        
                $pdo->commit();
                    }
                    catch(
                Throwable $e) {
                        
                $pdo->rollback();
                    }

                Kommentar


                • #9
                  Mal grundsätzlich :

                  change.php on line 81
                  dein gepostreter Code hat keine 81 Zeilen, nett ich zusammenzufassen, mit zeilennumber am anfag ist das noch netter-
                  Schöner Code Blar macht es aber nicht auch Sinn das "löschen" Der Bilder inm das Rollback miteinzubeziehen.

                  Kommentar


                  • #10
                    Zitat von tomBuilder Beitrag anzeigen
                    macht es aber nicht auch Sinn das "löschen" Der Bilder inm das Rollback miteinzubeziehen.
                    Ich glaube wenn der unlink nicht funktioniert, sollte eine Exception fliegen.

                    Kommentar


                    • #11
                      Sollte man meinen, ja.
                      Leider gibt's hier nur ein "false" als return und eine Warnung.

                      Grüße.

                      Kommentar


                      • #12
                        Zitat von Blar Beitrag anzeigen

                        Ich glaube wenn der unlink nicht funktioniert, sollte eine Exception fliegen.
                        Dann haben wir ja schon zwei verbesserungsvorschläge gefunden

                        Kommentar

                        Lädt...
                        X