Подскажите, пожалуйста, как добавлять новую запись в начало таблицы mysql?
» MySql/PHP: общие вопросы
Ljeka2008
Цитата:
у таблицы нет начала или конца.. нет привязки к порядку ввода данных, только если с сортировкой по какому то полю
Цитата:
Подскажите, пожалуйста, как добавлять новую запись в начало таблицы mysql?
у таблицы нет начала или конца.. нет привязки к порядку ввода данных, только если с сортировкой по какому то полю
Спасибо, пришлось сортировать...
Мужики!!!
Хелп!!!! Помогите новичку разобраться.
Есть запрос:
$sql="SELECT Name FROM Catalog";
$result=@mysql_query($sql) or die ("DATABASE ERROR");
$num_rows=mysql_num_rows($result);
if ($num_rows >=1) {
while ($row=mysql_fetch_array($result))
{
echo "<a href='".$PHP_SELF."?products=".$row['ID']."'>".$row['Name']."</a><br>";
}
}
Ниже.... Хотел чтобы кликая на ссылку мне выдавался на экран запрос:
$sql="SELECT * FROM Catalog";
$result=@mysql_query($sql) or die ("DATABASE ERROR");
$num_rows=mysql_num_rows($result);
if ($num_rows >=1) {
while ($row=mysql_fetch_array($result))
{
echo "<h3>".$row['Name']."</h3><br><div><img src='".$row['Describtion']."' border=0></div><br>";
}
}
}
?>
Не понимаю как реализовать. как ссылку сделать переменной для второго запроса.
Хелп!!!! Помогите новичку разобраться.
Есть запрос:
$sql="SELECT Name FROM Catalog";
$result=@mysql_query($sql) or die ("DATABASE ERROR");
$num_rows=mysql_num_rows($result);
if ($num_rows >=1) {
while ($row=mysql_fetch_array($result))
{
echo "<a href='".$PHP_SELF."?products=".$row['ID']."'>".$row['Name']."</a><br>";
}
}
Ниже.... Хотел чтобы кликая на ссылку мне выдавался на экран запрос:
$sql="SELECT * FROM Catalog";
$result=@mysql_query($sql) or die ("DATABASE ERROR");
$num_rows=mysql_num_rows($result);
if ($num_rows >=1) {
while ($row=mysql_fetch_array($result))
{
echo "<h3>".$row['Name']."</h3><br><div><img src='".$row['Describtion']."' border=0></div><br>";
}
}
}
?>
Не понимаю как реализовать. как ссылку сделать переменной для второго запроса.
Тут ошибка:
Цитата:
Цитата:
Код: $sql="SELECT Name FROM Catalog";
$result=@mysql_query($sql) or die ("DATABASE ERROR");
$num_rows=mysql_num_rows($result);
if ($num_rows >=1) {
while ($row=mysql_fetch_array($result))
{
echo "<a href='".$PHP_SELF."?products=".$row['ID']."'>".$row['Name']."</a><br>";
}
}
kosola
что-нибудь об SQL-инъекциях слышал?
что-нибудь об SQL-инъекциях слышал?
zerkms
Цитата:
Код: $sql="SELECT * FROM Catalog WHERE ID=".(int)$_GET['products'];
Цитата:
что-нибудь об SQL-инъекциях слышал?
Код: $sql="SELECT * FROM Catalog WHERE ID=".(int)$_GET['products'];
ak13boda
упс, не заметил модификатор
посыпаю голову пеплом
упс, не заметил модификатор
посыпаю голову пеплом
вот такой вопрос.
2 сайта на 1 базе. оба на движке textpattern, но не в этом суть.
у каждого сайта таблицы со своим префиксом, так что все работало.
сейчас испортирую из textpattern и wordpress.
wordpress'ы тоже разбиты по таблицам разными префиксами.
на втором сайте все импортируется замечательно.
на первом получается то, что на скриншоте:
если глянуть на таблицы через phpmyadmin, то вторая видна красиво:
а первая таблица корявая
в .htaccess есть
Код: CharsetSourceEnc utf-8
CharsetByExtension utf-8 .php
2 сайта на 1 базе. оба на движке textpattern, но не в этом суть.
у каждого сайта таблицы со своим префиксом, так что все работало.
сейчас испортирую из textpattern и wordpress.
wordpress'ы тоже разбиты по таблицам разными префиксами.
на втором сайте все импортируется замечательно.
на первом получается то, что на скриншоте:
если глянуть на таблицы через phpmyadmin, то вторая видна красиво:
а первая таблица корявая
в .htaccess есть
Код: CharsetSourceEnc utf-8
CharsetByExtension utf-8 .php
Всем привет!
Помогите советам, как это реализовать:
На сайте есть много формочек для регистрации (каждая на своей странице), конфигурация бд (MYSQL) для формочек прописана на каждой странице. Вопрос: подскажите как вынести конфигурацию бд в один файл и подключить его ко всем рег.формам на сайте? Сделать что то типа сонфиг.пхп
Спасибо!
Помогите советам, как это реализовать:
На сайте есть много формочек для регистрации (каждая на своей странице), конфигурация бд (MYSQL) для формочек прописана на каждой странице. Вопрос: подскажите как вынести конфигурацию бд в один файл и подключить его ко всем рег.формам на сайте? Сделать что то типа сонфиг.пхп
Спасибо!
FUTURiTY
Цитата:
так и вынести. записать в отдельном файле переменные с параметрами подключения и делать его include или require в нужных местах
Цитата:
Вопрос: подскажите как вынести конфигурацию бд в один файл и подключить его ко всем рег.формам на сайте? Сделать что то типа сонфиг.пхп
так и вынести. записать в отдельном файле переменные с параметрами подключения и делать его include или require в нужных местах
Пипл! Хелп! Я очередной ньюб из тех многих, кто на всех форумах каждый день кричит о проблемах с кодировками. Хочу подойти к этому вопросу нормально. И разобраться наконец то.... Поэтому вопрос.
Кто знает, где, в каком месте, по русски, можно прочитать о том, как работает механизм кодировок и перекодировок при всех движениях файла через MySQL?
В часности. В MySQL несколько параметров "character_set" :
mysql> SHOW VARIABLES LIKE '%char%';
+--------------------------+-------------------------------------+
| Variable_name | Value |
+--------------------------+-------------------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | C:\MySQL Server 5.1\share\charsets\ |
+--------------------------+-------------------------------------+
На что они все влияют, и как они должны быть настроены, что бы при ручном заполнении таблиц из доса или из PHPMyAdmin кирилица отображалась корректно?
Литературы конечно вылазит море, и при поиске через Гугл, и открывая мануал на хомяке MySQL.... Но я во всей этой инфе уже утонул, и голова у меня уже распухла окончательно .
Кто знает, где, в каком месте, по русски, можно прочитать о том, как работает механизм кодировок и перекодировок при всех движениях файла через MySQL?
В часности. В MySQL несколько параметров "character_set" :
mysql> SHOW VARIABLES LIKE '%char%';
+--------------------------+-------------------------------------+
| Variable_name | Value |
+--------------------------+-------------------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | C:\MySQL Server 5.1\share\charsets\ |
+--------------------------+-------------------------------------+
На что они все влияют, и как они должны быть настроены, что бы при ручном заполнении таблиц из доса или из PHPMyAdmin кирилица отображалась корректно?
Литературы конечно вылазит море, и при поиске через Гугл, и открывая мануал на хомяке MySQL.... Но я во всей этой инфе уже утонул, и голова у меня уже распухла окончательно .
israel_rider
http://www.webmasterschool.ru/articles/article18.php
http://rrv.jino-net.ru/wiki/index.php/MySQL_%D0%B8_UTF-8
Имя переменной Описание Зона действия
http://www.webmasterschool.ru/articles/article18.php
http://rrv.jino-net.ru/wiki/index.php/MySQL_%D0%B8_UTF-8
Имя переменной Описание Зона действия
Чего то тяжело.... То ли лыжи не едут.....
Зато нашёл ещё одну классную инфу - http://www.phpfaq.ru/charset . Вроде там написаны ответы на мои вопросы. Подробно. Пытаюсь разобраться....
Добавлено:
Блин!!!!! Начало доходить вроде!!!!!! Cheery!!!!!!!!!!!! Плиз!!!!!!!!!!! Вопрос!!!!!!!!!!!!
Если я ввожу таблицу с клавы и в дос, в какой она идёт кодировке? У меня всё везде стоит в юникоде, и я всё так и хочу что бы стояло. Но если я ввожу с клавы, в досе же нет юникода? Значит, оно вводится в кои8? Или в 1251? Я должен узнать ответы на эти вопросы, а потом для моей досовской сессии, и только для неё изменить настройки.... Я так думаю. Потому что, повторяю, у меня всё что можно в юникоде! И там, где можно, я хочу юникод оставить.
Добавлено:
Короче, всё я прочитал, всё проверил, и пришёл к выводу.... Короче, дело тут вовсе не в бабине.... А, скорее всего в том, что что то, то ли Апач, то ли РНР, то ли МуSQL у меня на компе просто криво встали.... И поди теперь пойми, в чём тут ошибка....
Добавлено:
Наглядно показываю свою проблему - [more]Microsoft Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.
C:\Documents and Settings\user>cd C:\MySQL Server 5.1\bin
C:\MySQL Server 5.1\bin> mysql -u alex -p
Enter password: *****
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.1.32-community MySQL Community Server (GPL)
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql> USE firstbd;
Database changed
mysql> show create table try2;
+-------+-----------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
----+
| Table | Create Table
|
+-------+-----------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
----+
| try2 | CREATE TABLE `try2` (
`id` int(5) NOT NULL AUTO_INCREMENT,
`f_name` varchar(40) NOT NULL,
`l_name` varchar(40) NOT NULL,
`title` varchar(40) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 |
+-------+-----------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
----+
1 row in set (0.00 sec)
mysql> SHOW VARIABLES LIKE '%char%';
+--------------------------+-------------------------------------+
| Variable_name | Value |
+--------------------------+-------------------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | C:\MySQL Server 5.1\share\charsets\ |
+--------------------------+-------------------------------------+
8 rows in set (0.08 sec)
mysql> SELECT f_name, l_name, title from try2;
+------------+----------------+------------+
| f_name | l_name | title |
+------------+----------------+------------+
| ╨Ь╤Г╨┤╨░╨║ | ╨Ь╤Г╨┤╨░╨║╨╛╨▓ | ╨Ш╨┤╨╕╨╛╤В |
+------------+----------------+------------+
1 row in set (0.00 sec)
mysql> SELECT f_name, l_name, title from try
[/more] .
Зато нашёл ещё одну классную инфу - http://www.phpfaq.ru/charset . Вроде там написаны ответы на мои вопросы. Подробно. Пытаюсь разобраться....
Добавлено:
Блин!!!!! Начало доходить вроде!!!!!! Cheery!!!!!!!!!!!! Плиз!!!!!!!!!!! Вопрос!!!!!!!!!!!!
Если я ввожу таблицу с клавы и в дос, в какой она идёт кодировке? У меня всё везде стоит в юникоде, и я всё так и хочу что бы стояло. Но если я ввожу с клавы, в досе же нет юникода? Значит, оно вводится в кои8? Или в 1251? Я должен узнать ответы на эти вопросы, а потом для моей досовской сессии, и только для неё изменить настройки.... Я так думаю. Потому что, повторяю, у меня всё что можно в юникоде! И там, где можно, я хочу юникод оставить.
Добавлено:
Короче, всё я прочитал, всё проверил, и пришёл к выводу.... Короче, дело тут вовсе не в бабине.... А, скорее всего в том, что что то, то ли Апач, то ли РНР, то ли МуSQL у меня на компе просто криво встали.... И поди теперь пойми, в чём тут ошибка....
Добавлено:
Наглядно показываю свою проблему - [more]Microsoft Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.
C:\Documents and Settings\user>cd C:\MySQL Server 5.1\bin
C:\MySQL Server 5.1\bin> mysql -u alex -p
Enter password: *****
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.1.32-community MySQL Community Server (GPL)
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql> USE firstbd;
Database changed
mysql> show create table try2;
+-------+-----------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
----+
| Table | Create Table
|
+-------+-----------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
----+
| try2 | CREATE TABLE `try2` (
`id` int(5) NOT NULL AUTO_INCREMENT,
`f_name` varchar(40) NOT NULL,
`l_name` varchar(40) NOT NULL,
`title` varchar(40) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 |
+-------+-----------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
----+
1 row in set (0.00 sec)
mysql> SHOW VARIABLES LIKE '%char%';
+--------------------------+-------------------------------------+
| Variable_name | Value |
+--------------------------+-------------------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | C:\MySQL Server 5.1\share\charsets\ |
+--------------------------+-------------------------------------+
8 rows in set (0.08 sec)
mysql> SELECT f_name, l_name, title from try2;
+------------+----------------+------------+
| f_name | l_name | title |
+------------+----------------+------------+
| ╨Ь╤Г╨┤╨░╨║ | ╨Ь╤Г╨┤╨░╨║╨╛╨▓ | ╨Ш╨┤╨╕╨╛╤В |
+------------+----------------+------------+
1 row in set (0.00 sec)
mysql> SELECT f_name, l_name, title from try
[/more] .
И вот, ещё один вопрос. У меня на компе localhost – Apache + PHP + MySQL.
Вопрос. Где в аппаче настраиваются кодировки, в которых он выдаёт странички?
У меня странички открытые с него, открываются только в юникоде, хотя ни какая мета у них в голове не прописана. Значит, сам аппач посылает их так, что в хедере HTTP кодировка указана. Но ни каких таких настроек, типа "дефолт чарсет" в httpd.conf аппача я не нашёл…. Не там искал? Или не то искал?
Вопрос. Где в аппаче настраиваются кодировки, в которых он выдаёт странички?
У меня странички открытые с него, открываются только в юникоде, хотя ни какая мета у них в голове не прописана. Значит, сам аппач посылает их так, что в хедере HTTP кодировка указана. Но ни каких таких настроек, типа "дефолт чарсет" в httpd.conf аппача я не нашёл…. Не там искал? Или не то искал?
Короче, такая херня…. Голова уже распухла, но понять, в каком месте я не доучил матчасть я так и не могу….. Тренируюсь дома на локали…. Запускаю пример из учебника, в общем то….
Файл 4.php
<?php
session_start();
$_SESSION["access"] = "yes";
header('Location:3.php');
echo '<a href="3.php">Вход на страницу</a><br/>';
?>
Файл 3.php
<?php
session_start();
echo '$_SESSION["access"] = '.$_SESSION["access"].'<br/>';
$x=session_id();
echo 'session_id = '.$x;
?>
Запускаю файл 4.php . Получаю это –
Notice: Undefined index: access in D:\accounts\yoursite\3.php on line 4
$_SESSION["access"] =
session_id = 6ldbsk95g6mnv2kgqr0ehdh7s1
То есть видно, что сессия запускается, и сессионный ID назначается и передаётся, но не передаётся элемент массива $_SESSION. Тогда я в 4.php комментирую перенаправление на страничку 3.php и переезжаю на 3.php просто кликая по ссылке. Файл 4.php по этому теперь выглядит так :
<?php
session_start();
$_SESSION["access"] = "yes";
//header('Location:3.php');
echo '<a href="3.php">Вход на страницу</a><br/>';
?>
И в таком случае я вижу, что всё работает :
$_SESSION["access"] = yes
session_id = du8cf230i7hr2hcac6vb4o7fs4
То, что я где то недоучил матчасть – это понятно. Но …. Блин…. Ну устал… Достали уже эти сессии…. Не разобраться самому. Почему при перенаправлении Хедером значение массива $_SESSION не передаётся?????
И ВЕДЬ ЭТО ЖЕ ПРИМЕР ИЗ УЧЕБНИКА!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Файл 4.php
<?php
session_start();
$_SESSION["access"] = "yes";
header('Location:3.php');
echo '<a href="3.php">Вход на страницу</a><br/>';
?>
Файл 3.php
<?php
session_start();
echo '$_SESSION["access"] = '.$_SESSION["access"].'<br/>';
$x=session_id();
echo 'session_id = '.$x;
?>
Запускаю файл 4.php . Получаю это –
Notice: Undefined index: access in D:\accounts\yoursite\3.php on line 4
$_SESSION["access"] =
session_id = 6ldbsk95g6mnv2kgqr0ehdh7s1
То есть видно, что сессия запускается, и сессионный ID назначается и передаётся, но не передаётся элемент массива $_SESSION. Тогда я в 4.php комментирую перенаправление на страничку 3.php и переезжаю на 3.php просто кликая по ссылке. Файл 4.php по этому теперь выглядит так :
<?php
session_start();
$_SESSION["access"] = "yes";
//header('Location:3.php');
echo '<a href="3.php">Вход на страницу</a><br/>';
?>
И в таком случае я вижу, что всё работает :
$_SESSION["access"] = yes
session_id = du8cf230i7hr2hcac6vb4o7fs4
То, что я где то недоучил матчасть – это понятно. Но …. Блин…. Ну устал… Достали уже эти сессии…. Не разобраться самому. Почему при перенаправлении Хедером значение массива $_SESSION не передаётся?????
И ВЕДЬ ЭТО ЖЕ ПРИМЕР ИЗ УЧЕБНИКА!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
israel_rider
создал 2 файла. 4.php, 3.php. взял твой код. запросил /4.php
всё работает как ожидается.
какое имя у хоста? + покажи заголовки в обоих случаях, когда всё работает и когда нет.
Добавлено:
Цитата:
ничто никуда не передаётся. идентификатор сессии определяет ресурс (по дефолту - файл на диске), который хранит данные. так что передаётся только лишь этот идентификатор и всё.
создал 2 файла. 4.php, 3.php. взял твой код. запросил /4.php
всё работает как ожидается.
какое имя у хоста? + покажи заголовки в обоих случаях, когда всё работает и когда нет.
Добавлено:
Цитата:
То есть видно, что сессия запускается, и сессионный ID назначается и передаётся, но не передаётся элемент массива $_SESSION.
ничто никуда не передаётся. идентификатор сессии определяет ресурс (по дефолту - файл на диске), который хранит данные. так что передаётся только лишь этот идентификатор и всё.
Так а как же тогда люди поступают? Если чел у меня нажимает на страничке "logon", я проверив его аккаунт, должен его перенаправить туда, куда он хочет, автоматически. Каким способом я могу это правильно сделать?
israel_rider
ты принципиально пропустил мой вопрос и указания?
ты принципиально пропустил мой вопрос и указания?
zerkms, прошу прощения. Имя хоста - localhost. Как я уже сказал, всё стоит у меня на компе.
Будь добр, порекомендуй программу - снифер, что бы я мог просмотреть заголовки. Я ещё такими прогами ни разу не пользовался, заголовки не смотрел, не доучился ещё до этого.
По поводу твоего указания я не понял ни чего. Буду учиться дальше, может быть потом пойму.
Будь добр, порекомендуй программу - снифер, что бы я мог просмотреть заголовки. Я ещё такими прогами ни разу не пользовался, заголовки не смотрел, не доучился ещё до этого.
По поводу твоего указания я не понял ни чего. Буду учиться дальше, может быть потом пойму.
israel_rider
firebug для фф, ieHTTPHeaders для ie. для оперы хз.
по поводу указания: тебе нужно обе ситуации изучить, найти, чем они отличаются.
для начала - нужно посмотреть, что в обоих ситуациях в стартовом скрипте (4.php) и следующем - сохраняется session_id(). (вывести его куда-нибудь)
firebug для фф, ieHTTPHeaders для ie. для оперы хз.
по поводу указания: тебе нужно обе ситуации изучить, найти, чем они отличаются.
для начала - нужно посмотреть, что в обоих ситуациях в стартовом скрипте (4.php) и следующем - сохраняется session_id(). (вывести его куда-нибудь)
Поставил ieHTTPHeaders, запустил, посмотрел. Ни могу понять, на какую строчку я должен обратить внимание. Пока вижу то же, что и адресной строке - http://localhost/3.php?PHPSESSID=jfm93020gphrmceid0mmicb212, то есть это передаётся идентификатор сессии. Так и не могу понять, как сервер передаёт браузеру элементы массива $_SESSION . И почему в одном случае элемент $_SESSION["access"] браузеру передался, а в другом нет.
Цитата:
Так и не могу понять, как сервер передаёт браузеру элементы массива $_SESSION
сервер НИЧЕГО не передаёт БРАУЗЕРУ. скрипт работает на сервере и отдаёт результаты работы.
сессии устроены так: от запроса к запросу браузер передаёт на сервер идентификатор сессии. на сервере лежит файл с именем == идентификатору сессии. все данные лежат там.
далее - session_id() одинаковый, он не меняется?
почему и зачем он у тебя передаётся через урл? ты так настроил веб-сервер?
если нет - то выставь в пхп.ини
session.use_cookies = 1
israel_rider
Цитата:
пробел после Location:
и exit после него
Цитата:
header('Location:3.php');
пробел после Location:
и exit после него
Cheery написал как ты сказал.
Цитата:
Получилось - 4.php
<?php
session_start();
$_SESSION["access"] = "yes";
header('Location: 3.php');
exit();
echo '<a href="3.php">Вход на страницу</a><br/>';
?>
Не помогло
zerkms, всё понял. Думаю, над тем, что ты сказал.... Я то как раз session.use_cookies = выставил в 0. Что бы на куки не расчитывать. Ведь есть пользователи, которые куки у себя в браузере отключают.
Цитата:
пробел после Location:
и exit после него
Получилось - 4.php
<?php
session_start();
$_SESSION["access"] = "yes";
header('Location: 3.php');
exit();
echo '<a href="3.php">Вход на страницу</a><br/>';
?>
Не помогло
zerkms, всё понял. Думаю, над тем, что ты сказал.... Я то как раз session.use_cookies = выставил в 0. Что бы на куки не расчитывать. Ведь есть пользователи, которые куки у себя в браузере отключают.
israel_rider
Цитата:
почти нет..
лучше через куки.. иначе смотрите при форварде на 4.php - передается ли id сессии как добавка к URL
Цитата:
Ведь есть пользователи, которые куки у себя в браузере отключают.
почти нет..
лучше через куки.. иначе смотрите при форварде на 4.php - передается ли id сессии как добавка к URL
Цитата:
Ведь есть пользователи, которые куки у себя в браузере отключают.
почти нет..
Понял. Согласен. Но я студент. Я учу раздел "сессии" и до кук я ещё не дошёл. На практике я буду включать куки, но сейчас пока я хочу разобраться, как работает встроенный механизм сессий. Поэтому я так и упёрся в этот пример из учебника, и пытаюсь понять, почему именно он не работает.
При форварде на 3.php при помощи header('Location: 3.php'); id сессии как добавка к URL не передаётся, то есть в
ieHTTPHeaders я вижу - GET /3.php HTTP/1.1 и всё.
А когда я в файле 4.php комментирую строчку //header('Location: 3.php'); , при помощи которой я осуществляю автоматическое перенаправление на 3.php, то в ieHTTPHeaders я чётко вижу -
GET /3.php?PHPSESSID=jegsr9pkm5filem00ifttpjmb2 HTTP/1.1.
И элемент $_SESSION["access"] в браузер передаётся. То есть всё работает.
Выходит ответ на мой вопрос, почему не работает в первом случае, и работает во втором - в изучении механизма работы функции Хедер.....
israel_rider
Цитата:
если не ошибаюсь, то
http://us2.php.net/manual/en/session.configuration.php#ini.session.use-trans-sid
Цитата:
Выходит ответ на мой вопрос, почему не работает в первом случае, и работает во втором - в изучении механизма работы функции Хедер.....
если не ошибаюсь, то
http://us2.php.net/manual/en/session.configuration.php#ini.session.use-trans-sid
Короче - вот он ответ, на мой вопрос. Цитата из учебника: "В PHP изменение заголовка(header) возможно лишь ДО того, как начнет формироваться HTML-код web-документа!". То есть, в моём случае я не могу пользоваться функцией header() для редиректа.
Вопрос. Есть ли в РНР ещё средства, которыми я мог бы осуществить перенаправление?
Cheery
Мало что понял, но проверил. У меня session.use_trans_sid = 1 , то есть включена.
Вопрос. Есть ли в РНР ещё средства, которыми я мог бы осуществить перенаправление?
Cheery
Мало что понял, но проверил. У меня session.use_trans_sid = 1 , то есть включена.
Цитата:
Короче - вот он ответ, на мой вопрос. Цитата из учебника: "В PHP изменение заголовка(header) возможно лишь ДО того, как начнет формироваться HTML-код web-документа!". То есть, в моём случае я не могу пользоваться функцией header() для редиректа.
где у тебя до редиректа какой-либо вывод???
Предыдущая тема: PHP: лимит времени на выполнение скрипта
Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.