login  Naam:   Wachtwoord: 
Registreer je!
 Forum

verwijderd verkeerde bestand

Offline lau - 10/08/2005 15:42 (laatste wijziging 10/08/2005 15:42)
Avatar van lauHTML interesse Ik heb een PHP script die een dir (mp3) moet uitlezen en deze in een array zetten en dan tonen. Ik wil de optie om een bestand te laten verwijderen. Dit doet hij wel, maar als ik op verwijderen drukt, verwijderd hij plots een verkeerde bestand 

Alles zit in dezelfde file zie hieronder:
  1. <?php
  2. if($_GET['c'] == 2 && isset($_POST['Verwijderen'])) {
  3. unlink($_POST['bestand']);
  4. echo '<script language="JavaScript" type="text/JavaScript">location.href="?p=w"</script>';
  5. }
  6. ?>
  7.  
  8. <form action="?p=w&amp;c=2" method="post" enctype="multipart/form-data">
  9. <table width="100%" border="0" cellspacing="10" cellpadding="0">
  10. <tr>
  11. <td colspan="2"><strong>Verwijder bestaande *.mp3 bestanden <em>meteen</em> van de server</strong></td>
  12. </tr>
  13. <tr>
  14. <td colspan="2"><hr class="dik" /></td>
  15. </tr>
  16. <tr>
  17. <td>Titelbestand</td>
  18. <td width="100">Optie</td>
  19. </tr>
  20. <tr>
  21. <td colspan="2"><hr class="dik" /></td>
  22. </tr>
  23. <?php
  24. // zoek mp3 files in dir
  25. $dir = "mp3/";
  26.  
  27. // lees dir uit en plaats alle mp3 in array
  28. $n = 0;
  29. $playlist = array();
  30. $fdir = opendir($dir);
  31. while($i = readdir($fdir)) {
  32. if (strpos(strtolower($i),".mp3") !== false) {
  33. $playlist[$n] = $i;
  34. $n++;
  35. }
  36. }
  37. // sluit dir en sorteer array
  38. closedir($fdir);
  39. array_multisort($playlist);
  40.  
  41. // echo playlist naar flash
  42. for ($i=0; $i<sizeof($playlist); $i++) {
  43. echo "<tr>\n";
  44. echo "<td><input name=\"bestand\" type=\"text\" id=\"bestand\" size=\"50\" value=\"$dir$playlist[$i]\" /></td>\n";
  45. echo "<td><input name=\"Verwijderen\" type=\"submit\" id=\"Verwijderen\" value=\"Verwijderen\" /></td>\n";
  46. echo "</tr>";
  47. }
  48. ?>
  49. </table>
  50. </form>


Qua opbouw is het goed, omdat dit maar een stukje uit mijn pagina is. Er zit namelijk ook nog een upload functie die ik hier heb weggelaten.
Maar kan iemand het probleem vinden waarom hij verkeerde bestand verwijderd 

5 antwoorden

Gesponsorde links
Offline ikkedikke - 10/08/2005 15:54
Avatar van ikkedikke PHP expert moet je neit voor ieder mp3 tje een apart form maken?
Offline lau - 10/08/2005 15:56 (laatste wijziging 10/08/2005 16:31)
Avatar van lau HTML interesse Ik denk zelf van niet.. als ik op verwijderd druk gaat hij naar ?p=w&c=2. c=2 is dus een verwijzing naar die bovenste php gedeelte. Hij verwijderd dan
  1. $_POST['bestand']
en deze haalt hij op van
  1. name=\"bestand\"
en die heeft een waarde die hij krijgt als
  1. value=\"$dir$playlist[$i]\"
.

Hij doet het ook wel, maar verwijdert vervolgens het verkeerde bestand. Dat vind ik een beetje vaag.

[edit]
Voorbeeld op http://foto.4dimension.nl/mp3/
Probeer hallo.mp3 maar te verwijderen. Dit doet die dus niet. Hij verwijderd u.mp3
Offline Button - 10/08/2005 16:45 (laatste wijziging 10/08/2005 16:46)
Avatar van Button PHP ver gevorderde het heeft niets met dat verwijderen te maken maar het staat op php.net dat je het best zo doet :

  1. <?
  2. while($i = readdir($fdir)) {
  3. if (strpos(strtolower($i),".mp3") !== false) {
  4. $playlist[$n] = $i;
  5. $n++;
  6. }
  7. ?>


verander dat eens in dit:
  1. <?
  2. false !== ($i = readdir($fdir))
  3. while(false !== ($i = readdir($fdir))){
  4. if (strpos(strtolower($i),".mp3") !== false) {
  5. $playlist[$n] = $i;
  6. $n++;
  7. }
  8. ?>


:D
Offline lau - 10/08/2005 17:10
Avatar van lau HTML interesse Jah ok, maar terug naar mijn probleem. Ik zit al een tijdje te zoeken.. geen resultaat tot nu toe 
Offline thomas___ - 10/08/2005 18:54 (laatste wijziging 10/08/2005 18:56)
Avatar van thomas___ PHP interesse Is het cst het bestand ervoor dat het programma verwijdert? Zoja, het eerste wat ik zou kunnen bedenken is het feit dat een array begint te tellen van 0 en niet van 1.

Thomas

[edit]
Snap eigelijk de functie van "wissen" niet. Waarvoor dient dit?
[/edit]
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.247s