|
|
|
| Здорова Вам мужики!!! Я совсем вспотел окончательно. Перечитал на несколько раз статьи в интернете, разделы в книгах по сеансам, но практических, дельных советов так и не обнаружил, не увидел вернее тех, которые очень хочу воплотить в реальность. В общем, вопрос вот в чем:
Есть 2 страницы: index.php и index1.php (прям как в книге!), но вопрос в другом, по крайней мере с моим..э...э....интеллектом). Так вот,---- index.php!, в начале скрипта, как положено, session_start(); (и код...) Под конец скрипта на этой странице: $_SESSION ['privet'] = $medved; (занесли данные). Тег php закрывается.... На этой же странице
<form method="post" action="index1.php">
<input type="hidden" name= //??????????????????????
<input type="submit" value="Отравить">
//( ..........trans.sid = 1!!!) и cookies НЕ ИСПОЛЬЗУЮ!!!
Форма полетела!!! в index1.php. В начале скрипта............: Причем самое характерное, скрипт index1.php ссылается сам на себя POST-ом.
<?php
session_start(); //это как я полагаю НЕ СТАРТ новой сессии, (которая будет ниже написана и с которой надо "что-то сделать"), а инициализация сессии с просто index.php.
Ниже на странице index1.php........if ($_POST['bugoga']) == $_SESSION['kong'] { //это сверяются данные передаваемые $bugoga C $_SESSION['kong'].......... В $_SESSION['kong'] ниже в коде стр. index1.php заносится значение из массива, перед отправкой формы самой на себя.
$_POST['bugoga'] не имеет отношения к странице index.php просто. Это супермассив, который проверяет данные переданные скриптом (в конце скрипта форма); страницей index1.php, самой на себя, как сказал уже вроде бы. Так вот, я абсолютно нигде не нашел информации на такие вот вопросы. Если можно, то хотелось бы услышать ответ на примере этого какискрипта ))). Можно ли использовать POST, если есть SID? Как мне разделить эти сессии с учетом того, что index1.php сам на себя отправляется?,, и не изменится ли после отправки формы самой на себя числовое значение В $_SESSION['kong']? лучше не надо..... ? Читал, читал везде..... session_name! session_id! запутался...((( Транссид включен: <input type="hidden" name= что дописать то?, насчет этого абстракция. Ах, да вот на index.1php. Проверяется условие то выше написанное if ($_POST['bugoga']) == $_SESSION['kong'] { //здесь ошибка выползает. Это наверное как раз потому что я не сделал сессион_старт для этой переменной выше! А там уже есть сессион_старт инициализирующая $_SESSION ['privet'] = $medved; со страницы index.php просто. Патерялося я!....памагите...!!! | |
|
|
|
|
|
|
|
для: palkan777
(17.07.2009 в 21:03)
| | очевидно '<input type=hidden name='.session_name(). ' value='.session_id() грубо говоря. | |
|
|
|
|
|
|
|
для: Trianon
(17.07.2009 в 21:32)
| | хорошо спасибо и на этом | |
|
|
|
|
|
|
|
для: palkan777
(17.07.2009 в 21:03)
| | Фух, я вспотел пока дочитал. Но все равно не понял ничего )
Вы можете выложить 2 своих файла index.php и index1.php и написать что там не работает. Так наверное будет понятнее ) | |
|
|
|
|
|
|
|
для: Евгений Петров
(18.07.2009 в 00:21)
| | index.php
<?php
session_start ();
$medved = $_POST ['e-mail']; //предыдущей страницей сюда попал емал пользователя
.........................
.........код...........
.........................
$_SESSION ['privet'] = $medved;//после этой строки ставил хэдер но он не передается так с сессией это невозможно;SID //нужно вставить вручную
echo '<form method="post" action="index1.php">';
echo "input type=\"submit\" value=\"Отправить\">
<input type=\"hidden\" name=\"??????\" value=\"???????\" //наверно SID здесь надо прописать но я не разобрался
</form>
}
?>
index1.php
<?php
session_start();
mysql_connect("localhost","root","777");
mysql_select_db( "rollins");
if ($_POST['bugoga']) == $_SESSION['kong'] { //ОШИБКА выныривает тут!!!!
$emalok = mysql_escape_string($_SESSION['privet']); //может тут не то что-то...эта сесси)переменная нужна тоже когда скрипт //стр.index1.php "сам на себя"!
mysql_query("UPDATE klientz SET ball=ball + 1 WHERE email=$emalok"); //или тут, здесь внимание!!!
if ($_POST['bugoga']) != $_SESSION['kong'] {
header("location: index3.php");
.........код....................
?>
..............код html..................
...........................................
...........................................
<?php
//В этом сегменте формируется форма, которая будет ссылаться сама на себя, т.е. index1.php на index1.php
...........код там всякий.............
..........соединение, выборка и т.д...........
$_SESSION['kong'] = $q[1]; //заносим значение из массива.....не изменится ли после отправки? это числовое...
......формирование формы...........$bugoga будет передавать инфу формой этой.....потом сравниваться.. с... $_SESSION['kong'].....
............и её отправка на саму себя...........................
//без сессий проверял, весь код работает правильно. | |
|
|
|
|
|
|
|
для: palkan777
(18.07.2009 в 10:12)
| |
if ($_POST['bugoga']) == $_SESSION['kong'] { //ОШИБКА выныривает тут!!!!
|
$_POST['bugoga'] у вас не определена, вероятно из-за этого у вас непонятки.
>><input type=\"hidden\" name=\"??????\" value=\"???????\" //наверно SID здесь надо прописать но я не разобрался
для чего? | |
|
|
|
|
|
|
|
для: ride
(18.07.2009 в 11:11)
| | я без сессий смотрел $bugoga приходит с формой, работает нормально. а инпут тайп - я понял теперь что не нужен. Но на странице index1.php мне нужны две сессии! $_SESSION ['privet'] (в котором мыло пользователя)...Без инпута эта сессия инициализируется через сессион_старт, так? а как инициализировать тогда $_SESSION['kong']???, она появляется только на index1.php?
Эти сессии надо наверно как-то разделить вот как это сделать я не могу никак......Ошибка наверняка из за этого ( | |
|
|
|
|
|
|
|
для: palkan777
(18.07.2009 в 11:37)
| | не определена. Вы имеете в виду что как код доходит до этого место, то если не наход связанных с пер. пост. бугога "событий то дальнейший код не работает? Мне кажется что этот проблемный участок проигнор-ся и пойдет дальнейшее исполнение в коде. Поправьте если я снова не прав. | |
|
|
|
|
|
|
|
для: palkan777
(18.07.2009 в 11:37)
| | расскажите лучше сначала о своей задаче.
вы хотите прошить форму сессией? | |
|
|
|
|
|
|
|
для: ride
(18.07.2009 в 11:55)
| | я не совсем понимаю что значит "прошить". Я не могу никак представить например то как могут работать одновременно 2 сессии если они передаются в адресной строке. Я уже не знаю как объяснить. Вы мне скажите $_SESSION['kong'] создается или нет на странице index1.php. Я же немогу написать session_start () ;два раза!!! на одной странице. Session_start на стр. index1.php инициализирует $_SESSION ['privet'] со значение $medved( но не создает новую сессию на странице!!!). А потом на этой странице неожиданно появляется новая, которая не создана session(ом)_start а именно if ($_POST['bugoga']) == $_SESSION['kong'] (и тут же проверяет условие)как её создать на этой странице?????? Но чтоб та верхняя сессия имела тоже область действия когда скрипт будет сам на себя ссылаться. Это необходимо. | |
|
|
|
|
|
|
|
для: palkan777
(18.07.2009 в 12:14)
| | http://softtime.ru/bookphp/gl8_1.php
там есть пример.
прочтите, если вопросы останутся, напишите | |
|
|
|
|
|
|
|
для: palkan777
(18.07.2009 в 11:37)
| | $_SESSION ['privet']
$_SESSION['kong']
Это два элемента одной и той же сессии. | |
|
|
|
|
|
|
|
для: Trianon
(18.07.2009 в 12:35)
| | спасибо Вам Трианон. Получается что ошибка не имеет отношения к сессии? | |
|
|
|
|
|
|
|
для: palkan777
(18.07.2009 в 12:37)
| | По тем фрагментам кода, которые Вы приводите, анализировать ошибку я не возьмусь.
В них черт ногу сломит. | |
|
|
|
|
|
|
|
для: Trianon
(18.07.2009 в 13:02)
| | if ($_POST['bugoga']) == $_SESSION['kong'] надо было на конец скобку поставить хе...хе..а я сессии гнал тут (
Вопрос решён большое спасибо всем кто помогал мне | |
|
|
|
|
|
|
|
для: palkan777
(18.07.2009 в 18:21)
| | надо было лишь включить диагностику ошибок. | |
|
|
|
|
|
|
|
для: Trianon
(18.07.2009 в 18:25)
| | Да. Вы как всегда правы, я уже начинаю думать, что Вы, Трианон, обладаете телепатическими способностями, серьезно, так как все относительно в мире. | |
|
|
|