Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Drzewko - Problem z dodawaniem kategorii
Forum PHP.pl > Forum > PHP
The Night Shadow
Niedawno zakładałem temat o podobnej treści tyle, że tam chodziło o usuwanie kategorii. Tu natomiast problem dotyczy ich zakładania, a konkretniej.

Struktura bazy danych:

Galerie:
id (autonmeracja)
id_matki (id galerii do której podpięta jest ta - w przypadku kategorii najwyższych pojawia się 0)
tytul (tytul kategorii)

Zdjęcia:
id (autonumeracja)
id_matki (id kategorii pod którą podlega zdjęcie)

Skrypt wyświetlania drzewka:

  1. <?php
  2.             function kategorie($nr, $i = 0)
  3.             {
  4.                 $poszukiwanie_kategorii = mysql_query("SELECT * FROM galerie WHERE id_matki='$nr' ORDER by tytul");
  5.                 while ($poszukiwanie_kategorii and $wiersz = mysql_fetch_assoc($poszukiwanie_kategorii))
  6.                 {
  7.                     for($a=1; $a<$i; $a++)
  8.                     {
  9.                         echo "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;";
  10.                     }
  11.                     for ($a=$i-1; $a<$i and $a>=0; $a++)
  12.                     {
  13.                         echo "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;";
  14.                     }
  15.                     echo 
  16.                         "<b>".$wiersz['tytul']."</b>";
  17.  
  18.                    //W tym miejscu pojawia się link do dodawania nowej kategorii (skrypt formualrza poniżej)
  19.  
  20.                     kategorie($wiersz['id'], $i+1);
  21.                 }
  22.             }
  23.             kategorie(0);
  24. ?>


Formularz przesyłający dane metodą POST (przesyłane dane to id kategorii pod którą podpina się nową)

  1. <form method="post" action="plikgaleria.php" id="dodaj_kategorie<?php echo "".$wiersz['tytul'].""; ?>" style="display: inline;">
  2. <input type="hidden" name="id" value="<?php echo "".$wiersz['id'].""; ?>" />
  3. <input type="hidden" name="opcja" value="dodaj_kategorie" />
  4. <input type="hidden" name="send" value="galeria" />
  5. <a href="#" onclick="document.getElementById('dodaj_kategorie<?php echo "".$wiersz['tytul'].""; ?>').submit();">
  6. Kategoria
  7. </a>
  8. </form>


Po kliknięciu w link przy danej kategorii wyświetla się inpt do wpisania nowej nazwy:

  1. if ($option=='dodaj_kategorie')
  2.             { 
  3.                 $podpiecie_do = strip_tags(htmlspecialchars( mysql_escape_string(trim($_POST["id"])), ENT_QUOTES));
  4.  
  5. //Tu pojawia się FORM w nim dodatkowy input ukryty z id matki <input type="hidden" name="id_dodawanej" value="<?php echo "$podpiecie_do"; ?>" />
  6.  
  7. }


Poniżej skrypt dodający kategorię

  1. <?php
  2. $tytul_nowej = strip_tags(htmlspecialchars( mysql_escape_string(trim($_POST["tytul"])), ENT_QUOTES));
  3. $id_mat = strip_tags(htmlspecialchars( mysql_escape_string(trim($_POST["id_dodawanej"])), ENT_QUOTES));
  4. $dodanie = mysql_query("INSERT INTO galerie SET id_matki='$id_mat', tytul='$tytul_nowej'");
  5. ?>


I teraz tak. W momencie kiedy dodaję kolejne kategorie:
1
...2
...3
......4
...5
...6

czyli kiedy każda ma inną nazwę wszystko jest w porzadku, ale kiedy stworzę coś takiego:

1
...1

i do podkategori o nazwie 1 jede chcę dodać jakąkolwiek inną powinno powstać

1
...1
......nowa

a powstaje

1
...1
...nowa


Czy ktoś jest wstanie pomóc?
NuLL
Proponuje najpierw poszukac na wortalu artykulu o drzewkach zamiast pisac skrypty ktore zabijaja serwer.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.