Strona 1 z 1
Białe znaki w formularzu.
Napisane: czwartek, 29 czerwca 2017, 13:33
przez kunegundek
Witam! Podczas pisania kolejnych linijek kodu w php natrafiłem na spory kłopot. Otóż chciałem wrzucić do pola, w którym podajemy e-mail jako wartość zmienna sesyjną (o ile stnieje), tak aby po każdej nie udanej próbie logowania, nie trzeba było go ponownie wpisywać (chyba każdy wie, że jest to irytujące, szczególnie przy bardziej rozbudowanych formularzach

) Wszystko spoko, przefiltrowana zmienna sesyjna pięknie potem uzupełnia nasze pole w formularzu, lecz właśnie... Za każdym razem dodaje na początek kilkanascie białych znaków (po każdej błędnej próbie logowania - czyt. po każdym nadpisnaiu zmiennej), przez co nasz tekst ucieka coraz dalej :/ Przedstawię może tym oto screenem, jak to wygląda po pierwszym razie (Na wygląd formularza prosze nie patrzeć, aktualnie bawię się tylko logiką moich skryptów, tylko przeszkadza mi strasznie te uciekanei :/) :
http://prntscr.com/fp6c2j
Re: Białe znaki w formularzu.
Napisane: czwartek, 29 czerwca 2017, 13:39
przez kunegundek
Jako iż nie mogłem dodać w poście kodu (nie mam pojęcia dlaczego był błąd, który zgłaszałem już Panu Arkadiuszowi), to zrobię to w odpowiedzi
A oto kod:
formularz
login_form.php
Code: Zaznacz cały
<!-- Formularz do logowania na serwisie -->
<div>
<form method="post" action="login.php">
E-mail: <input type="text" name="email" value="
<?php
if(isset($_SESSION['email']))
{
if(!(empty($_SESSION['email'])))
{
$email = filter_var($_SESSION['email'], FILTER_SANITIZE_STRING);
echo $email;
}
}
?>
"/></br>
Hasło: <input type="password" name="password"/></br>
<input type="submit" value="ZALOGUJ"/>
<label>
<input type="checkbox" value="Zapamiętaj mnie" name="remember_me" />Zapamiętaj mnie!</br>
</label>
Nie masz konta? <a href="register_form.php">Zarejesturj się!</a>
</form>
</div>
Re: Białe znaki w formularzu.
Napisane: czwartek, 29 czerwca 2017, 13:50
przez kunegundek
A tutaj kod z pliku index.php, który przez wyskakujący błąd nie mogłem dodać w poście jak i w odpowiedzi (ciekawa awaria swoją drogą

).
http://wklej.org/id/3210950/
Re: Białe znaki w formularzu.
Napisane: czwartek, 29 czerwca 2017, 14:01
przez Morfidon
Szczerze powiedziawszy to na pierwszy rzut oka nie jestem pewien co jest powodem.
Spróbuj skorzystać z funkcji trim przed wypisaniem:
http://php.net/manual/pl/function.trim.php
Ciekawi mnie jaki będzie tego efekt. Będzie łatwiej szukać skąd jest błąd.
Re: Białe znaki w formularzu.
Napisane: czwartek, 29 czerwca 2017, 14:04
przez Morfidon
Ah już wiem, po prostu sam dodałeś spacje w wartości "value", musisz cofnąć blok <?php do od razu startu (tam gdzie zaczyna się atrybut value). W sumie ciężki błąd do znalezienia ^^
Re: Białe znaki w formularzu.
Napisane: czwartek, 29 czerwca 2017, 14:16
przez kunegundek
O matko no nie wierzę...

A ja się gapiłem w kod przez dłuższy czas i nie mogłem ogarnąć co jest nie tak, no ciekawe, skąd te białe znaki... Haha :3
Przerpaszam za kłopot, dziękuję za pomoc i pozdrawiam!

Re: Białe znaki w formularzu.
Napisane: czwartek, 29 czerwca 2017, 14:23
przez Morfidon
Nie ma najmniejszego problemu. Nie przejmuj się takie błędy są właśnie najcięższe do znalezienia ^^
Re: Białe znaki w formularzu.
Napisane: czwartek, 29 czerwca 2017, 14:44
przez kunegundek
No niestety, to podobnie jak z błędem "czemu mimo, że zapisuje się wartość do ciasteczka, to one nagle znika" - wtedy zapomniałem dodać do aktualnego czasu, czas po jakim ma się ono usuwać...
Jeszcze raz dzieki i pozdrawiam!

Jak będę miał więcej problemów to jak zwykle pewnei tutaj wrócę ^^