Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP] index w list()
Kshyhoo
post 12.12.2013, 12:22:54
Post #1





Grupa: Opiekunowie
Postów: 3 855
Pomógł: 317
Dołączył: 4.01.2005
Skąd: że




Witam. Kombinuję i kombinuję i nie mogę skumać. Chcę usunąć linie w pliku txt. Do tej pory używałem takiego kodu:
  1. if (isset($_POST["usun"])) {
  2. for ($i=0;$i<count($_POST["usun"]);$i++) {
  3. unset($dane[$_POST["usun"][$i]]);
  4. }
  5.  
  6. $f = fopen($plik, "w");
  7. foreach($dane as $linia) fputs($f, "$linia");
  8. fclose($f);
  9. }
  10.  
  11. // pierwsza pętla ładująca dane z pliku do list()
  12. for($i=0;$i<count($dane);$i++) {
  13. list($dane1[$i], $dane2[$i], $dane3[$i], $dane4[$i], $dane5[$i], $dane6[$i], $dane7[$i]) = explode("|", $dane[$i]);
  14. }
  15.  
  16. // potem ładowanie do tabelki
  17. for($i=0;$i<count($dane);$i++) {
  18. echo '<tr>
  19. <td style="width: 150px">'.$dane1[$i].'</td>
  20. <td style="width: 150px; text-align: center">'.$dane2[$i].'</td>
  21. //...
  22. // i tu newralgiczny element
  23. <input type="checkbox" name="usun[]" value="'.$i.'" />
  24. // ...

Czyli za pomocą checkbox przekazywałem index wiersza ($i) do tablicy $_POST i usuwałem wiersz o $dane[$_POST["usun"][$i]].
Chciałem jednak zmodyfikować kod pod względem sortowania. Użyłem kodu:
  1. array_multisort($dane6, $dane5, $dane4, $dane1, $dane2, $dane3, $dane7);

I tu nastąpił problem, gdyż w tabelce dane z pliku nie są przypisane już do indeksów pętli.
I tu pytanie. Jak mam dostać się do index już w pierwszej pętli for z list()? Normalnie można zrobić to tak:
  1. while( list( $index, $wartosc ) = each( $dane ) ) {
  2. echo $index . " - " . $wartosc . "<br>";
  3. }

A tu nie mogę poradzić sobie z "włożeniem" tych danych do tabelki.


--------------------
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 07:11