Премахването на PHPSESSID от линковете по страницата става по следния начин.
В .htaccess:
php_flag session.use_trans_sid off
или
php_value session.use_only_cookies 1
php_value session.use_trans_sid 0
В php код:
ini_set('session.use_trans_sid', false);
Като трябва да бъде преди session_start();
[wp:svejo-net]
Tags:
htaccess,
PHP,
phpsessid,
session
1 Comment »
Случвало ли ви се е да ползвате:
header('Location: http://google.com/');
и в този момента да ви се отговори:
Cannot modify header information - headers already sent by …
и тогава се налага да го заменяте с meta redirect или някакъв redirect с javascript, а също и ob_start(); ob_end_flush(); което си е дразнещо.
Ето една алтернатива:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
| <?php
function redirect($url){
if (!headers_sent()){
header('Location: '.$url);
} else {
echo '<script type="text/javascript">';
echo 'window.location.href="'.$url.'";';
echo '</script>';
echo '<noscript>';
echo '<meta http-equiv="refresh" content="0;url='.$url.'" />';
echo '</noscript>';
}
}
?> |
Тази функция проверява дали са изпратени header-ите, ако не са redirect-ва с PHP функцията “header”, ако са изпратени вече redirect-a се прави с javascript, а ако по някаква случайност потребителя няма support на javascript, redirect-a става с meta refresh на HTML
За тези които умуват още, ползва се така:
redirect('http://google.com/');
Tags:
PHP,
redirect
No Comments »