[php] sesje, captcha, mysql

0

Witam..mam problem z sesjami. Mianowicie sprawa wyglada tak: chialem wprowadzic do projektu captch'e, korzystam z klasy gotowej do tego, i wystapuje problem ze zmianna sesyjna, w ktorej przechowyje wygenerowany kod przez klase. A wyglada to u mnie tak: tak sie dostaje do roznych funkcji. modulow:
modules.php?module_name=shop&action=captcha - powoduje wyswietlenie formularza z captcha a tak wyglada szablon smarty:

<table width="100%" border="0" cellpadding="0" cellspacing="20">
   <tr>
      <td valign="top">
	 <p class="tytul"><strong>Moje zamówienie</strong></p>
         <br />
	 <p style="color:red; font-weight: bold;">{$check}</p>
	 <form method="post" name="cc" id="cc" action="modules.php?module_name=shop&amp;action=cc">
	    <img src="{$captcha_img}" alt="CAPTCHA" />
            <br />
            <input type="text" name="captchastring" size="30" /> (ważna wielko¶ć liter!)
            <br />
            <input type="submit" value="SprawdĽ" />
	 </form>
      </td>
   </tr>
</table>

gdzie $captcha_img to jest odwoloanie sie do pliku captcha.php?.png a ten plik wyglada nastrepujaca:

require ("../../config.php");
require ("../db_class.php");
require ("../sessions_class.php");
//require ("classes/main_window.php");

//ini_set('arg_separator.input', '&amp;');
//ini_set('arg_separator.output', '&amp;');

//$time_start = getmicrotime();

//$DB=new DB;

$ses_class = new session();

/* Change the save_handler to use the class functions */
session_set_save_handler (array(&$ses_class, '_open'),
                          array(&$ses_class, '_close'),
                          array(&$ses_class, '_read'),
                          array(&$ses_class, '_write'),
                          array(&$ses_class, '_destroy'),
                          array(&$ses_class, '_gc'));

/* Start the session */
session_start();

  //Load the Class
  require('./class/captcha.class.php');

  //Create a CAPTCHA
  $captcha = new captcha();

  //Store the String in a session
  $_SESSION['CAPTCHAString'] = $captcha->getCaptchaString();

captcha sie generuje poprawnie.

w sesji przechowuje rozne zmienne (w bazie danych za pomoca odpowiednij klasy), tylko ze po wywolaniu tego skryptu zmienne CAPTCHAString jest niewidoczna. Jak w tym samym katalogu co mam plik captcha.php wywolam testowy skrypt ktory mi wyswietla tablce $_SESSION to wyswietlane jest tylko CAPTHAString a inne zmienne nie...sprawdzalem session_id i jest identyczne!
Siedze juz nad tym 2 dni i nie moge znaleŹĆ rozwiazania...lokalanie mi chodzi natomiast po wrzuceniu na serwer juz nie...dodam ze pozostale rzeczy chodza (to jest sklep) opierajace sie na sesjach. Moze ma ktos jakis pomysl? w ostatecznosci mysle o zapisaywaniu tej zmiennej gdzies w bazie ale w ostatecznosci przeciez teoretycznie to powinno dzialac....:( </php>

0

proponuje nie kokoRZystaćystać z pehapowego mechanizmu sesji tylko zrobić własny - sesje zapisywać w bazie

1 użytkowników online, w tym zalogowanych: 0, gości: 1