![]() |
![]() ![]() |
![]() |
![]() ![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 9 Pomógł: 0 Dołączył: 12.03.2008 Ostrzeżenie: (0%) ![]() ![]() |
Mam problem. Zapisałem taki skrypt:
CODE <? session_start(); function login_test($sesja, $user){ if($sesja != 1){ echo " <form action=\"login.php\" method=\"post\"> <table class=\"me\"> <tr><td colspan=\"2\" class=\"meh\">LOGIN</td></tr> <tr> <td class=\"mec\">Login:</td> <td class=\"mec\"><input type=\"text\" name=\"login\" size=\"20\" class=\"site_login\" /></td> </tr> <tr> <td class=\"mec\">Hasło:</td> <td class=\"mec\"><input type=\"password\" name=\"pass\" size=\"20\" class=\"site_login\" /></td> </tr> <tr> <td colspan=\"2\" align=\"center\"><input type=\"submit\" value=\"LOGUJ\" class=\"site_login\" /></td> </tr> </table> </form><br /> "; } else { echo " <table class=\"me\"> <tr> <td class=\"meh\">Użytkownik</td> </tr> <tr> <td class=\"mec\"> Witaj <b>$user</b>!<br /> <a href=\"?akcja=wyloguj\">Wyloguj</a> </td> </tr> </table><br /> "; } } login_test($_SESSION["auth"], $_SESSION["user"]); ?> Ten kod jest wpisany w bazę danych. Na stronie mam normalne zapytanie mysql_query itp tak, że przywołuje skrypt z bazy. Jednak nie chce mi tego skryptu wykonać, a i próbowałem z <?php i <? dlatego to nie wina short tags. Dlaczeog? Z głory dzięki za pomoc.
Powód edycji: dodalem tag (cysiaczek)
|
|
|
![]()
Post
#2
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
bo funkcje oprocz zadeklarowania nalezy jeszcze wywolac.
edit down: ty moze tepy nie jestes, ale ja za to jestem slepy. sorki. -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 9 Pomógł: 0 Dołączył: 12.03.2008 Ostrzeżenie: (0%) ![]() ![]() |
Łaaa. Tępy nie jestem. Pisze w tym dziale bo w dziale skrypty wyskoczyło mi, że nie mogę. Zobacz na koniec tego skryptu. Jest wywołanie z danymi.
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Przyjaciele php.pl Postów: 1 595 Pomógł: 282 Dołączył: 24.09.2007 Skąd: Reda, Pomorskie. Ostrzeżenie: (0%) ![]() ![]() |
a wywala ci jakieś błędy? sprawdź (tzn. włącz wyświetlanie błędów na serwerze php...)
podejrzewam, że nie powodzi się session_start() - skoro includujesz ten plik do innego, to prawdopodobnie już coś wysłałeś do przeglądarki... a session_start() musi być wywołane przed wysłaniem czegokolwiek... -------------------- - Oh no, my young coder. You will find that it is you who are mistaken, about a great many things... - |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 9 Pomógł: 0 Dołączył: 12.03.2008 Ostrzeżenie: (0%) ![]() ![]() |
Nie wywala błędów bo używam bufora ob_start(). Po za tym to minimalnie zmodyfikowałem ten skrypt i wstukałem ponownie do bazy danych. Oto ten skrypt:
CODE function log_test($user, $auth){ if(!isset($user) || !isset($auth)){ echo " LOGIN Login: Hasło: "; } else { echo " Użytkownik Witaj $user! Wyloguj "; } } log_test($_SESSION["auth"], $_SESSION["user"]); Ciągle nie chce go wykonać. Ten post edytował bartekvip 12.03.2008, 23:45:33 |
|
|
![]()
Post
#6
|
|
![]() Grupa: Przyjaciele php.pl Postów: 1 595 Pomógł: 282 Dołączył: 24.09.2007 Skąd: Reda, Pomorskie. Ostrzeżenie: (0%) ![]() ![]() |
tu masz tak:
Cytat function log_test($user, $auth) a wywołujesz tak: Cytat log_test($_SESSION["auth"], $_SESSION["user"]); dodałem kolorki żeby lepiej było widać... -------------------- - Oh no, my young coder. You will find that it is you who are mistaken, about a great many things... - |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 9 Pomógł: 0 Dołączył: 12.03.2008 Ostrzeżenie: (0%) ![]() ![]() |
Ciągle tym manipuluje. Zrezygnowałem z funkcji na rzecz tego:
CODE if(!isset($_SESSION["auth"]) || !isset($_SESSION["user"])){ echo " LOGIN Login: Hasło: "; } else { echo " Użytkownik Witaj $user! Wyloguj "; } ?> Jednak przeraża mnie to, że ta funkcja co była wcześniej nawet z błędem nie pokazywał, że coś nawala. A jak kogoś to naprowadzi to wrzucam powtórne wykonanie z bazy (takie) CODE if(!isset($_SESSION["auth"]) || !isset($_SESSION["user"])){ echo " <form action=\\"login.php\\" method=\\"post\\"> <table class=\\"me\\"> <tr><td colspan=\\"2\\" class=\\"meh\\">LOGIN</td></tr> <tr> <td class=\\"mec\\">Login:</td> <td class=\\"mec\\"><input type=\\"text\\" name=\\"login\\" size=\\"20\\" class=\\"site_login\\" /></td> </tr> <tr> <td class=\\"mec\\">Has?o:</td> <td class=\\"mec\\"><input type=\\"password\\" name=\\"pass\\" size=\\"20\\" class=\\"site_login\\" /></td> </tr> <tr[...] Zmieniłem trochę jeszcze raz i teraz wygląda to tak
Ten post edytował bartekvip 13.03.2008, 00:28:07 |
|
|
![]()
Post
#8
|
|
![]() Grupa: Przyjaciele php.pl Postów: 1 590 Pomógł: 40 Dołączył: 11.01.2007 Skąd: Centrum Ostrzeżenie: (0%) ![]() ![]() |
A czy w tym przypadku nie pomoże funkcja eval()
![]() Pytam się nieśmiało bo nie jestem przekonany w 100% ale mam takie niejasne wrażenie, że do tego to może się przydać. -------------------- 404
|
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 9 Pomógł: 0 Dołączył: 12.03.2008 Ostrzeżenie: (0%) ![]() ![]() |
W tym problem, że jak wpisałem w bazę danych nawet takie coś:
To nie może tego wykonać. Może to kwestia typu pola w tabeli. Pole to, w którym jest kod ma typ TEXT, bo jak wiem tylko takie mieszczą duże ciągi znaków. Może pomoże to, że tak wygląda funkcja wyciągająca menu z bazy dancyh. Ona jest tylko w index.php umieszczona i przywoływana:
|
|
|
![]()
Post
#10
|
|
![]() Grupa: Przyjaciele php.pl Postów: 1 590 Pomógł: 40 Dołączył: 11.01.2007 Skąd: Centrum Ostrzeżenie: (0%) ![]() ![]() |
No to proponuje wykorzystać właśnie eval" title="Zobacz w manualu PHP" target="_manual
-------------------- 404
|
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 9 Pomógł: 0 Dołączył: 12.03.2008 Ostrzeżenie: (0%) ![]() ![]() |
Spróbowałem. Teraz wyświetlanie wygląda tak:
I wybiło mi takie błędy: Kod [b]Parse error[/b]: syntax error, unexpected '>' in [b]C:\xampp\htdocs\test\function.php(67) : eval()'d code[/b] on line [b]1[/b] Dzięki. Pokombinowałem trochę i rozwiązałem problem funkcją eval(). Dzięki za pomoc. |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 8.07.2025 - 08:50 |