Datei verschieben mit rename

  • Guten Abend zusammen,

    ich versuche aktuell eine Datei mit rename() zu verschieben, allerdings passiert beim klicken des button nichts, außer das die Seite neu geladen wird.

    PHP
    <div class="cell">
      <form action="index.php" method="post" onClick="if(!confirm('<?php echo $datei ?> wirklich löschen?')){return false;}">
        <input type="image" src="input.png" name="del<?php echo $dateiinfo['filename']; ?>">
      </form>
      <?php if (isset($_POST["del".$dateiinfo['fileinfo']])) { rename($datei,"del/".$datei); } ?>
    </div>

    Ich bin mir nicht sicher woran es liegt. Hoffe ihr könnt mir helfen, und das dieser Ausschnitt ausreicht. Der Ausschnitt ist der Inhalt einer foreach-Ausgabe

    [RS] 2000 G9 | Cyber Quack

    [VPS] 2000 ARM G11 | 1000 G9 | 200 G8 | Secret | A | mikro G11s | 4x nano G11s
    [WH] 8000 SE | 4000 SE | 2000 SE

    Einmal editiert, zuletzt von Bud ()

  • Welchen Inhalt hat denn $datei und $dateiinfo['filename']?


    Nebenbei bemerkt: Du solltest Ausgaben immer durch htmlspecialchars() o.ä. jagen. Sollte der Inhalt in den Variablen aus unsicheren Quellen (also vom User) kommen, ist das so übrigens brandgefährlich.

    "Wer nur noch Enten sieht, hat die Kontrolle über seine Server verloren." (Netzentenfund)

    Gefällt mir 3
  • $datei ist die Einzelausgabe meines foreach aus der scandir

    Code
    $alledateien = scandir($ordner);
    foreach ($alledateien as $datei) {

    und $dateiinfo['filename'] meine pathinfo: $dateiinfo = pathinfo($ordner."/".$datei);


    Nebenbei bemerkt: Du solltest Ausgaben immer durch htmlspecialchars() o.ä. jagen. Sollte der Inhalt in den Variablen aus unsicheren Quellen (also vom User) kommen, ist das so übrigens brandgefährlich.

    Das schau ich mir mal an, aber das Script ist pw geschützt und nur für mich gedacht. geht um ein simples upload script...

    [RS] 2000 G9 | Cyber Quack

    [VPS] 2000 ARM G11 | 1000 G9 | 200 G8 | Secret | A | mikro G11s | 4x nano G11s
    [WH] 8000 SE | 4000 SE | 2000 SE

    Einmal editiert, zuletzt von Bud ()

  • So ein ähnliches Problem hatte ich auch vor kurzen - Seite wird nur neu geladen ohne dass eine function aufgerufen wird. Bei mir lag es daran dass das zu klickende Element nicht den <Input type = "button"> Typ hatte.


    Edit:

    Ich habe mich da verdaddelt, ich meinte das type="button" in :


    <button class="buttonCalc" onclick="calcSum type="button">Calculate</button>

  • Das hat leider auch nicht geholfen...

    [RS] 2000 G9 | Cyber Quack

    [VPS] 2000 ARM G11 | 1000 G9 | 200 G8 | Secret | A | mikro G11s | 4x nano G11s
    [WH] 8000 SE | 4000 SE | 2000 SE

  • Dann lass Dir die entsprechenden Variablen halt mal mit var_dump() o.ä. ausgeben. Wird der unterste IF-Block überhaupt ausgeführt? Was ist der Rückgabewert von rename()? Wir können das nicht für Dich debuggen ;)


    (Der Code ist in dieser Form alles andere als ein ein MRE.)

    "Wer nur noch Enten sieht, hat die Kontrolle über seine Server verloren." (Netzentenfund)

  • Liegt es vielleicht daran dass du bei der einen Zeile

    del<?php echo $dateiinfo['filename']; ?> als Name setzt und $_POST["del".$dateiinfo['fileinfo']] abfragst? sollte da nicht auch ein filename rein statt ein fileinfo?

    Du merkst, dass ein Bug an dir hoch krabbelt. Du findest ihn nett und nennst ihn Exploit.

    Gefällt mir 1 Danke 1