Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Przekazanie zmiennej ---Problem
lukiz88
post
Post #1





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 7.08.2007

Ostrzeżenie: (0%)
-----


Cześć

mam problem z przekazaniem zmiennej "$artykul" z formularza.
Próbowałem na wiele sposobów ale nie dałem rady więć liczę na waszą pomoc.
W tym skrypcie chodzi o to by po wybraniu którą linijkę ma usunąć, najpierw ma przekazać zmienną artykuł i ją usunąć poleceniem unlink jak dobrze pamiętam, a potem daną linijkę z pliku newsy.txt.Usuwa linijkę ale nie usuwa pliku.

oto Kod(napisałem to co tylko działa bez unlink):
  1. <?
  2.  
  3. $plik = "newsy.txt";
  4.  
  5. if ((isset($_POST['usun'])) AND (is_numeric($_POST['usun']))) {
  6. /* sprawdzam czy zmienna $_POST['usun'] zostala zainicjonowana i czy jest cyfrą */
  7.  
  8.  
  9.  
  10.  
  11. $dane = file($plik); /* pobieram dane z pliku */
  12.  
  13. unset($dane[$_POST['usun']]) /* usuwam wybrany rekord tablicy */
  14.  
  15. $f = fopen($plik, "w"); /* nawiązuje połączenie z plikiem i kasuje jego zawartosc */
  16. foreach($dane as $linia){
  17.  fputs($f, $linia); /* wprowadzam linie po linii do pliku */
  18. }
  19. fclose($f); /* zamykam polączneie z plikiem */
  20.  
  21. }
  22.  
  23. ?>
  24.  
  25. <form action="usu.php" method="post">
  26. <select name="usun">
  27. <?php
  28. $dane = file($plik);
  29.  
  30. for($i=0;$i<count($dane);$i++) {
  31. list($imie[$i], $nazwisko[$i], $miejscowosc[$i], $artykul[$i]) = explode("|&&|", $dane[$i]);
  32.  
  33.  
  34. }
  35.  
  36. for($i=0;$i<count($imie);$i++) {
  37.  echo '<option value="'.$i.'">Data: '.$imie[$i].", Tytul: ".$nazwisko[$i].", Tresc: ".$miejscowosc[$i].", Artykul: ".$artykul[$i]."</option>";
  38.  
  39. }?>
  40. </select>
  41.  
  42.  
  43. <input type="submit" value="usun" />
  44. </form>


Mam nadzieje że pomożecie.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
Sokal
post
Post #2





Grupa: Zarejestrowani
Postów: 237
Pomógł: 1
Dołączył: 8.02.2007

Ostrzeżenie: (10%)
X----


Jakieś errory?

Nie dałeś srednika po
  1. <?php
  2. unset($dane[$_POST['usun']])
  3. ?>


A jak i to nie pomoże to spróbuj tak:
zamiast
  1. <?php
  2. unset($dane[...])
  3. ?>

  1. <?php
  2. $dane[$_POST['usun']] = '';
  3. ?>


I zamiast
  1. <?php
  2. foreach($dane as $linia){
  3.  fputs($f, $linia); /* wprowadzam linie po linii do pliku */
  4. }
  5. ?>

To
  1. <?php
  2. foreach($dane as $linia){
  3. if($linia != '')
  4. {
  5. fputs($f, $linia); /* wprowadzam linie po linii do pliku */
  6. }
  7. }
  8. ?>


Ten post edytował Sokal 7.08.2007, 19:03:50
Go to the top of the page
+Quote Post
Kicok
post
Post #3





Grupa: Zarejestrowani
Postów: 1 033
Pomógł: 125
Dołączył: 17.09.2005
Skąd: Żywiec

Ostrzeżenie: (0%)
-----


Cytat
Usuwa linijkę ale nie usuwa pliku.

oto Kod(napisałem to co tylko działa bez unlink):


Ale jak niby mamy ci pomóc, skoro zamieściłeś jedynie działający kod? (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Może pokażesz w którym miejscu masz tego unlinka, to się pomyśli czemu nie działa.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 23.08.2025 - 14:41