Odze Posted June 14, 2004 Report Share Posted June 14, 2004 Ideja tāda - ir uztaisīts forums un, lai uz refresh nepievienotos komentārs tiek lietots print("<meta http-equiv=\"refresh\" content=\"0; url=index.php?pg=4&uz=$uz\">"), bet problēma ir tāda, ka ar Internet Explorer viss strādā pareizi un komentārs uz refresh nepievienojas, bet ar Mozillu komenets arī uz refresh pievienojas. Varbūt kāds ir saskāries ar līdzīgu problēmu un var palīdzēt??? Link to comment Share on other sites More sharing options...
Kaklz Posted June 15, 2004 Report Share Posted June 15, 2004 header('location: index.php?pg=4&uz=' .$uz); Link to comment Share on other sites More sharing options...
Venom Posted June 15, 2004 Report Share Posted June 15, 2004 Piezīme: header() funkcijai ir jāizpildās pirms izvada, resp. posts jāapstrādā kaut kur skripta pašā augšgalā, visādam gadījumam labāk izmantot visus trīs redirekta variantus - meta refersh, <script>location.href=</script> un header() kombināciju (ja viens neaiziet, nostrādās cits). Un, lūdzū-lūdzu print("<meta http-equiv=\"refresh\" content=\"0; url=index.php?pg=4&uz=$uz\">") vietā rakstīt echo '<meta http-equiv="refresh" content="0; url=index.php?pg=4&uz='.$uz.'">'; 1) printam ir savas īpatnības (un saka ka lēnāks esot) 2) print un echo nav funkcijas, bet valodas kontrukcijas, tāpēc nav obligāti jāraksta iekavas - echo('text') vietā var rakstīt echo 'text' 3) viss, kas ir starp "" tiek izmeklēts uz mainīgiem, resp ja tev teksts ir "garšagarš...$mainīgais...garšgaršgarš..." tā iekšējā apstrāde pirms izvades aizņems daudz ilgāk, nekā 'garšagarš...'.$mainigais.'...garšgaršgarš...' (tieši tā - savienojot ar punktiņu, nevis +, kā citās valodās) un arī rakstot '$mainigais' izvadīsies viss tieši tā, ar dolāra zīmīti. 4) izmantotjot 3. variantu dauz vieglāk rakstīt HTML (alternēt iekaviņas un apostrofus), jo nav jāliek tas escape slash \ priekšā. 5) 3. punkta nosacījumi neattiecas uz SQL komandu pierakstu, jo tur', petēji (X)HTML vērtības nododamas iekš apostrofiem ("UPDATE $tblMain SET `kolonna`='vērtība' WHERE `id`='".$id."' LIMIT 1") Link to comment Share on other sites More sharing options...
Roze Posted June 15, 2004 Report Share Posted June 15, 2004 Piezīme: header() funkcijai ir jāizpildās pirms izvada, resp. posts jāapstrādā kaut kur skripta pašā augšgalā, visādam gadījumam labāk izmantot visus trīs redirekta variantus - meta refersh, <script>location.href=</script> un header() kombināciju (ja viens neaiziet, nostrādās cits). Nu reizeem ja ir gruuti izdaraams .. piemeeram kaads IF nosaciijums vai cikls lapai pa vidu un ir saape pacelt vinju pirms visa satura izvades var izmantot arii Output Control Functions http://lv.php.net/manual/en/ref.outcontrol.php Piemeeram: <? ob_start(); echo "Lala"; header("Location: blabla.php"); ob_end_flush(); ?> Shim piemeeram gan nav jeegas jo redirekts notiks vienmeer (kaa jau teicu tas noder pie nosaciijumiem) tachu skripts izpildiisies bez kljuudu pazinjojumiem un korekti :) Link to comment Share on other sites More sharing options...
Odze Posted June 17, 2004 Author Report Share Posted June 17, 2004 izmantojot header() man rāda ša'du paziņojumu: Warning: Cannot add header information - headers already sent by (output started at C:\HTTPD\HTDOCS\Izm2\uz.php:11) in C:\HTTPD\HTDOCS\Izm2\uz.php on line 25 Es lieku to header kaut vai pašā lapas sākumā kad vēl nekādi mainīgie nav padoti, bet vienalga ir šads paziņojums, kas varētu būt par problēmu? Link to comment Share on other sites More sharing options...
Kaklz Posted June 17, 2004 Report Share Posted June 17, 2004 pirms tam ir kaut kāds HTML teksts ---------- <html><body> <?php header('location: gotohell.php'); ?> ----------- arī neies, jo vēl pirms PHP koda ir HTML kods. šāda kļūda gadās arī, ja pirms PHP koda sākuma ir kaut vai viena atstarpe. Link to comment Share on other sites More sharing options...
Odze Posted June 17, 2004 Author Report Share Posted June 17, 2004 Nu labi bet nejau vienmēr var panākt, ka nav nekāds kods pirms header(). Kā tad lai es pēc datu pievienošanas tbulā noredirektēju savu lapu ar header()??? Link to comment Share on other sites More sharing options...
Roze Posted June 18, 2004 Report Share Posted June 18, 2004 Nu labi bet nejau vienmēr var panākt, ka nav nekāds kods pirms header().Kā tad lai es pēc datu pievienošanas tbulā noredirektēju savu lapu ar header()??? Mans posts tieshaam nav redzams? :) http://php.lv/f/index.php?showtopic=1262&v...findpost&p=7950 t.i. <? ob_start(); ?> <html><head> .... <? header("Location: blabla.php"); ob_end_flush(); ?> Link to comment Share on other sites More sharing options...
Recommended Posts