Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Tablica + Sesje
Forum PHP.pl > Forum > Przedszkole
maniaksz
Wyświetlam z bazy numer,do ktorego przporzadkowany jest id_pyt


  1. <?
  2.     $i=1;
  3.         
  4.     while($rekord=mysql_fetch_array($pytania))
  5.     {
  6.         $id_pyt=$rekord[&#092;"id_pyt\"];
  7.     ?>
  8.     <tr>
  9.         <td><?
  10.  
  11.         
  12.         echo &#092;"<a href=\"pytania.php?pyt_id=$id_pyt\">$i</a>\";
  13.         
  14.         
  15.         
  16.         
  17.         echo &#092;"<input type=\"hidden\" value=\"$id_pyt\" name=\"l_id\">\";
  18.         
  19.         
  20.         
  21.         
  22.         ?></td>
  23.     </tr>
  24.     <?
  25.     $i++;
  26.     }?>


Mam tu pole ukryte i chciałbym aby po wcisnieciu submita id_pyt bylo przechowywane w tablicy sesyjnej a nastepnie sprawdzane czy takie id jest juz w tablicy i wyswietlanie tylko tych ktorych nie ma. Nie wiem tylko jak zapisac i sprawdzic w tablicy sesyjnej czy id_pyt zostalo juz do niej dodane. Prosze o podpowiedz, jak to mozna rozwiazac.
Nie wiem czy napisalem to jasno winksmiley.jpg
strife
Witam,

Mało zrozumiałem, więc będę pisał trochę (nie) na temat... tak więc... nie wiem czemu ma to akurat być w sesji... czemu nie metodą post?

  1. <?php
  2.  
  3. echo '<form method=\"post\" action=\"index.php\">
  4. <input name=\"l_id\" type=\"submit\" value=\"'.$id_pyt.'\">
  5. </form>';
  6.  
  7. ?>


Następnie sprawdzasz czy w bazie jest taki sam wpis:
  1. <?php
  2.  
  3. $wpis = $_POST['l_id']; // Ewentualnie $_SESSION (jesli ma byc tak jak chciales poprzez sesje) 
  4. // $_SESSION['start'][] = $_POST['l_id']; moze jakos tak.. questionmark.gif
  5.  
  6. $zapytanie = mysql_query(&#092;"SELECT * FROM tabela WHERE id = $wpis\");
  7. $array = mysql_fetch_array($zapytanie);
  8.  
  9. if ($array == FALSE)
  10. {
  11.  
  12. // pokazany kod, z zaznaczeniem że taki rekord nie istnieje! Czyli naprzykład jesl
  13.  chciałes aby opartne to było na sesji, to do dodanie to tablicy $_SESSION rekor
  14. ow..
  15.  
  16. }
  17. else{
  18.  
  19. // Odwrotnie... Czyli jakis warunek, jesli zmienna sesyjna istnieje to wykonaj jak
  20. es tam zapytanie... ktore bedzie pokazywalo to co chiciales :P
  21.  
  22. }
  23.  
  24. ?>


Szczerze to nie mam pojęcia o co Ci chodzi... napisz może bardziej dokładnie, ja narazie nie wiem o co biega dokładnie. sad.gif

Pozdrawiam!
maniaksz
No wlasnie nie chodzi mi o sprawdzenie czy jest w bazie juz taki wpis,bo to wiem jak zrobic. Postaram sie troche jasniej omowic problem:). Petla while wyswietlam id pytania. Aby wyswietlic i ponumerowac pytania w kolejnosci od 1...n korzystam ze zmiennej pomocniczej $i. Jednoczesnie $i jest linkiem do
  1. <?php
  2.  
  3. echo &#092;"<a href=\"pytania.php?pyt_id=$id_pyt\">$i</a>\";
  4.  
  5. ?>

Klikajac przykladowo na nr.3 mam ustawiona wartosc zmiennej pyt_id. Ponizej mam formularz i teraz chcialbym aby po kliknieciu w submita, zostal w jakis sposob zablokowany link nr.3 - inaczej, chcialbym uczynic go nieaktywnym.
Wpadlem na pomysl,zeby za pomoca przycisku ukrytego np.
  1. <?php
  2.  
  3. <input name=&#092;"l_id\" type=\"hidden\" value=\"'.$id_pyt.'\">
  4.  
  5. ?>

pamietac wartosc id linka ktory zostal klikniety. Chcialem to zrobic w sesji, przykladowo zainicjowac tablice dwuwymiarowa w ktorej przechowywal bym
[id_pyt][wartosc 0]
Poczatkowo dla kazdego id_pyt bylaby wartosc 0(aktywny). Teraz majac po kliknieciu submita id_pyt moglbym dla danego id zamienic 0 na 1 i dzieki temu sprawic ze wyswietlal by sie juz tylko numer 3 a nie link.

Jesli masz jakis inny,moze latwiejszy pomysl zeby w jakis sposob zrobic kliknietego linka nieaktywnym,bylbym bardzo wdzieczny za podpowiedz.
Mam nadzieje ze teraz bedzie to bardziej zrozumiale winksmiley.jpg
Pozdrawiam
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.