Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: где то накосячил с header
 
 автор: 10100100   (24.09.2005 в 10:46)   письмо автору
 
 


<?php
include("up.php");
include (
"leftdiz1.php");
include (
"left/index.php");
include (
"leftdiz2.php");
$fraza "Пользователя с таким именем ($name) не существует<br>Вы можете зарегистрироваться <a href='registration.php'>здесь</a>";
print 
"$fraza";
include (
"rightdiz.php");
include (
"dawn_copiright.php");

if(!
file_exists("base/$name")) exit;
else 

//проверяем наличие файла с именем которое ввё пользователь
$pass=md5($pass);
//шифруем пароль
$rfile=fopen("base/$name""r");
$data=file("base/$name");

$newstr=strtok($data[1], "\n");
//предаём паролю значение $newstr и ниже проверяем равны ли значения если равно то перекидываем юзера на главную...но именно это почему то не происходит!
if (strcmp($newstr$pass)==0) {
setcookie("valid_user"'base/$name'time()+604800);
header("location:http://localhost/6/index.php");
exit; }
else {echo 
"Введен неправильный пароль";} 

fclose($rfile);

?>

   
 
 автор: cheops   (24.09.2005 в 11:51)   письмо автору
 
   для: 10100100   (24.09.2005 в 10:46)
 

До вызова header() что-нибудь в браузер выводится?

Куки, сессии, отправка заголовков должны происходить до отправки любой информации в окно браузера, т.е. до любого вывода echo, print или непосредственного вывода вне тэгов <?php и ?>. Это связано с тем, что HTTP-заголовки передаются перед всеми данными и когда происходит вывод в окно браузера PHP вынужден их пред этим отослать клиенту. Поэтому повторно, после вывода информации в браузер он не может работать с куками, сессиями и отправлять заголовки.
Если вывод текста до отправки заголовков необходим следует воспользоваться функциями управления вывода, позволяющих задерживать вывод информации в браузер.

http://www.softtime.ru/forum/ead.php?id_forum=1&id_theme=147
http://www.softtime.ru/forum/read.php?id_forum=1&id_theme=148

http://www.softtime.ru/group/id_group=12

   
 
 автор: 10100100   (24.09.2005 в 11:57)   письмо автору
 
   для: cheops   (24.09.2005 в 11:51)
 

скажу проще! всё работало идеально пока я не поменял локацию файлов с записями о юзерах! воть... да и не выводится ничего до этого, только в некоторых случаях else...

   
 
 автор: cheops   (24.09.2005 в 12:18)   письмо автору
 
   для: 10100100   (24.09.2005 в 11:57)
 

Выводится не должно вообще ничего, ни конструкцией echo, ни прямым выводом, например пробелов перед <?php, ни переводов строк - где-то вывод есть точно, иначе бы функция не капризничала.

   
 
 автор: 10100100   (24.09.2005 в 18:04)   письмо автору
 
   для: cheops   (24.09.2005 в 12:18)
 

тоесть даже если else стоит и не работает?

   
 
 автор: WebTech   (24.09.2005 в 19:01)   письмо автору
 
   для: 10100100   (24.09.2005 в 18:04)
 

Не, else ни при чем. Смотри в инклудах.

   
 
 автор: cheops   (24.09.2005 в 20:47)   письмо автору
 
   для: 10100100   (24.09.2005 в 18:04)
 

Нет, если ничего не выводится - всё должно быть нормально, но где-то чего-то выводится точно.

   
 
 автор: Akira   (24.09.2005 в 19:25)   письмо автору
 
   для: 10100100   (24.09.2005 в 10:46)
 


<?
$fraza 
"Пользователя с таким именем ($name) не существует<br>Вы можете зарегистрироваться <a href='registration.php'>здесь</a>"
print 
"$fraza";

?>

print "$fraza"; - выводит сообщение Пользователя с таким именем ($name) не существует<br>Вы можете зарегистрироваться <a href='registration.php'>здесь</a>.
Естественно header("location:http://localhost/6/index.php"); не сработает при любых условиях.

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования