Avaleht
uus teema   vasta Tarkvara »  WWW »  Session start märgi kõik teemad loetuks
märgi mitteloetuks
vaata eelmist teemat :: vaata järgmist teemat
Hinnavaatlus :: Foorum :: Uudised :: Ärifoorumid :: HV F1 ennustusvõistlus :: Pangalink :: Telekavad :: HV toote otsing
autor
sõnum Saada viide sõbrale.  :: Teata moderaatorile teata moderaatorile
otsing:  
redenergy
HV veteran
redenergy

liitunud: 22.03.2004




sõnum 09.04.2009 13:50:57 Session start vasta tsitaadiga

Tervist. Kuidas lahendada selline olukord.
Mul on login script mis kasutab sessioone. Muidu ta töötab hästi.
Aga kui include'n login.php index.php lehele siis saan erroriks:
Warning: Cannot modify header information - headers already sent by (output started at /home/***/index.php:10) in /***/login.php on line 16
--//-- functions.php samalugu.

Kas index.php algul tuleb kohe sessiooniga alustada või kuidas?
Kommentaarid: 30 loe/lisa Kasutajad arvavad:  :: 0 :: 1 :: 9
tagasi üles
vaata kasutaja infot saada privaatsõnum
Valdars
HV veteran
Valdars

liitunud: 22.02.2003




sõnum 09.04.2009 14:21:43 vasta tsitaadiga

Sessiooni tuleb alustada enne, kui muu jama välja pritsitakse.
Kommentaarid: 47 loe/lisa Kasutajad arvavad:  :: 0 :: 1 :: 44
tagasi üles
vaata kasutaja infot saada privaatsõnum
redenergy
HV veteran
redenergy

liitunud: 22.03.2004




sõnum 09.04.2009 16:27:43 vasta tsitaadiga

Hakkasin otsast testima.
<?php
session_start();
?>
<?php
switch ($_GET['login']) {
default;
case login;
include 'login.php';
break;
case register:
include 'register.php';
break;
case members:
include 'members.php';
break;
case forgot_password:
include 'forgot_password.php';
break;
case logout:
include 'logout.php';
break;
}
?>
<table width="100" border="0">
  <tr>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
</table>

Nii ta töötab muretult. Aga kuidas ma asjad tabelisse saaksin?
Nii kui nende vahele midagi tuleb (nt <table>) viskab selle sama errori (see kood on test)


viimati muutis redenergy 09.04.2009 16:30:54, muudetud 1 kord
Kommentaarid: 30 loe/lisa Kasutajad arvavad:  :: 0 :: 1 :: 9
tagasi üles
vaata kasutaja infot saada privaatsõnum
raido357
HV veteran

liitunud: 26.09.2002




sõnum 09.04.2009 16:29:05 vasta tsitaadiga

igast failist mida required, lase info muutujasse ja siis alla tabelis kuvad seda muutujat, ehk siis stiilis

case members:
include 'members.php';
$html = $membersHTML;
break;

<table width="100" border="0">
<tr>
<td><? echo $html; ?></td>
</tr>
</table>

Arvatavasti tulemuseks mingine massiiv sul, siis lased foreachiga tsykli läbi ja tekitad tabeli sellega.

Näiteks, ehk on ka paremaid lahendusi.
Kommentaarid: 78 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 70
tagasi üles
vaata kasutaja infot saada privaatsõnum
redenergy
HV veteran
redenergy

liitunud: 22.03.2004




sõnum 09.04.2009 16:55:33 vasta tsitaadiga

Asi selles, et tahan web layout'i tabelitega vormistada. Et enamus logimisega seotud jääks paremale äärde tabelisse.
Ei arvanudki, et selline probleem ette tuleb.

See meetod ei töötand kahjuks mul.
Kommentaarid: 30 loe/lisa Kasutajad arvavad:  :: 0 :: 1 :: 9
tagasi üles
vaata kasutaja infot saada privaatsõnum
andrusny
Kreisi kasutaja
andrusny

liitunud: 20.03.2006




sõnum 09.04.2009 17:27:13 vasta tsitaadiga

Tähtis on lehe alguses hoida ainult
<?php session_start(); ?>

Ülejäänud session majandus võib täiesti suvalises kohas olla lehel.
Index lehe alguses lased session käima ja vajalikudes kohtades tabelis loed sessionist oma muutujad.

_________________
Kommentaarid: 7 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 7
tagasi üles
vaata kasutaja infot saada privaatsõnum mine selle kasutaja kodulehele
redenergy
HV veteran
redenergy

