Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> link do strony w polu "print"
misiekdg
post 14.11.2005, 09:55:21
Post #1





Grupa: Zarejestrowani
Postów: 23
Pomógł: 0
Dołączył: 6.11.2005

Ostrzeżenie: (0%)
-----


Mam mały problem, ponieważ mam funkcję która sprawdza sprawdza czy użytkownik jest zalogowany, jak nie to wyświetla napis "brak dostępu" a jak tak pojawia się podmenu z samymi linkami. Kod wygląda następująco:

  1.  <?
  2. if(!auth())
  3. {
  4.   print "<p class=error align=center>*** Brak dostępu ***</p><br>
  5.            <p class=error align=center>*** Musisz się zalogować ***";
  6. }
  7. else
  8. {
  9.   print "
  10. <a href=index.php?page=so/pyt&<?=SESID?>> Pytania wstępne na laborki</A><br> 
  11.           "} 
  12. ?>


poprawiam
---
nospor




rzecz w tym, że po najechaniu na link przeglądarka wyświetla na pasku stanu tylko
"http://www"..."/index.php?page=so/pyt&<?=SESID?" i po kliknięciu na niego traci sesję, gdyż jej numer nie jest przesyłany. Problemu tego nie miałem wcześniej ale w tym przypadku nie mogę użyć cucysłowów, ponieważ wyskakuje błąd z funkcją print.

Ten post edytował nospor 14.11.2005, 10:25:13
Go to the top of the page
+Quote Post
ghostrider
post 14.11.2005, 10:22:27
Post #2





Grupa: Zarejestrowani
Postów: 135
Pomógł: 0
Dołączył: 30.09.2005
Skąd: k-rk

Ostrzeżenie: (0%)
-----


nakombinowałeś :

Cytat
  1. print "
  2. <a href=index.php?page=so/pyt&<?=SESID?>> Pytania wstępne na laborki</A><br>
  3.  "}

powinno być:

  1. <?php
  2.  print "
  3. <a href=index.php?page=so/pyt&".$SESID."> Pytania wstępne na laborki</A><br>
  4.  " ; 
  5. }
  6. ?>


i tagów nie zamykasz, i jakis taki dziwny ten kod masz, tu małe <a href=....> kończysz </A> dużym,

bałaganiarz jesteś ...., przewiduje wiecej "dziwnych" problemów w przyszłości


--------------------
There are 10 types of people in the world:
-Those who understand binary, and those who don't...
There's no place like 127.0.0.1
Go to the top of the page
+Quote Post
Sabistik
post 14.11.2005, 10:28:07
Post #3


Administrator wortalu


Grupa: Przyjaciele php.pl
Postów: 960
Pomógł: 39
Dołączył: 21.10.2003
Skąd: Kraków

Ostrzeżenie: (0%)
-----


a nie powinno byc SID?
  1. <?php
  2.  
  3. print "<a href=index.php?page=so/pyt&".SID."> Pytania wstępne na laborki</A><br>" ; 
  4. ?>
Go to the top of the page
+Quote Post
nospor
post 14.11.2005, 10:30:03
Post #4





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Cytat(misiekdg)
ale w tym przypadku nie mogę użyć cucysłowów, ponieważ wyskakuje błąd z funkcją print.
laugh.gif
no jak ktos nie zna podstaw to nic dziwnego
  1. <?php
  2.  
  3. <a href="index.php?page=so/pyt&".SESID.""> Pytania wstępne na laborki</a><br> 
  4.           ";
  5.  
  6. ?>

lub
  1. <?php
  2.  
  3. <a href="index.php?page=so/pyt&'.SESID.'"> Pytania wstępne na laborki</a><br> 
  4.           ';
  5.  
  6. ?>

dalem poprawki tylko na te cudzyslowia

pozatym przenosze na poczatkujacy


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
misiekdg
post 14.11.2005, 10:52:59
Post #5





Grupa: Zarejestrowani
Postów: 23
Pomógł: 0
Dołączył: 6.11.2005

Ostrzeżenie: (0%)
-----


No nie powiem dopiero się uczę php. Kod ghostrider-a Sabistik-a nie działa. działa tylko kod nospor-a. Wielkie dzięki za pomoc. Mam też jeszcze jeden problem z sesjami, może opiszę to w tym temacie. Mianowicie pojawia mi się na stronie
"Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at /srv/free/act26178/index.php:2) in /srv/free/act26178/session.php on line 4"

Problemu tego nie było na lycos-ie, natomiast na haa.pl sie pojawia. Co go powoduje??
Go to the top of the page
+Quote Post
nospor
post 14.11.2005, 10:57:10
Post #6





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




http://php.pl/artykuly/dla_poczatkujacych/...ch_programistow
przeczytaj dokladnie a znajdziesz rozwiąznie swego kolejnego problemu. Pozatym na forum gęsto od takich problemow smile.gif


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
misiekdg
post 14.11.2005, 11:28:09
Post #7





Grupa: Zarejestrowani
Postów: 23
Pomógł: 0
Dołączył: 6.11.2005

Ostrzeżenie: (0%)
-----


Już próbowałem stosowania buforowania bez żadnego rezultatu. Kod wygląda następująco:

sesion.php
  1. <?
  2.  
  3.  
  4. include "func.php";
  5.  
  6. switch ($page)
  7. {
  8.   case "login"  : 
  9.                   $login  = htmlentities(substr($_POST["login"], 0, 255));
  10.                   $passwd = htmlentities(substr($_POST["passwd"], 0, 255));
  11.                   login($login, md5($passwd)); 
  12.                   break;
  13.   
  14.   case "logout" : logout();
  15.                   break;
  16. }
  17. ?>


index.php
  1. <?
  2.   include "session.php";
  3. ?>
  4.  
  5. <html>
  6.    <head>
  7.        <link rel="stylesheet" type="text/css" href="style.css">
  8.    </head>
  9.  
  10. <body>
  11. <center> <h1>Strona studentów informatyki</h1></center>
  12.  
  13. <TABLE BORDER="1" WIDTH="100%" CELLSPACING="0" CELLPADDING="10" BORDERCOLOR="gray">
  14.  
  15.        <tr><td width=20% height=450 valign=top>
  16.  
  17. <?
  18.     include "left.php";
  19.   ?>
  20.  
  21.       </td>
  22.       <td valign=top>
  23.  
  24. <?
  25.   if($page=="") $page="link1";
  26.   if(!file_exists($page.".php")) 
  27.   {
  28.      include "default.php";
  29.   }
  30.   else 
  31.   {
  32.     include_once $page.".php";
  33.   }
  34.     ?>
  35.  
  36.        </td></tr>
  37. </table>

Próbowałem też wstawiś buforowanie do index.php ale to też nic nie dało. Natomiast usuwając sesion_start() błąd znika. Nie mam pojęcia jak tego się pozbyć.

Ten post edytował misiekdg 14.11.2005, 11:29:01
Go to the top of the page
+Quote Post
nospor
post 14.11.2005, 11:34:13
Post #8





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




ale ob_start(); musi byc na początku głownego skryptu a ob_end na koncu, a nie w plikach includowanych. Dodatkowo nie moze byc nawet zadnych bialych znakow na poczatku skryptu glownego przed <?


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
misiekdg
post 14.11.2005, 11:44:26
Post #9





Grupa: Zarejestrowani
Postów: 23
Pomógł: 0
Dołączył: 6.11.2005

Ostrzeżenie: (0%)
-----


Fajnie, wszystko działa jak należy. Jeszcze upłynie dużo czasu zanim dobrze pojmę php. Wielkie dzięki nospor!!!
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 8.07.2025 - 21:19