[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Проблема при работе с сессией
Zenith
Есть три скрипта. Этот выводит определённую инфу.
PHP
<?session_start();
require_once(
'connect.php');
$sql_01="SELECT id_text FROM uschar WHERE id_us='".$_SESSION['id']."'";
$result_01=mysql_query($sql_01);
$stop=0;
$e=mysql_num_rows($result_01);
?><a href="index.php">To main page</a><br /><?
if($e<"1")
  {echo 
"Пока пусто";}
else
 {while(
$line_01=mysql_fetch_row($result_01) and $stop!=3)
  {
$sql_02="SELECT name_char FROM charname WHERE id_char='".$line_01[0]."'";
  
$result_02=mysql_query($sql_02);
   
?>
   <table border='1'><tr>
   <?
   
while($line_02=mysql_fetch_row($result_02) and $stop!=3)
    {
?>
    <form name='' action='action.php' method='POST'>
    <input name='id_char' type='hidden' value=<?echo "'".$line_01[0]."'";?>>
    <tr>
     <th>
      <font color='blue' size='1'><?echo "id: ".$line_01[0];?>
     </th>
     <th>
      <a href=atr.php?id=<?echo $line_01[0];?>><?echo $line_02[0];?></a></th>
     <th>
      <input type="submit" name="edit" value="edit">
     </th>
     <th>
      <input type="submit" name="delete" value="X">
     </th>
    </tr>
    </form>
    <?
    $stop
++;
    }
?>
</tr>
 </table>
  <? }}
if(
$stop!=3)
{
?>
<th>
<form action="ncrch.php" method="POST">
  <input type="submit" name='creat_new_buttom' value="Создать">
  </form>
  </th><?}
  else
  echo 
"<font color='firebrick'>Лимит исчерпан</font>";?>
  <th>
  <form action="index.php" method="GET">
  <input type="submit" value="Назад">
 &nbs

Этот стрингует и сохраняет в сессию инфу, переданную в скрытой строке из предыдущего скрипта, и определяет какая кнопка была нажата, после чего переключает на скрипт соответствующий кнопке.
PHP
<?php
session_start
();
$_SESSION['id_char']=mysql_escape_string($_POST['id_char']);
if(isset(
$_POST['delete']))
{
header('location:delete.php');}
if(isset(
$_POST['edit']))
{
header('location:edit.php');}

Этот выводит предупреждение и id инфы в БД. Если нажата кнопка ок--инфы удаляеться.
PHP
<?php
session_start
();
require_once(
'connect.php');
 if(isset(
$_POST['no']))
 {
     
header('location:spisok.php');
 }
?><a href="index.php">To main page</a><br /><?
$sql01
="SELECT name_char FROM charname WHERE id_char='".$_SESSION['id_char']."'";
$result01=mysql_query($sql01);
$line01=mysql_fetch_row($result01);
if(isset(
$_POST['yes']))
 {
    
$sql02="DELETE
    FROM charname
    WHERE id_char='"
.$_SESSION['id_char']."'";
    
$sql03="DELETE FROM uschar WHERE id_char='".$_SESSION['id_char']."'";
    
$result02=mysql_query($sql02);
    
$result03=mysql_query($sql03);
    echo 
"Персонаж ".$line01[0]." больше не существует<br />";
    
?><a href='spisok.php'>Список</a><?
 
}
 else
 {
 echo  
"Вы уверенны, что хотите удалить ".$line01[0]."<br>id=".$_SESSION['id_char'];
 }
if(!isset(
$_POST['yes']))
{
?>  <form action="" method="POST">
<input type="submit" name="yes" value="Yes">
<input type="submit" name="no" value="NO!!!">
</form><?}

Если нажата кнопка edit должен, пока что, выйти на экран тот же id. Но когда нажимается кнопка edit у меня всего лишь пустой экран.
PHP
<?
session_start;
require_once(
'connect.php');
echo 
$_SESSION['id_char'];

Такое впечатление что $_SESSION['id_char'] из второго скрипта обнуляется
Плиз, подскажите в чём трабл



Спустя 10 минут, 33 секунды (23.06.2009 - 20:33) Zenith написал(а):

В третий раз собираюсь жаловаться на что-то на этом форуме и нахожу свою ошибку.
В последнем скрипте забыл () в сессион стар поставить.
блин, ну я и удод smile.gif


_____________
"Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете". (с) Макконнелл, "Совершенный код".
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.