liitunud: 22.03.2004




sõnum 09.04.2009 20:25:48 vasta tsitaadiga

php:
  1. <?php session_start(); ?>
  2. <table width="896" height="395" border="0"><tr><td><?php
  3. switch ($_GET['login']) {
  4. default;
  5. case login;
  6. include 'login.php';
  7. break;
  8. case register:
  9. include 'register.php';
  10. break;
  11. case members:
  12. include 'members.php';
  13. break;
  14. case forgot_password.php:
  15. include 'forgot_password.php';
  16. break;
  17. case forgot_password:
  18. include 'forgot_password.php';
  19. break;
  20. case logout:
  21. include 'logout.php';
  22. break;
  23. }
  24. ?></td></tr></table>

No tee või tina ei tööta. Pole tühikuid ka vahel kuskil icon_confused.gif
login.php rea 16 errori annab ja rida 16 on:
php:
  1. header ( "Location: " . REDIRECT_AFTER_LOGIN );

Väärtus on ka sellele antud.
Kommentaarid: 30 loe/lisa Kasutajad arvavad:  :: 0 :: 1 :: 9
tagasi üles
vaata kasutaja infot saada privaatsõnum
mikk36
HV Guru
mikk36

liitunud: 21.02.2004




sõnum 09.04.2009 20:27:18 vasta tsitaadiga

Viga lihtne, sa üritad sättida header infot peale info väljutamist esimese faili 2. real.
Kommentaarid: 85 loe/lisa Kasutajad arvavad:  :: 0 :: 2 :: 78
tagasi üles
vaata kasutaja infot saada privaatsõnum
redenergy
HV veteran
redenergy

liitunud: 22.03.2004




sõnum 09.04.2009 20:51:43 vasta tsitaadiga

mikk36 kirjutas:
Viga lihtne, sa üritad sättida header infot peale info väljutamist esimese faili 2. real.

Sry mu pea juba keeb, ei saanud täpselt aru
Kommentaarid: 30 loe/lisa Kasutajad arvavad:  :: 0 :: 1 :: 9
tagasi üles
vaata kasutaja infot saada privaatsõnum
mikk36
HV Guru
mikk36

liitunud: 21.02.2004




sõnum 09.04.2009 20:54:25 vasta tsitaadiga

Esimene kodijupp, seal sa väljutad infot kliendile 2. rea peal, teises koodijupis, mis panid siia üritad sa muuta sessiooni infot peale seda esimeses failis info väljutamist.

Proovi harjutada stiili et sa koodi keskel ei välju php reziimist ja korjad vajaliku väljundi kliendile mingi kindla muutuja alla ja kogu töötlemise lõpus saadad selle ühe korraga kliendile.
Kommentaarid: 85 loe/lisa Kasutajad arvavad:  :: 0 :: 2 :: 78
tagasi üles
vaata kasutaja infot saada privaatsõnum
Valdars
HV veteran
Valdars

liitunud: 22.02.2003




sõnum 09.04.2009 22:34:16 vasta tsitaadiga

Sa võid lisaks uurida väljundi kontrollimist, mis peaks aitama vältida millegi väljastamist, enne kui vaja.
Kommentaarid: 47 loe/lisa Kasutajad arvavad:  :: 0 :: 1 :: 44
tagasi üles
vaata kasutaja infot saada privaatsõnum
redenergy
HV veteran
redenergy

liitunud: 22.03.2004




sõnum 09.04.2009 23:27:36 vasta tsitaadiga

Hehe, hetkel tundub, et aitas see:
php:
  1. <?php session_start();
Kommentaarid: 30 loe/lisa Kasutajad arvavad:  :: 0 :: 1 :: 9
tagasi üles
vaata kasutaja infot saada privaatsõnum
näita postitusi alates eelmisest:   
uus teema   vasta Tarkvara »  WWW »  Session start
[vaata eelmist teemat] [vaata järgmist teemat]
 lisa lemmikuks
näita foorumit:  
 ignoreeri teemat 
sa ei või postitada uusi teemasid siia foorumisse
sa ei või vastata selle foorumi teemadele
sa ei või muuta oma postitusi selles foorumis
sa ei või kustutada oma postitusi selles foorumis
sa ei või vastata küsitlustele selles foorumis
sa ei saa lisada manuseid selles foorumis
sa võid manuseid alla laadida selles foorumis



Hinnavaatlus ei vastuta foorumis tehtud postituste eest.