Witam,

mam problem z walidacją formularza, wykorzystując klasę "ajax.inc.php"

udało mi się jak dotychczas przeprowadzić walidację formularza i odpowiednio poinformować użytkownika o błędach, jeśli takowe wystąpiły
tylko teraz mam problem ponieważ nie wiem jak w kolejnych funkcjach przekazać
-przykładowo w zmiennej $_POST["form_error"]="flase"; odpowienią wartość
(czyli jak nadać zmiennej $_POST[..] wartość przy pomocy funkcji wywoływanych przez ajax-a)

  1. <?php
  2. require_once( 'mod/xajax.inc.php' );
  3.        $objAjax = new xajax();
  4.        $objAjax->registerFunction("checkEmail");
  5.        $objAjax->processRequests();
  6. $objAjax->printJavascript();
  7. ?>

15 i 28 linia kodu
  1. <?php
  2. //:: ---------------------------------------------------------------------------
  3. //:: Sprawdzanie poprawności składni adresu e-mail
  4. //:: ---------------------------------------------------------------------------
  5. function checkEmail($email)
  6.    {
  7.      if(!empty($email))
  8.        {
  9.        $checkVal = "ok!";
  10.        if(!ereg( "^[_a-z0-9-]+(.[_a-z0-9-]+)*@[a-zA-Z0-9_-]+(.[a-zA-Z0-9_-]+)*(.[a-zA-Z0-9]{2,4})$", $email ))
  11.            {
  12.            $checkVal = "To nie Email";
  13.    //::
  14.    //:: I tu chciał bym ustawić zmienną $_POST['form_error']="false";
  15.    //::
  16.            }
  17.    
  18.    //::Sprawdz czy isnieje juz taki w bazie danych
  19.        $query = "SELECT email FROM `uzytkownik` WHERE email = '".$email."'";
  20.        $result = mysql_query($query);
  21.        $ex = mysql_num_rows($result);
  22.    
  23.        if(!$ex==0)
  24.            {
  25.            $checkVal = "Zajęty Email!";
  26.    //::
  27.    //:: $_POST['form_error']="false";
  28.    //::
  29.            }
  30.        }
  31.    
  32.    $objResponse = new xajaxResponse();
  33.    if ($checkVal == "ok!")
  34.        {
  35.        $objResponse->addScript("document.getElementById('c_email').style.backgroundImage = 'url(img/ok_tick.gif)';");
  36.        $objResponse->addScript("document.getElementById('c_email').style.color = 'green';");
  37.        $objResponse->addScript("document.getElementById('email').style.border = '1px solid green';");
  38.        }
  39.    else
  40.        {
  41.        $objResponse->addScript("document.getElementById('c_email').style.backgroundImage = 'url(img/bad_tick.gif)';");
  42.        $objResponse->addScript("document.getElementById('c_email').style.color = 'red';");
  43.        $objResponse->addScript("document.getElementById('email').style.border = '1px solid red';");
  44.        }
  45.    $objResponse->addAssign("c_email", "innerHTML", $checkVal);
  46.    return $objResponse->getXML();
  47.    }
  48. ?>


  1. <label>*E-mail: </label>
  2. <input autocomplete="off" type="text" name="email" id="email" value="<?php echo $_SESSION['r_f']['email']; ?>" onkeyup="xajax_checkEmail(document.getElementById('email').value);" />
  3. <span id="c_email"></span><br />


Będę bardzo wdzięczny za pomoc

-pozdrawiam.