Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: kilkuczłonowa zmienna z sesji
Forum PHP.pl > Forum > PHP
ktuvok
Robię system katalogowania klientów, który w dużym uproszczeniu wygląda nastepująco:

Plik zapisz_krok1 - formularz, w którym juzer wpisuje dane klienta.
Plik zapisz_krok2 - wyświetla wpisane dane (ekran potwierdzający) i zapisuje je dodatkowo do sesji:
$_SESSION[Nazwa] = stripslashes($_POST[Nazwa]);
(slashe dodawane są automatem przez serwer)
Zapisuje po to, aby cofnięcie do poprzedniego ekranu wyświetlało w odpowiednich polach wpisane wcześniej treści.

W pliku zapisz_krok1, przed narysowaniem formularza, pobieram dane z sesji:
$Nazwa = $_SESSION['Nazwa'];
Dane pobierają się prawidłowo, sprawdziłem.
Następnie rysuję formularz i wyświetlam dane:
<INPUT TYPE=text NAME=Nazwa value="$Nazwa">

Jeśli jako nazwę klienta wpiszemy firma ABCD, wszystko jest OK. W ekranie potwierdzającym mamy:
nazwa klienta: firma ABCD
jak cofniemy o ekran wstecz, to w polu nazwa klienta mamy również wpisane:
Nazwa klienta: firma ABCD (w textboxie)

Ale:
jeśli zapis 'firma ABCD' zamienię na 'firma "ABCD"' (część nazwy w cudzysłowiu), system po powrocie do ekranu 1 wyświetla w polu tekstowym jedynie: 'firma'.

Jednocześnie jak mu napiszę zaraz nad formularzem:
echo $Nazwa
to ten napis wyświetla poprawnie, a zaraz potem w polu tekstowym samo 'firma'...

O co tu może chodzić?

Pozdrawiam,
K
HaRy
[php:1:f67f18b474]<?php
print "<INPUT TYPE=text NAME=Nazwa value="".htmlspecialchars($Nazwa).""> ";
?>[/php:1:f67f18b474]
powinno pomoc
ktuvok
Musiałem jeszcze rezultat potraktować stripslashes, ale teraz działa.

Dziękuję i pozdrawiam,
K
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.