Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php][sql] dodawanie do sesji
Forum PHP.pl > Forum > Przedszkole
dsadsaf
Próbuję wykombinować skrypt który przekieruje mnie na stronę "costam.php" za każdym razem dodając do sesji inny "id"
  1. <?php
  2. if(mysql_num_rows($wynik) > 0) { 
  3.  
  4. echo "<table>"; 
  5.  echo '<th>lp</th>';
  6. echo '<th>Imię</th>';
  7.  echo '<th>Nazwisko</th>';
  8.  
  9. while($r = mysql_fetch_assoc($wynik)) { 
  10.  
  11. echo "<tr>"; 
  12. echo "<td>".$r['id']."</td>"; 
  13. echo "<td>".$r['imie']."</td>"; 
  14. echo "<td>".$r['nazwisko']."</td>"; 
  15. echo "<td> <a href=\"costam.php\">EDIT</a></td>";
  16. echo "</tr>";
  17. $_SESSION['abc']=$r['id']; 
  18.  } 
  19. echo "</table>"; 
  20. }
  21. ?>


plz Help smile.gif


-------------------------
do PHP są odpowiednie znaczniki BBCode
a nie tylko [code] do wszystkiego
~Cienki1980
kossa
Podstawowa zasada - jeśli sesje to session_start(); musi być zawsze na samym początku wysyłany do przeglądarki, przed jakimkolwiek innym znakiem, nawet nie może być spacji bo wyskoczy błąd headers already send....

to robisz OK:

Cytat
$_SESSION['abc']=$r['id'];


a przekierowanie to w tym miejscu to nie możesz użyć header" title="Zobacz w manualu PHP" target="_manual i Location (błąd jak przy sesjach bo wysyłasz nagłówek), ale możesz przekierowanie zrealizować w javascript

Łukasz
dsadsaf
Nie używam ani header ani Location. po naciśnięciu "edit" ma przekierowac na stronę. To musi być w javascript? bo tego języka nie umiem w ogóle. wolałbym to załatwić w php :|
kossa
a to teraz Ciebie rozumiem smile.gif

to link do costam.php mozesz tak zrobic:

  1. <?php
  2. echo "<td> <a href=\"costam.php?id=".$r['id']."\">EDIT</a></td>";
  3. ?>


a w pliku costam.php na samym poczatku:

  1. <?php
  2.  $_SESSION['abc']=$GET[["id"];
  3. ?>


a w samym pliku costam.php jeśli będziesz potrzebować wartości tej zmiennej to nie odwołuj się do niej za pomocą $_SESSION bo odczytana będzie mogła być dopiero po przeładowaniu strony a za pomocą tablicy $_GET czyli $GET[["id"];

Łukasz
-pearl1985-
[quota]
  1. <?php
  2.  $_SESSION['abc']=$GET[["id"];
  3. ?>
[/quota]
Jeszcze lepiej to rozwiązać tak

  1. <?php
  2. echo "<td> <a href=\"costam.php?".session_name()."=".session_id()."\">EDIT</a></td>";
  3. ?>


Niezależnie, jak php domyślnie sobie ustawia nazwę zmiennej sesyjnej czy uzytkownik ustawi nazwę, php automatycznie sobie z tym radzi.
Nalezy jedynie pamiętać by nazwę sesji jaką domyślnie ustawimy (mówie o PHPSESSID), to trzeba dorzucić wtedy session.name domyślny na ten którego chcesz używać i po robocie.
dsadsaf
Dzieki wielkie smile.gif pomogliście mi smile.gif
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.