Cibiņš Posted August 25, 2010 Report Share Posted August 25, 2010 (edited) Tātad lieta tāda, ka ir klientu sadaļa, kurā klients ielogojas, nostrādā sesijas. Problēma tāda ka nenostrādā header(location:); funkcija parser.php failaa, ja ir tiek includots sidemenu.php kura skripts atrodas šeit http://paste.php.lv/bbc7be64a2451b8b63f6a1f66f3f50ce?lang=php, uz to norāda Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /traljivalji/sidemenu.php:23) in /traljivalji/customers.php on line 14 bet nedalec kas īsti nav pareizi..ja to sidemenu.php skriptu neincludē tad viss strādā kā nākas, nostrādā tie pārvades headeri.. Logina parseris te: http://paste.php.lv/c50b08e41cb4f435949530132a8dc75b?lang=php customers.php faila skripts <div style="margin-top: -20px;"> <div class="dashedLine"></div> <div id="headerPage"><?php if($lang == "en"){ echo "For customers"; } else { echo "Klientiem"; } ?></div> <div class="dashedLine"></div> </div> <div class="topicText"> <?php session_start(); if (!$_SESSION['arm_customer_user_name']) { include ('./parser.php'); } else { include ('resources/lib/cstmr.php'); } ?> </div> <div class="dashedLine"></div> Edited August 25, 2010 by Cibiņš Quote Link to comment Share on other sites More sharing options...
Леший Posted August 25, 2010 Report Share Posted August 25, 2010 (edited) Ja tu iegooglētu šo error paziņojumu, tad jau uzzinātu, ka sesijas nestartējās, ja jau ir sācies output. Output sākumā, ja nav definēti headeri, tiek aizsūtīts defaultais. Ieliec <? session_start(); ?> pašā sākumā, pirms <div Edited August 25, 2010 by Леший Quote Link to comment Share on other sites More sharing options...
Cibiņš Posted August 25, 2010 Author Report Share Posted August 25, 2010 (edited) Ja tu iegooglētu šo error paziņojumu, tad jau uzzinātu, ka sesijas nestartējās, ja jau ir sācies output. Output sākumā, ja nav definēti headeri, tiek aizsūtīts defaultais. Ieliec <? session_start(); ?> pašā sākumā, pirms <div Tas session_start jau ir index.php failaa saakumaa..nekas nemainaas ja ieliek tajaa tur sidemenu.php failaa..meeginaaju arii pirms div likt to drankji vienalga nekas neliidzeeja..headeris nenostraadaaja un lapu nepaarvadiija.. if($pg == 'customers'){ if(!$_SESSION["arm_customer_user_name"]){ session_start(); } } Taatad sidemenu.php failaa kautkas nau ritiigi jo jau teicu ka ja to sidemenu.php neincludee tad viss straadaa kaa tam buutu jaastraadaa.. Edited August 25, 2010 by Cibiņš Quote Link to comment Share on other sites More sharing options...
Леший Posted August 25, 2010 Report Share Posted August 25, 2010 Nu pirmkārt, pēc header location ir jāliek die(), labāk pat darīt tā: die(header("Location: ...")) Otrkārt, kā jau teicu, kad tev sākās output, headeri tiek aizsūtīti. Tas ir <html> <? die(header("Location: ...")); ?> nenostrādās. Quote Link to comment Share on other sites More sharing options...
Cibiņš Posted August 25, 2010 Author Report Share Posted August 25, 2010 (edited) Neestraadaaaaaaaaaaaa...nedaleca kur jaaliek taa fignja..parserii ieliku vinjsh man visu aplauzh un nodriskā dizainu jo to izdara die(); f-ja un taapat nepaarvada neko..te vel naaks templates fails klaat lai ir saprotama lapas struktuura, kursh includo visu un fails, kursh jaaincludee (cstmr.php) peec tam kad dati tiek noparseeti un ja ir pareizi: design.php (templates fails kas ar GET pārbauda un includē nepieciešamos failus ar informāciju, attiecas arī uz login un parseri, uz pg=customer <div style="margin-top: -20px;"> <div class="dashedLine"></div> <div id="headerPage"><?php if($lang == "en"){ echo "For customers"; } else { echo "Klientiem"; } ?></div> <div class="dashedLine"></div> </div> <div class="topicText"> <?php session_start(); if (!$_SESSION['arm_customer_user_name']) { include ('./parser.php'); } else { include ('resources/lib/cstmr.php'); } ?> </div> <div class="dashedLine"></div> includee customer failu) - http://paste.php.lv/48ff1b76d8ba28b92c4b62b299140e6f?lang=php cstmr.php - http://paste.php.lv/13c5733afae15f280952296f89bcfb86?lang=php parser.php - http://paste.php.lv/c50b08e41cb4f435949530132a8dc75b?lang=php sidemenu.php - http://paste.php.lv/bbc7be64a2451b8b63f6a1f66f3f50ce?lang=php Respektīvi kas notiek, notiek tā ka ievada pareizos login datus, tā sesiju un visu pārējo izveido bet fails cstmr.php netiek includots..tas tiek includots tikai tad kad atkārtoti nospiež linku KLIENTIEM tad tik parādāš Sveicināti Vards kur Vards ir izveidotās sesijas vārds. Taspats attiecas uz Logout..arī ja nospiež logout, tas draņķa header:location nenostrādā, bet sesijas gan tiek iznīcinātas un atkārtoti kautko uzspiežot parādās login forma.. Tas tad kad netiek includots http://paste.php.lv/48ff1b76d8ba28b92c4b62b299140e6f?lang=php 123. rindiņā norādītais fails kura source ir šeit http://paste.php.lv/bbc7be64a2451b8b63f6a1f66f3f50ce?lang=php ..bet ja tas tiek includots tad ir tās problēmas ar tiem headeriem..nesapratu kur man jāliek to die();, ieliku to tajā parserī kam ir jāizpilda pārvades f-ja pie pareiziem datiem bet neklausa, nepārvada lapu kur vajag.. :( Edited August 25, 2010 by Cibiņš Quote Link to comment Share on other sites More sharing options...
Леший Posted August 25, 2010 Report Share Posted August 25, 2010 (edited) priekš kam tev die() pēc include? Un <div class="topicText"> <?php session_start(); NESTRĀDĀS! Edited August 25, 2010 by Леший Quote Link to comment Share on other sites More sharing options...
Cibiņš Posted August 25, 2010 Author Report Share Posted August 25, 2010 (edited) priekš kam tev die() pēc include? Un <div class="topicText"> <?php session_start(); NESTRĀDĀS! <div class="topicText"> <?php session_start(); Kpc strādāja ja neincludē to sidemenu.php ? :) Arī ja samaina vietām strādā bet gribu zināt kas izsauc to headera bloķēšanos tajā sidemenu.php... parser.php tie die(); pēc include..neredzi ka tas ir cikls kas ir tajā parser.php?? Edited August 25, 2010 by Cibiņš Quote Link to comment Share on other sites More sharing options...
Леший Posted August 25, 2010 Report Share Posted August 25, 2010 Arī ja samaina vietām strādā bet gribu zināt kas izsauc to headera bloķēšanos tajā sidemenu.php... Mēģināšu 4. reizi: Ne header location, ne session_start tev NESTRĀDĀS, ja tev ir aizsūtīts output. Tev tajā failā ir pilns ar outputiem! Tas ir, kā ienākt sabiedriskajā tualetē un uzprasīt "A kas te smird?" parser.php tie die(); pēc include..neredzi ka tas ir cikls kas ir tajā parser.php?? Neredzu nevienu ciklu iekš parser.php. Atkārtošu jautājumu: priekš kam tu saliki die() pēc katra include? Tur tev arī sabrūks dizains. Quote Link to comment Share on other sites More sharing options...
Cibiņš Posted August 25, 2010 Author Report Share Posted August 25, 2010 Mēģināšu 4. reizi: Ne header location, ne session_start tev NESTRĀDĀS, ja tev ir aizsūtīts output. Tev tajā failā ir pilns ar outputiem! Tas ir, kā ienākt sabiedriskajā tualetē un uzprasīt "A kas te smird?" Neredzu nevienu ciklu iekš parser.php. Atkārtošu jautājumu: priekš kam tu saliki die() pēc katra include? Tur tev arī sabrūks dizains. :D:D:D Nu es sapratu ka jaaizvada vispirms sesiju un tad outputu..reaali es ielieku tajaa galvenajaa design.php failaa pashaa pashaa saakumaa session_start(); bet vienalga..jo reali jau tai session_start buutu jaaizpildaas pirmajai jo tas includeejamais fails ar tiem suudiem naak jau tikai peectam.. Quote Link to comment Share on other sites More sharing options...
Cibiņš Posted August 25, 2010 Author Report Share Posted August 25, 2010 Problēmu pats atrisināju, ieliku wnk design.php failā lai pārbauda cmd URLī..ja kautkas tur tajā cmd ir tad wnk pārvada uz defaulto pg lapu tā kā viss kārtībā paldies strādā taga ;) Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.