Diskuze: Výpis adresáře a následný výběr souboru k editaci

PHP PHP Výpis adresáře a následný výběr souboru k editaci American English version English version

Avatar
Dave
Neregistrovaný
Avatar
Dave:

Ahoj lidi, může mě dobrá duše nakopnout, jak propojit scripty v souboru tak, aby při výpisu adrsáře bylo možné vybrat soubor k editaci ?

<?php
 $soubory = array();
 $cesta = dir("data/");
  if(!IsSet($_GET["soubor"]))
  {
  while ($soubor=$cesta->read())
    {
    $soubory[] = $soubor;
    if ($soubor != "." && $soubor != "..")
    {
    $i++;
    $soubor = ereg_replace(".txt","","$soubor");
    echo "<form action='' method='get'>
          <input type='submit' name='$i' value='$soubor' id='odkaz'> <br />
          <input type='hidden' name='soubor' value='$soubor'>
          </form>";
    }
    }
  }
  if (IsSet($_GET["soubor"]))
  {
  $pom = ereg_replace("#","",$_GET["soubor"]);
  include("clanky/" . $pom . ".txt");
  }

    if($_POST['edit']) {
       $filename = $_POST['file'];
       $handle = fopen($filename, "r");
       $contents = fread($handle, filesize($filename));

       echo "<form method=\"post\" action=\"index.php?area=edit\">
                   <strong>$filename</strong><br>
                   <input type=\"hidden\" name=\"file\" value=\"$filename\">
                   <textarea name=\"content\" cols=\"60\" rows=\"20\">".$contents."</textarea><br>
                   <input type=\"submit\" name=\"update\" value=\"Update\">
                </form>";

       fclose($handle);

    } elseif($_POST['update']) {
       $filename = $_POST['file'];

       if(is_writable($filename)) {
          $handle = fopen($filename, "w+");
          fwrite($handle, $_POST['content']);
          fclose($handle);

          echo "File: <strong>". $filename . "</strong> edited successfully.<br><a href=\"$PHP_SELF\">Edit More Files</a>";
       } else {
          echo "Error! <strong>". $filename . "</strong> File may not be writable.";
       }
    } else {
       echo "<form method=\"post\" action=\"$PHP_SELF\">
                   File: <input type=\"text\" name=\"file\"><br>
                   <input type=\"submit\" name=\"edit\" value=\"Edit\">
                </form>";

    }

    ?>
 
Odpovědět 24.10.2013 19:58
Avatar
Daniel Vítek
Tým ITnetwork
Avatar
Odpovídá na Dave
Daniel Vítek:

Nechtělo se mi ten zdroják číst celý, jde to jednoduše takto:

$adresar = opendir(".");
while ($soubor = readdir($adresar))
{echo ('<a href="uprav.php?soubor=' . $soubor . '">' . $soubor . '</a><br>'}

Netestoval jsem to, pak napiš jestli to funguje.

 
Nahoru Odpovědět 24.10.2013 21:24
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na Dave
David Čápka:

Ten kód je příšerný, nebezpečný a používáš v něm funkce, které v novém PHP už ani neexistují.

Nahoru Odpovědět 24.10.2013 21:54
Miluji svou práci a zdejší komunitu, baví mě se rozvíjet, děkuji každému členovi za to, že zde působí.
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 3 zpráv z 3.